AWS SDK

AWS SDK

rev. 3964b40d6806bc3f52bd311e2c791030c3325f2c (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.sreq

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

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.authz

@@ -1,0 +8148,10426 @@
    1         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
    2      0   
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.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.sreq
    3      1   
deleted file mode 100644
    4      2   
index 8096609..0000000
    5         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.sreq
           3  +
++ /dev/null
    6      4   
@@ -1,4 +0,0 @@
    7         -
GET /./example HTTP/1.1
    8         -
Host:example.amazonaws.com
    9         -
X-Amz-Date:20150830T123600Z
   10         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
   11      5   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.authz
   12      6   
deleted file mode 100644
   13      7   
index 551c027..0000000
   14         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.authz
           8  +
++ /dev/null
   15      9   
@@ -1 +0,0 @@
   16         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
   17     10   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq
   18     11   
deleted file mode 100644
   19     12   
index cde31b4..0000000
   20         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq
          13  +
++ /dev/null
   21     14   
@@ -1,4 +0,0 @@
   22         -
GET // HTTP/1.1
   23         -
Host:example.amazonaws.com
   24         -
X-Amz-Date:20150830T123600Z
   25         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
   26     15   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.authz
   27     16   
deleted file mode 100644
   28     17   
index 307c105..0000000
   29         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.authz
          18  +
++ /dev/null
   30     19   
@@ -1 +0,0 @@
   31         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
   32     20   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq
   33     21   
deleted file mode 100644
   34     22   
index c84a80d..0000000
   35         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq
          23  +
++ /dev/null
   36     24   
@@ -1,4 +0,0 @@
   37         -
GET //example// HTTP/1.1
   38         -
Host:example.amazonaws.com
   39         -
X-Amz-Date:20150830T123600Z
   40         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
   41     25   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz
   42     26   
deleted file mode 100644
   43     27   
index 832d8a5..0000000
   44         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz
          28  +
++ /dev/null
   45     29   
@@ -1 +0,0 @@
   46         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
   47     30   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq
   48     31   
deleted file mode 100644
   49     32   
index eefa20c..0000000
   50         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq
          33  +
++ /dev/null
   51     34   
@@ -1,4 +0,0 @@
   52         -
GET /example space/ HTTP/1.1
   53         -
Host:example.amazonaws.com
   54         -
X-Amz-Date:20150830T123600Z
   55         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
   56     35   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt
   57     36   
deleted file mode 100644
   58     37   
index c2fcb27..0000000
   59         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt
          38  +
++ /dev/null
   60     39   
@@ -1,3 +0,0 @@
   61         -
A note about signing requests to Amazon S3:
   62         -

   63         -
In exception to this, you do not normalize URI paths for requests to Amazon S3. For example, if you have a bucket with an object named my-object//example//photo.user, use that path. Normalizing the path to my-object/example/photo.user will cause the request to fail. For more information, see Task 1: Create a Canonical Request in the Amazon Simple Storage Service API Reference: http://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-header-based-auth.html#canonical-request
              \
 No newline at end of file
   64     40   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
   65     41   
deleted file mode 100644
   66     42   
index 89e572e..0000000
   67         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
          43  +
++ /dev/null
   68     44   
@@ -1 +0,0 @@
   69         -
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
   70     45   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
   71     46   
deleted file mode 100644
   72     47   
index fcf23ce..0000000
   73         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
          48  +
++ /dev/null
   74     49   
@@ -1,4 +0,0 @@
   75         -
POST / HTTP/1.1
   76         -
Host:example.amazonaws.com
   77         -
X-Amz-Date:20150830T123600Z
   78         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
   79     50   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
   80     51   
deleted file mode 100644
   81     52   
index a62589f..0000000
   82         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
          53  +
++ /dev/null
   83     54   
@@ -1 +0,0 @@
   84         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
   85     55   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
   86     56   
deleted file mode 100644
   87     57   
index b4b78a1..0000000
   88         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
          58  +
++ /dev/null
   89     59   
@@ -1,5 +0,0 @@
   90         -
POST / HTTP/1.1
   91         -
Host:example.amazonaws.com
   92         -
My-Header1:value1
   93         -
X-Amz-Date:20150830T123600Z
   94         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
   95     60   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
   96     61   
deleted file mode 100644
   97     62   
index d9e52a3..0000000
   98         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
          63  +
++ /dev/null
   99     64   
@@ -1 +0,0 @@
  100         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
  101     65   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
  102     66   
deleted file mode 100644
  103     67   
index 99c3210..0000000
  104         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
          68  +
++ /dev/null
  105     69   
@@ -1,5 +0,0 @@
  106         -
POST / HTTP/1.1
  107         -
Host:example.amazonaws.com
  108         -
My-Header1:VALUE1
  109         -
X-Amz-Date:20150830T123600Z
  110         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
  111     70   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.authz
  112     71   
deleted file mode 100644
  113     72   
index 89e572e..0000000
  114         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.authz
          73  +
++ /dev/null
  115     74   
@@ -1 +0,0 @@
  116         -
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
  117     75   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.authz
  118     76   
deleted file mode 100644
  119     77   
index 64aa046..0000000
  120         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.authz
          78  +
++ /dev/null
  121     79   
@@ -1 +0,0 @@
  122         -
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
  123     80   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
  124     81   
deleted file mode 100644
  125     82   
index cc34282..0000000
  126         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
          83  +
++ /dev/null
  127     84   
@@ -1,15 +0,0 @@
  128         -
A note about using temporary security credentials:
  129         -

  130         -
You can use temporary security credentials provided by the AWS Security Token Service (AWS STS) to sign a request. The process is the same as using long-term credentials but requires an additional HTTP header or query string parameter for the security token. The name of the header or query string parameter is X-Amz-Security-Token, and the value is the session token (the string that you received from AWS STS when you obtained temporary security credentials).
  131         -

  132         -
When you add X-Amz-Security-Token, some services require that you include this parameter in the canonical (signed) request. For other services, you add this parameter at the end, after you calculate the signature. For details see the API reference documentation for that service.
  133         -

  134         -
The test suite has 2 examples:
  135         -

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

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

  140         -
The test suite uses this example value for X-Amz-Security-Token:
  141         -

  142         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
  143     85   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.authz
  144     86   
deleted file mode 100644
  145     87   
index 44280cd..0000000
  146         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.authz
          88  +
++ /dev/null
  147     89   
@@ -1 +0,0 @@
  148         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
  149     90   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.sreq
  150     91   
deleted file mode 100644
  151     92   
index 82af150..0000000
  152         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.sreq
          93  +
++ /dev/null
  153     94   
@@ -1,4 +0,0 @@
  154         -
POST /?Param1=value1 HTTP/1.1
  155         -
Host:example.amazonaws.com
  156         -
X-Amz-Date:20150830T123600Z
  157         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
  158     95   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
  159     96   
deleted file mode 100644
  160     97   
index 44280cd..0000000
  161         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
          98  +
++ /dev/null
  162     99   
@@ -1 +0,0 @@
  163         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
  164    100   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
  165    101   
deleted file mode 100644
  166    102   
index 82af150..0000000
  167         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
         103  +
++ /dev/null
  168    104   
@@ -1,4 +0,0 @@
  169         -
POST /?Param1=value1 HTTP/1.1
  170         -
Host:example.amazonaws.com
  171         -
X-Amz-Date:20150830T123600Z
  172         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
  173    105   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
  174    106   
deleted file mode 100644
  175    107   
index 89e572e..0000000
  176         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
         108  +
++ /dev/null
  177    109   
@@ -1 +0,0 @@
  178         -
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
  179    110   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
  180    111   
deleted file mode 100644
  181    112   
index a5ada0d..0000000
  182         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
         113  +
++ /dev/null
  183    114   
@@ -1,4 +0,0 @@
  184         -
POST / HTTP/1.1
  185         -
Host:example.amazonaws.com
  186         -
X-Amz-Date:20150830T123600Z
  187         -
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
  188    115   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.authz
  189    116   
deleted file mode 100644
  190    117   
index df90ca3..0000000
  191         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.authz
         118  +
++ /dev/null
  192    119   
@@ -1 +0,0 @@
  193         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
              \
 No newline at end of file
  194    120   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.creq
  195    121   
deleted file mode 100644
  196    122   
index 457b0d5..0000000
  197         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.creq
         123  +
++ /dev/null
  198    124   
@@ -1,9 +0,0 @@
  199         -
POST
  200         -
/
  201         -
Param1=value1
  202         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  203         -
host:example.amazonaws.com
  204         -
x-amz-date:20150830T123600Z
  205         -
  206         -
content-type;host;x-amz-date
  207         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  208    125   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.sreq
  209    126   
deleted file mode 100644
  210    127   
index b8ecb89..0000000
  211         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.sreq
         128  +
++ /dev/null
  212    129   
@@ -1,7 +0,0 @@
  213         -
POST / HTTP/1.1
  214         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  215         -
Host:example.amazonaws.com
  216         -
X-Amz-Date:20150830T123600Z
  217         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  218         -
  219         -
Param1=value1
              \
 No newline at end of file
  220    130   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.authz
  221    131   
deleted file mode 100644
  222    132   
index 79077d2..0000000
  223         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.authz
         133  +
++ /dev/null
  224    134   
@@ -1 +0,0 @@
  225         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=0c3bc22986c53164a4755b4466c2e17db853888c5ddb98567e700a3ecdb262f6
              \
 No newline at end of file
  226    135   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.req
  227    136   
deleted file mode 100644
  228    137   
index 7852617..0000000
  229         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.req
         138  +
++ /dev/null
  230    139   
@@ -1,4 +0,0 @@
  231         -
POST / HTTP/1.1
  232         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  233         -
Host:example.amazonaws.com
  234         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  235    140   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sreq
  236    141   
deleted file mode 100644
  237    142   
index 3e2e571..0000000
  238         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sreq
         143  +
++ /dev/null
  239    144   
@@ -1,4 +0,0 @@
  240         -
POST / HTTP/1.1
  241         -
Host:example.amazonaws.com
  242         -
X-Amz-Date:20150830T123600Z
  243         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=0c3bc22986c53164a4755b4466c2e17db853888c5ddb98567e700a3ecdb262f6
              \
 No newline at end of file
  244    145   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sts
  245    146   
deleted file mode 100644
  246    147   
index 89ceae8..0000000
  247         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.sts
         148  +
++ /dev/null
  248    149   
@@ -1,4 +0,0 @@
  249         -
AWS4-HMAC-SHA256
  250         -
20150830T123600Z
  251         -
20150830/us-east-1/service/aws4_request
  252         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  253    150   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
  254    151   
deleted file mode 100755
  255    152   
index d645695..0000000
  256         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
         153  +
++ /dev/null
  257    154   
@@ -1,202 +0,0 @@
  258         -
  259         -
                                 Apache License
  260         -
                           Version 2.0, January 2004
  261         -
                        http://www.apache.org/licenses/
  262         -
  263         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  264         -
  265         -
   1. Definitions.
  266         -
  267         -
      "License" shall mean the terms and conditions for use, reproduction,
  268         -
      and distribution as defined by Sections 1 through 9 of this document.
  269         -
  270         -
      "Licensor" shall mean the copyright owner or entity authorized by
  271         -
      the copyright owner that is granting the License.
  272         -
  273         -
      "Legal Entity" shall mean the union of the acting entity and all
  274         -
      other entities that control, are controlled by, or are under common
  275         -
      control with that entity. For the purposes of this definition,
  276         -
      "control" means (i) the power, direct or indirect, to cause the
  277         -
      direction or management of such entity, whether by contract or
  278         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  279         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  280         -
  281         -
      "You" (or "Your") shall mean an individual or Legal Entity
  282         -
      exercising permissions granted by this License.
  283         -
  284         -
      "Source" form shall mean the preferred form for making modifications,
  285         -
      including but not limited to software source code, documentation
  286         -
      source, and configuration files.
  287         -
  288         -
      "Object" form shall mean any form resulting from mechanical
  289         -
      transformation or translation of a Source form, including but
  290         -
      not limited to compiled object code, generated documentation,
  291         -
      and conversions to other media types.
  292         -
  293         -
      "Work" shall mean the work of authorship, whether in Source or
  294         -
      Object form, made available under the License, as indicated by a
  295         -
      copyright notice that is included in or attached to the work
  296         -
      (an example is provided in the Appendix below).
  297         -
  298         -
      "Derivative Works" shall mean any work, whether in Source or Object
  299         -
      form, that is based on (or derived from) the Work and for which the
  300         -
      editorial revisions, annotations, elaborations, or other modifications
  301         -
      represent, as a whole, an original work of authorship. For the purposes
  302         -
      of this License, Derivative Works shall not include works that remain
  303         -
      separable from, or merely link (or bind by name) to the interfaces of,
  304         -
      the Work and Derivative Works thereof.
  305         -
  306         -
      "Contribution" shall mean any work of authorship, including
  307         -
      the original version of the Work and any modifications or additions
  308         -
      to that Work or Derivative Works thereof, that is intentionally
  309         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  310         -
      or by an individual or Legal Entity authorized to submit on behalf of
  311         -
      the copyright owner. For the purposes of this definition, "submitted"
  312         -
      means any form of electronic, verbal, or written communication sent
  313         -
      to the Licensor or its representatives, including but not limited to
  314         -
      communication on electronic mailing lists, source code control systems,
  315         -
      and issue tracking systems that are managed by, or on behalf of, the
  316         -
      Licensor for the purpose of discussing and improving the Work, but
  317         -
      excluding communication that is conspicuously marked or otherwise
  318         -
      designated in writing by the copyright owner as "Not a Contribution."
  319         -
  320         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  321         -
      on behalf of whom a Contribution has been received by Licensor and
  322         -
      subsequently incorporated within the Work.
  323         -
  324         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  325         -
      this License, each Contributor hereby grants to You a perpetual,
  326         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  327         -
      copyright license to reproduce, prepare Derivative Works of,
  328         -
      publicly display, publicly perform, sublicense, and distribute the
  329         -
      Work and such Derivative Works in Source or Object form.
  330         -
  331         -
   3. Grant of Patent License. Subject to the terms and conditions of
  332         -
      this License, each Contributor hereby grants to You a perpetual,
  333         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  334         -
      (except as stated in this section) patent license to make, have made,
  335         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  336         -
      where such license applies only to those patent claims licensable
  337         -
      by such Contributor that are necessarily infringed by their
  338         -
      Contribution(s) alone or by combination of their Contribution(s)
  339         -
      with the Work to which such Contribution(s) was submitted. If You
  340         -
      institute patent litigation against any entity (including a
  341         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  342         -
      or a Contribution incorporated within the Work constitutes direct
  343         -
      or contributory patent infringement, then any patent licenses
  344         -
      granted to You under this License for that Work shall terminate
  345         -
      as of the date such litigation is filed.
  346         -
  347         -
   4. Redistribution. You may reproduce and distribute copies of the
  348         -
      Work or Derivative Works thereof in any medium, with or without
  349         -
      modifications, and in Source or Object form, provided that You
  350         -
      meet the following conditions:
  351         -
  352         -
      (a) You must give any other recipients of the Work or
  353         -
          Derivative Works a copy of this License; and
  354         -
  355         -
      (b) You must cause any modified files to carry prominent notices
  356         -
          stating that You changed the files; and
  357         -
  358         -
      (c) You must retain, in the Source form of any Derivative Works
  359         -
          that You distribute, all copyright, patent, trademark, and
  360         -
          attribution notices from the Source form of the Work,
  361         -
          excluding those notices that do not pertain to any part of
  362         -
          the Derivative Works; and
  363         -
  364         -
      (d) If the Work includes a "NOTICE" text file as part of its
  365         -
          distribution, then any Derivative Works that You distribute must
  366         -
          include a readable copy of the attribution notices contained
  367         -
          within such NOTICE file, excluding those notices that do not
  368         -
          pertain to any part of the Derivative Works, in at least one
  369         -
          of the following places: within a NOTICE text file distributed
  370         -
          as part of the Derivative Works; within the Source form or
  371         -
          documentation, if provided along with the Derivative Works; or,
  372         -
          within a display generated by the Derivative Works, if and
  373         -
          wherever such third-party notices normally appear. The contents
  374         -
          of the NOTICE file are for informational purposes only and
  375         -
          do not modify the License. You may add Your own attribution
  376         -
          notices within Derivative Works that You distribute, alongside
  377         -
          or as an addendum to the NOTICE text from the Work, provided
  378         -
          that such additional attribution notices cannot be construed
  379         -
          as modifying the License.
  380         -
  381         -
      You may add Your own copyright statement to Your modifications and
  382         -
      may provide additional or different license terms and conditions
  383         -
      for use, reproduction, or distribution of Your modifications, or
  384         -
      for any such Derivative Works as a whole, provided Your use,
  385         -
      reproduction, and distribution of the Work otherwise complies with
  386         -
      the conditions stated in this License.
  387         -
  388         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  389         -
      any Contribution intentionally submitted for inclusion in the Work
  390         -
      by You to the Licensor shall be under the terms and conditions of
  391         -
      this License, without any additional terms or conditions.
  392         -
      Notwithstanding the above, nothing herein shall supersede or modify
  393         -
      the terms of any separate license agreement you may have executed
  394         -
      with Licensor regarding such Contributions.
  395         -
  396         -
   6. Trademarks. This License does not grant permission to use the trade
  397         -
      names, trademarks, service marks, or product names of the Licensor,
  398         -
      except as required for reasonable and customary use in describing the
  399         -
      origin of the Work and reproducing the content of the NOTICE file.
  400         -
  401         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  402         -
      agreed to in writing, Licensor provides the Work (and each
  403         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  404         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  405         -
      implied, including, without limitation, any warranties or conditions
  406         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  407         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  408         -
      appropriateness of using or redistributing the Work and assume any
  409         -
      risks associated with Your exercise of permissions under this License.
  410         -
  411         -
   8. Limitation of Liability. In no event and under no legal theory,
  412         -
      whether in tort (including negligence), contract, or otherwise,
  413         -
      unless required by applicable law (such as deliberate and grossly
  414         -
      negligent acts) or agreed to in writing, shall any Contributor be
  415         -
      liable to You for damages, including any direct, indirect, special,
  416         -
      incidental, or consequential damages of any character arising as a
  417         -
      result of this License or out of the use or inability to use the
  418         -
      Work (including but not limited to damages for loss of goodwill,
  419         -
      work stoppage, computer failure or malfunction, or any and all
  420         -
      other commercial damages or losses), even if such Contributor
  421         -
      has been advised of the possibility of such damages.
  422         -
  423         -
   9. Accepting Warranty or Additional Liability. While redistributing
  424         -
      the Work or Derivative Works thereof, You may choose to offer,
  425         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  426         -
      or other liability obligations and/or rights consistent with this
  427         -
      License. However, in accepting such obligations, You may act only
  428         -
      on Your own behalf and on Your sole responsibility, not on behalf
  429         -
      of any other Contributor, and only if You agree to indemnify,
  430         -
      defend, and hold each Contributor harmless for any liability
  431         -
      incurred by, or claims asserted against, such Contributor by reason
  432         -
      of your accepting any such warranty or additional liability.
  433         -
  434         -
   END OF TERMS AND CONDITIONS
  435         -
  436         -
   APPENDIX: How to apply the Apache License to your work.
  437         -
  438         -
      To apply the Apache License to your work, attach the following
  439         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  440         -
      replaced with your own identifying information. (Don't include
  441         -
      the brackets!)  The text should be enclosed in the appropriate
  442         -
      comment syntax for the file format. We also recommend that a
  443         -
      file or class name and description of purpose be included on the
  444         -
      same "printed page" as the copyright notice for easier
  445         -
      identification within third-party archives.
  446         -
  447         -
   Copyright [yyyy] [name of copyright owner]
  448         -
  449         -
   Licensed under the Apache License, Version 2.0 (the "License");
  450         -
   you may not use this file except in compliance with the License.
  451         -
   You may obtain a copy of the License at
  452         -
  453         -
       http://www.apache.org/licenses/LICENSE-2.0
  454         -
  455         -
   Unless required by applicable law or agreed to in writing, software
  456         -
   distributed under the License is distributed on an "AS IS" BASIS,
  457         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  458         -
   See the License for the specific language governing permissions and
  459         -
   limitations under the License.
  460    155   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
  461    156   
deleted file mode 100755
  462    157   
index d85f69e..0000000
  463         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         158  +
++ /dev/null
  464    159   
@@ -1,2 +0,0 @@
  465         -
AWS Signature Version 4a Test Suite
  466         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  467    160   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
  468    161   
deleted file mode 100644
  469    162   
index c716622..0000000
  470         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         163  +
++ /dev/null
  471    164   
@@ -1,24 +0,0 @@
  472         -
Where did the files in this directory come from?
  473         -
================================================
  474         -
  475         -
These test files were taken from the [aws-c-auth](https://github.com/awslabs/aws-c-auth/tree/main/tests/aws-signing-test-suite/v4a) project.
  476         -
  477         -
Signature Version 4A Test Suite
  478         -
------------------------------
  479         -
  480         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  481         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  482         -
  483         -
Each test group contains several files that you can use to validate most of the tasks described in
  484         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  485         -
  486         -
- context.json - Credentials and signer options to use when signing test requests
  487         -
- request.txt - The web request to be signed.
  488         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  489         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  490         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  491         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  492         -
  493         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  494         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  495         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  496    165   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
  497    166   
deleted file mode 100644
  498    167   
index 45771c7..0000000
  499         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         168  +
++ /dev/null
  500    169   
@@ -1,12 +0,0 @@
  501         -
{
  502         -
    "credentials": {
  503         -
        "access_key_id": "AKIDEXAMPLE",
  504         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  505         -
    },
  506         -
    "expiration_in_seconds": 3600,
  507         -
    "normalize": true,
  508         -
    "region": "us-east-1",
  509         -
    "service": "service",
  510         -
    "sign_body": false,
  511         -
    "timestamp": "2015-08-30T12:36:00Z"
  512         -
}
  513    170   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
  514    171   
deleted file mode 100644
  515    172   
index 45771c7..0000000
  516         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         173  +
++ /dev/null
  517    174   
@@ -1,12 +0,0 @@
  518         -
{
  519         -
    "credentials": {
  520         -
        "access_key_id": "AKIDEXAMPLE",
  521         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  522         -
    },
  523         -
    "expiration_in_seconds": 3600,
  524         -
    "normalize": true,
  525         -
    "region": "us-east-1",
  526         -
    "service": "service",
  527         -
    "sign_body": false,
  528         -
    "timestamp": "2015-08-30T12:36:00Z"
  529         -
}
  530    175   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
  531    176   
deleted file mode 100644
  532    177   
index 45771c7..0000000
  533         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         178  +
++ /dev/null
  534    179   
@@ -1,12 +0,0 @@
  535         -
{
  536         -
    "credentials": {
  537         -
        "access_key_id": "AKIDEXAMPLE",
  538         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  539         -
    },
  540         -
    "expiration_in_seconds": 3600,
  541         -
    "normalize": true,
  542         -
    "region": "us-east-1",
  543         -
    "service": "service",
  544         -
    "sign_body": false,
  545         -
    "timestamp": "2015-08-30T12:36:00Z"
  546         -
}
  547    180   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
  548    181   
deleted file mode 100644
  549    182   
index 45771c7..0000000
  550         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         183  +
++ /dev/null
  551    184   
@@ -1,12 +0,0 @@
  552         -
{
  553         -
    "credentials": {
  554         -
        "access_key_id": "AKIDEXAMPLE",
  555         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  556         -
    },
  557         -
    "expiration_in_seconds": 3600,
  558         -
    "normalize": true,
  559         -
    "region": "us-east-1",
  560         -
    "service": "service",
  561         -
    "sign_body": false,
  562         -
    "timestamp": "2015-08-30T12:36:00Z"
  563         -
}
  564    185   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
  565    186   
deleted file mode 100644
  566    187   
index afe367b..0000000
  567         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         188  +
++ /dev/null
  568    189   
@@ -1,12 +0,0 @@
  569         -
{
  570         -
    "credentials": {
  571         -
        "access_key_id": "AKIDEXAMPLE",
  572         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  573         -
    },
  574         -
    "expiration_in_seconds": 3600,
  575         -
    "normalize": false,
  576         -
    "region": "us-east-1",
  577         -
    "service": "service",
  578         -
    "sign_body": false,
  579         -
    "timestamp": "2015-08-30T12:36:00Z"
  580         -
}
  581    190   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
  582    191   
deleted file mode 100644
  583    192   
index 45771c7..0000000
  584         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         193  +
++ /dev/null
  585    194   
@@ -1,12 +0,0 @@
  586         -
{
  587         -
    "credentials": {
  588         -
        "access_key_id": "AKIDEXAMPLE",
  589         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  590         -
    },
  591         -
    "expiration_in_seconds": 3600,
  592         -
    "normalize": true,
  593         -
    "region": "us-east-1",
  594         -
    "service": "service",
  595         -
    "sign_body": false,
  596         -
    "timestamp": "2015-08-30T12:36:00Z"
  597         -
}
  598    195   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
  599    196   
deleted file mode 100644
  600    197   
index afe367b..0000000
  601         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         198  +
++ /dev/null
  602    199   
@@ -1,12 +0,0 @@
  603         -
{
  604         -
    "credentials": {
  605         -
        "access_key_id": "AKIDEXAMPLE",
  606         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  607         -
    },
  608         -
    "expiration_in_seconds": 3600,
  609         -
    "normalize": false,
  610         -
    "region": "us-east-1",
  611         -
    "service": "service",
  612         -
    "sign_body": false,
  613         -
    "timestamp": "2015-08-30T12:36:00Z"
  614         -
}
  615    200   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
  616    201   
deleted file mode 100644
  617    202   
index 45771c7..0000000
  618         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         203  +
++ /dev/null
  619    204   
@@ -1,12 +0,0 @@
  620         -
{
  621         -
    "credentials": {
  622         -
        "access_key_id": "AKIDEXAMPLE",
  623         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  624         -
    },
  625         -
    "expiration_in_seconds": 3600,
  626         -
    "normalize": true,
  627         -
    "region": "us-east-1",
  628         -
    "service": "service",
  629         -
    "sign_body": false,
  630         -
    "timestamp": "2015-08-30T12:36:00Z"
  631         -
}
  632    205   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
  633    206   
deleted file mode 100644
  634    207   
index 45771c7..0000000
  635         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         208  +
++ /dev/null
  636    209   
@@ -1,12 +0,0 @@
  637         -
{
  638         -
    "credentials": {
  639         -
        "access_key_id": "AKIDEXAMPLE",
  640         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  641         -
    },
  642         -
    "expiration_in_seconds": 3600,
  643         -
    "normalize": true,
  644         -
    "region": "us-east-1",
  645         -
    "service": "service",
  646         -
    "sign_body": false,
  647         -
    "timestamp": "2015-08-30T12:36:00Z"
  648         -
}
  649    210   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
  650    211   
deleted file mode 100644
  651    212   
index 45771c7..0000000
  652         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         213  +
++ /dev/null
  653    214   
@@ -1,12 +0,0 @@
  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         -
}
  666    215   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
  667    216   
deleted file mode 100644
  668    217   
index 45771c7..0000000
  669         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         218  +
++ /dev/null
  670    219   
@@ -1,12 +0,0 @@
  671         -
{
  672         -
    "credentials": {
  673         -
        "access_key_id": "AKIDEXAMPLE",
  674         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  675         -
    },
  676         -
    "expiration_in_seconds": 3600,
  677         -
    "normalize": true,
  678         -
    "region": "us-east-1",
  679         -
    "service": "service",
  680         -
    "sign_body": false,
  681         -
    "timestamp": "2015-08-30T12:36:00Z"
  682         -
}
  683    220   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
  684    221   
deleted file mode 100644
  685    222   
index 45771c7..0000000
  686         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         223  +
++ /dev/null
  687    224   
@@ -1,12 +0,0 @@
  688         -
{
  689         -
    "credentials": {
  690         -
        "access_key_id": "AKIDEXAMPLE",
  691         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  692         -
    },
  693         -
    "expiration_in_seconds": 3600,
  694         -
    "normalize": true,
  695         -
    "region": "us-east-1",
  696         -
    "service": "service",
  697         -
    "sign_body": false,
  698         -
    "timestamp": "2015-08-30T12:36:00Z"
  699         -
}
  700    225   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
  701    226   
deleted file mode 100644
  702    227   
index 47e7128..0000000
  703         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         228  +
++ /dev/null
  704    229   
@@ -1,9 +0,0 @@
  705         -
GET
  706         -
/
  707         -
  708         -
host:example.amazonaws.com
  709         -
x-amz-date:20150830T123600Z
  710         -
x-amz-region-set:us-east-1
  711         -
  712         -
host;x-amz-date;x-amz-region-set
  713         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  714    230   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
  715    231   
deleted file mode 100644
  716    232   
index 95d7219..0000000
  717         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         233  +
++ /dev/null
  718    234   
@@ -1,4 +0,0 @@
  719         -
AWS4-ECDSA-P256-SHA256
  720         -
20150830T123600Z
  721         -
20150830/service/aws4_request
  722         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  723    235   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
  724    236   
deleted file mode 100644
  725    237   
index a34ea26..0000000
  726         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         238  +
++ /dev/null
  727    239   
@@ -1,7 +0,0 @@
  728         -
GET
  729         -
/
  730         -
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
  731         -
host:example.amazonaws.com
  732         -
  733         -
host
  734         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  735    240   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
  736    241   
deleted file mode 100644
  737    242   
index 48f855c..0000000
  738         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         243  +
++ /dev/null
  739    244   
@@ -1,4 +0,0 @@
  740         -
AWS4-ECDSA-P256-SHA256
  741         -
20150830T123600Z
  742         -
20150830/service/aws4_request
  743         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  744    245   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
  745    246   
deleted file mode 100644
  746    247   
index 45771c7..0000000
  747         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         248  +
++ /dev/null
  748    249   
@@ -1,12 +0,0 @@
  749         -
{
  750         -
    "credentials": {
  751         -
        "access_key_id": "AKIDEXAMPLE",
  752         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  753         -
    },
  754         -
    "expiration_in_seconds": 3600,
  755         -
    "normalize": true,
  756         -
    "region": "us-east-1",
  757         -
    "service": "service",
  758         -
    "sign_body": false,
  759         -
    "timestamp": "2015-08-30T12:36:00Z"
  760         -
}
  761    250   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
  762    251   
deleted file mode 100644
  763    252   
index 47e7128..0000000
  764         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         253  +
++ /dev/null
  765    254   
@@ -1,9 +0,0 @@
  766         -
GET
  767         -
/
  768         -
  769         -
host:example.amazonaws.com
  770         -
x-amz-date:20150830T123600Z
  771         -
x-amz-region-set:us-east-1
  772         -
  773         -
host;x-amz-date;x-amz-region-set
  774         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  775    255   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
  776    256   
deleted file mode 100644
  777    257   
index 95d7219..0000000
  778         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         258  +
++ /dev/null
  779    259   
@@ -1,4 +0,0 @@
  780         -
AWS4-ECDSA-P256-SHA256
  781         -
20150830T123600Z
  782         -
20150830/service/aws4_request
  783         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  784    260   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
  785    261   
deleted file mode 100644
  786    262   
index a34ea26..0000000
  787         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         263  +
++ /dev/null
  788    264   
@@ -1,7 +0,0 @@
  789         -
GET
  790         -
/
  791         -
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
  792         -
host:example.amazonaws.com
  793         -
  794         -
host
  795         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  796    265   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
  797    266   
deleted file mode 100644
  798    267   
index 48f855c..0000000
  799         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         268  +
++ /dev/null
  800    269   
@@ -1,4 +0,0 @@
  801         -
AWS4-ECDSA-P256-SHA256
  802         -
20150830T123600Z
  803         -
20150830/service/aws4_request
  804         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  805    270   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
  806    271   
deleted file mode 100644
  807    272   
index 45771c7..0000000
  808         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         273  +
++ /dev/null
  809    274   
@@ -1,12 +0,0 @@
  810         -
{
  811         -
    "credentials": {
  812         -
        "access_key_id": "AKIDEXAMPLE",
  813         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  814         -
    },
  815         -
    "expiration_in_seconds": 3600,
  816         -
    "normalize": true,
  817         -
    "region": "us-east-1",
  818         -
    "service": "service",
  819         -
    "sign_body": false,
  820         -
    "timestamp": "2015-08-30T12:36:00Z"
  821         -
}
  822    275   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
  823    276   
deleted file mode 100644
  824    277   
index 45771c7..0000000
  825         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         278  +
++ /dev/null
  826    279   
@@ -1,12 +0,0 @@
  827         -
{
  828         -
    "credentials": {
  829         -
        "access_key_id": "AKIDEXAMPLE",
  830         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  831         -
    },
  832         -
    "expiration_in_seconds": 3600,
  833         -
    "normalize": true,
  834         -
    "region": "us-east-1",
  835         -
    "service": "service",
  836         -
    "sign_body": false,
  837         -
    "timestamp": "2015-08-30T12:36:00Z"
  838         -
}
  839    280   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
  840    281   
deleted file mode 100644
  841    282   
index 45771c7..0000000
  842         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         283  +
++ /dev/null
  843    284   
@@ -1,12 +0,0 @@
  844         -
{
  845         -
    "credentials": {
  846         -
        "access_key_id": "AKIDEXAMPLE",
  847         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  848         -
    },
  849         -
    "expiration_in_seconds": 3600,
  850         -
    "normalize": true,
  851         -
    "region": "us-east-1",
  852         -
    "service": "service",
  853         -
    "sign_body": false,
  854         -
    "timestamp": "2015-08-30T12:36:00Z"
  855         -
}
  856    285   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
  857    286   
deleted file mode 100644
  858    287   
index 45771c7..0000000
  859         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         288  +
++ /dev/null
  860    289   
@@ -1,12 +0,0 @@
  861         -
{
  862         -
    "credentials": {
  863         -
        "access_key_id": "AKIDEXAMPLE",
  864         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  865         -
    },
  866         -
    "expiration_in_seconds": 3600,
  867         -
    "normalize": true,
  868         -
    "region": "us-east-1",
  869         -
    "service": "service",
  870         -
    "sign_body": false,
  871         -
    "timestamp": "2015-08-30T12:36:00Z"
  872         -
}
  873    290   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
  874    291   
deleted file mode 100644
  875    292   
index 45771c7..0000000
  876         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         293  +
++ /dev/null
  877    294   
@@ -1,12 +0,0 @@
  878         -
{
  879         -
    "credentials": {
  880         -
        "access_key_id": "AKIDEXAMPLE",
  881         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  882         -
    },
  883         -
    "expiration_in_seconds": 3600,
  884         -
    "normalize": true,
  885         -
    "region": "us-east-1",
  886         -
    "service": "service",
  887         -
    "sign_body": false,
  888         -
    "timestamp": "2015-08-30T12:36:00Z"
  889         -
}
  890    295   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
  891    296   
deleted file mode 100644
  892    297   
index 45771c7..0000000
  893         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         298  +
++ /dev/null
  894    299   
@@ -1,12 +0,0 @@
  895         -
{
  896         -
    "credentials": {
  897         -
        "access_key_id": "AKIDEXAMPLE",
  898         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  899         -
    },
  900         -
    "expiration_in_seconds": 3600,
  901         -
    "normalize": true,
  902         -
    "region": "us-east-1",
  903         -
    "service": "service",
  904         -
    "sign_body": false,
  905         -
    "timestamp": "2015-08-30T12:36:00Z"
  906         -
}
  907    300   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt
  908    301   
deleted file mode 100644
  909    302   
index b6fdecf..0000000
  910         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt
         303  +
++ /dev/null
  911    304   
@@ -1,4 +0,0 @@
  912         -
AWS4-ECDSA-P256-SHA256
  913         -
20150830T123600Z
  914         -
20150830/service/aws4_request
  915         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  916    305   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt
  917    306   
deleted file mode 100644
  918    307   
index a300bea..0000000
  919         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt
         308  +
++ /dev/null
  920    309   
@@ -1,4 +0,0 @@
  921         -
AWS4-ECDSA-P256-SHA256
  922         -
20150830T123600Z
  923         -
20150830/service/aws4_request
  924         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
  925    310   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
  926    311   
deleted file mode 100644
  927    312   
index b6fdecf..0000000
  928         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         313  +
++ /dev/null
  929    314   
@@ -1,4 +0,0 @@
  930         -
AWS4-ECDSA-P256-SHA256
  931         -
20150830T123600Z
  932         -
20150830/service/aws4_request
  933         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  934    315   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
  935    316   
new file mode 100644
  936    317   
index 0000000..a674243
  937         -
-- /dev/null
         318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
  938    319   
@@ -0,0 +1,7 @@
         320  +
# AWS SigV4 and SigV4A Signing Test Suite
         321  +
         322  +
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).
         323  +
         324  +
We added the following changes:
         325  +
         326  +
* Migrated old format tests `double-url-encode` and `double-encode-path` not in the new suite as we use these in many tests.
              \
 No newline at end of file
  939    327   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
  940    328   
similarity index 100%
  941    329   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
  942    330   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
  943    331   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
  944    332   
similarity index 100%
  945    333   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
  946    334   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
  947    335   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
  948    336   
similarity index 100%
  949    337   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
  950    338   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
  951    339   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
  952    340   
similarity index 100%
  953    341   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
  954    342   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
  955    343   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
  956    344   
similarity index 100%
  957    345   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
  958    346   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
  959    347   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
  960    348   
similarity index 100%
  961    349   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
  962    350   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
  963    351   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
  964    352   
similarity index 100%
  965    353   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
  966    354   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
  967    355   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
  968    356   
similarity index 99%
  969    357   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
  970    358   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
  971    359   
index 45771c7..0468d80 100644
  972    360   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
  973    361   
similarity index 100%
  974    362   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
  975    363   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
  976    364   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
  977    365   
new file mode 100644
  978    366   
index 0000000..7fc5d7a
  979         -
-- /dev/null
         367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
  980    368   
@@ -0,0 +1 @@
         369  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
  981    370   
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
  982    371   
new file mode 100644
  983    372   
index 0000000..36a1205
  984         -
-- /dev/null
         373  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
  985    374   
@@ -0,0 +1,8 @@
         375  +
GET / HTTP/1.1
         376  +
Host:example.amazonaws.com
         377  +
My-Header1:value2
         378  +
My-Header1:value2
         379  +
My-Header1:value1
         380  +
X-Amz-Date:20150830T123600Z
         381  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         382  +
  986    383   
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
  987    384   
similarity index 100%
  988    385   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
  989    386   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
  990    387   
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
  991    388   
new file mode 100644
  992    389   
index 0000000..f9f4190
  993         -
-- /dev/null
         390  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
  994    391   
@@ -0,0 +1,8 @@
         392  +
GET
         393  +
/
         394  +
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
         395  +
host:example.amazonaws.com
         396  +
my-header1:value2,value2,value1
         397  +
         398  +
host;my-header1
         399  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  995    400   
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
  996    401   
new file mode 100644
  997    402   
index 0000000..5d0d87f
  998         -
-- /dev/null
         403  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
  999    404   
@@ -0,0 +1 @@
         405  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1000    406   
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
 1001    407   
new file mode 100644
 1002    408   
index 0000000..c1dfcf4
 1003         -
-- /dev/null
         409  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1004    410   
@@ -0,0 +1,6 @@
         411  +
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
         412  +
Host:example.amazonaws.com
         413  +
My-Header1:value2
         414  +
My-Header1:value2
         415  +
My-Header1:value1
         416  +
 1005    417   
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
 1006    418   
similarity index 53%
 1007    419   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1008    420   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1009    421   
index 0a3350a..077c1bb 100644
 1010         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1011    423   
@@ -1,4 +1,4 @@
 1012    424   
AWS4-HMAC-SHA256
 1013    425   
20150830T123600Z
 1014    426   
20150830/us-east-1/service/aws4_request
 1015         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         427  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1016    428   
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
 1017    429   
similarity index 100%
 1018    430   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1019    431   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1020    432   
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
 1021    433   
similarity index 99%
 1022    434   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1023    435   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1024    436   
index 45771c7..0468d80 100644
 1025    437   
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
 1026    438   
similarity index 82%
 1027    439   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1028    440   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1029    441   
index 721a39f..8cb5476 100644
 1030         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         442  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1031    443   
@@ -1,9 +1,9 @@
 1032    444   
GET
 1033    445   
/
 1034    446   
 1035    447   
host:example.amazonaws.com
 1036         -
my-header1:value1,value2,value3
         448  +
my-header1:value1 value2 value3
 1037    449   
x-amz-date:20150830T123600Z
 1038    450   
 1039    451   
host;my-header1;x-amz-date
 1040    452   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1041    453   
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
 1042    454   
new file mode 100644
 1043    455   
index 0000000..e6ff7a9
 1044         -
-- /dev/null
         456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1045    457   
@@ -0,0 +1 @@
         458  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1046    459   
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
 1047    460   
new file mode 100644
 1048    461   
index 0000000..b5ef6a0
 1049         -
-- /dev/null
         462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1050    463   
@@ -0,0 +1,8 @@
         464  +
GET / HTTP/1.1
         465  +
Host:example.amazonaws.com
         466  +
My-Header1:value1
         467  +
  value2
         468  +
     value3
         469  +
X-Amz-Date:20150830T123600Z
         470  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         471  +
 1051    472   
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
 1052    473   
similarity index 53%
 1053    474   
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
 1054    475   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1055    476   
index fd43a41..97c7430 100644
 1056         -
-- 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
         477  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1057    478   
@@ -1,4 +1,4 @@
 1058    479   
AWS4-HMAC-SHA256
 1059    480   
20150830T123600Z
 1060    481   
20150830/us-east-1/service/aws4_request
 1061         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         482  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1062    483   
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
 1063    484   
new file mode 100644
 1064    485   
index 0000000..aac46de
 1065         -
-- /dev/null
         486  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1066    487   
@@ -0,0 +1,8 @@
         488  +
GET
         489  +
/
         490  +
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
         491  +
host:example.amazonaws.com
         492  +
my-header1:value1 value2 value3
         493  +
         494  +
host;my-header1
         495  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1067    496   
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
 1068    497   
new file mode 100644
 1069    498   
index 0000000..205732d
 1070         -
-- /dev/null
         499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1071    500   
@@ -0,0 +1 @@
         501  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1072    502   
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
 1073    503   
new file mode 100644
 1074    504   
index 0000000..a891b87
 1075         -
-- /dev/null
         505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1076    506   
@@ -0,0 +1,6 @@
         507  +
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
         508  +
Host:example.amazonaws.com
         509  +
My-Header1:value1
         510  +
  value2
         511  +
     value3
         512  +
 1077    513   
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
 1078    514   
similarity index 53%
 1079    515   
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
 1080    516   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1081    517   
index 90e66b8..ec3fe45 100644
 1082         -
-- 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
         518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1083    519   
@@ -1,4 +1,4 @@
 1084    520   
AWS4-HMAC-SHA256
 1085    521   
20150830T123600Z
 1086    522   
20150830/us-east-1/service/aws4_request
 1087         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         523  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1088    524   
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
 1089    525   
similarity index 75%
 1090    526   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1091    527   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1092    528   
index 7caa6ac..b5026cd 100644
 1093         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1094    530   
@@ -1,6 +1,5 @@
 1095    531   
GET / HTTP/1.1
 1096    532   
Host:example.amazonaws.com
 1097    533   
My-Header1:value1
 1098    534   
  value2
 1099    535   
     value3
 1100         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1101    536   
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
 1102    537   
similarity index 99%
 1103    538   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1104    539   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1105    540   
index 45771c7..0468d80 100644
 1106    541   
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
 1107    542   
similarity index 100%
 1108    543   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1109    544   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1110    545   
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
 1111    546   
new file mode 100644
 1112    547   
index 0000000..8ef0494
 1113         -
-- /dev/null
         548  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1114    549   
@@ -0,0 +1 @@
         550  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1115    551   
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
 1116    552   
new file mode 100644
 1117    553   
index 0000000..b786dc9
 1118         -
-- /dev/null
         554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1119    555   
@@ -0,0 +1,9 @@
         556  +
GET / HTTP/1.1
         557  +
Host:example.amazonaws.com
         558  +
My-Header1:value4
         559  +
My-Header1:value1
         560  +
My-Header1:value3
         561  +
My-Header1:value2
         562  +
X-Amz-Date:20150830T123600Z
         563  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         564  +
 1120    565   
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
 1121    566   
similarity index 100%
 1122    567   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1123    568   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1124    569   
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
 1125    570   
new file mode 100644
 1126    571   
index 0000000..a211cc5
 1127         -
-- /dev/null
         572  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1128    573   
@@ -0,0 +1,8 @@
         574  +
GET
         575  +
/
         576  +
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
         577  +
host:example.amazonaws.com
         578  +
my-header1:value4,value1,value3,value2
         579  +
         580  +
host;my-header1
         581  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1129    582   
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
 1130    583   
new file mode 100644
 1131    584   
index 0000000..417b0fa
 1132         -
-- /dev/null
         585  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1133    586   
@@ -0,0 +1 @@
         587  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1134    588   
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
 1135    589   
new file mode 100644
 1136    590   
index 0000000..b615e5d
 1137         -
-- /dev/null
         591  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1138    592   
@@ -0,0 +1,7 @@
         593  +
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
         594  +
Host:example.amazonaws.com
         595  +
My-Header1:value4
         596  +
My-Header1:value1
         597  +
My-Header1:value3
         598  +
My-Header1:value2
         599  +
 1139    600   
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
 1140    601   
similarity index 53%
 1141    602   
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
 1142    603   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1143    604   
index f7e615e..dcaaa1b 100644
 1144         -
-- 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
         605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1145    606   
@@ -1,4 +1,4 @@
 1146    607   
AWS4-HMAC-SHA256
 1147    608   
20150830T123600Z
 1148    609   
20150830/us-east-1/service/aws4_request
 1149         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         610  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1150    611   
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
 1151    612   
similarity index 100%
 1152    613   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1153    614   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1154    615   
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
 1155    616   
similarity index 99%
 1156    617   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1157    618   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1158    619   
index 45771c7..0468d80 100644
 1159    620   
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
 1160    621   
similarity index 100%
 1161    622   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1162    623   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1163    624   
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
 1164    625   
new file mode 100644
 1165    626   
index 0000000..36081a9
 1166         -
-- /dev/null
         627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1167    628   
@@ -0,0 +1 @@
         629  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1168    630   
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
 1169    631   
new file mode 100644
 1170    632   
index 0000000..6331d16
 1171         -
-- /dev/null
         633  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1172    634   
@@ -0,0 +1,7 @@
         635  +
GET / HTTP/1.1
         636  +
Host:example.amazonaws.com
         637  +
My-Header1: value1
         638  +
My-Header2: "a   b   c"
         639  +
X-Amz-Date:20150830T123600Z
         640  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         641  +
 1173    642   
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
 1174    643   
similarity index 100%
 1175    644   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1176    645   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1177    646   
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
 1178    647   
new file mode 100644
 1179    648   
index 0000000..125c1f9
 1180         -
-- /dev/null
         649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1181    650   
@@ -0,0 +1,9 @@
         651  +
GET
         652  +
/
         653  +
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
         654  +
host:example.amazonaws.com
         655  +
my-header1:value1
         656  +
my-header2:"a b c"
         657  +
         658  +
host;my-header1;my-header2
         659  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1182    660   
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
 1183    661   
new file mode 100644
 1184    662   
index 0000000..17007a8
 1185         -
-- /dev/null
         663  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1186    664   
@@ -0,0 +1 @@
         665  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1187    666   
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
 1188    667   
new file mode 100644
 1189    668   
index 0000000..e519fd9
 1190         -
-- /dev/null
         669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1191    670   
@@ -0,0 +1,5 @@
         671  +
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
         672  +
Host:example.amazonaws.com
         673  +
My-Header1: value1
         674  +
My-Header2: "a   b   c"
         675  +
 1192    676   
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
 1193    677   
new file mode 100644
 1194    678   
index 0000000..6b4b781
 1195         -
-- /dev/null
         679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1196    680   
@@ -0,0 +1,4 @@
         681  +
AWS4-HMAC-SHA256
         682  +
20150830T123600Z
         683  +
20150830/us-east-1/service/aws4_request
         684  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1197    685   
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
 1198    686   
similarity index 100%
 1199    687   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1200    688   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1201    689   
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
 1202    690   
new file mode 100644
 1203    691   
index 0000000..0468d80
 1204         -
-- /dev/null
         692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1205    693   
@@ -0,0 +1,12 @@
         694  +
{
         695  +
    "credentials": {
         696  +
        "access_key_id": "AKIDEXAMPLE",
         697  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         698  +
    },
         699  +
    "expiration_in_seconds": 3600,
         700  +
    "normalize": true,
         701  +
    "region": "us-east-1",
         702  +
    "service": "service",
         703  +
    "sign_body": false,
         704  +
    "timestamp": "2015-08-30T12:36:00Z"
         705  +
}
              \
 No newline at end of file
 1206    706   
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
 1207    707   
similarity index 100%
 1208    708   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1209    709   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1210    710   
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
 1211    711   
new file mode 100644
 1212    712   
index 0000000..87f295f
 1213         -
-- /dev/null
         713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1214    714   
@@ -0,0 +1 @@
         715  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1215    716   
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
 1216    717   
new file mode 100644
 1217    718   
index 0000000..0de8327
 1218         -
-- /dev/null
         719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1219    720   
@@ -0,0 +1,5 @@
         721  +
GET /example/.. HTTP/1.1
         722  +
Host:example.amazonaws.com
         723  +
X-Amz-Date:20150830T123600Z
         724  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         725  +
 1220    726   
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
 1221    727   
similarity index 100%
 1222    728   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1223    729   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1224    730   
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
 1225    731   
new file mode 100644
 1226    732   
index 0000000..fb2420d
 1227         -
-- /dev/null
         733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1228    734   
@@ -0,0 +1,7 @@
         735  +
GET
         736  +
/
         737  +
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
         738  +
host:example.amazonaws.com
         739  +
         740  +
host
         741  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1229    742   
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
 1230    743   
new file mode 100644
 1231    744   
index 0000000..da5c905
 1232         -
-- /dev/null
         745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1233    746   
@@ -0,0 +1 @@
         747  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1234    748   
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
 1235    749   
new file mode 100644
 1236    750   
index 0000000..4329c98
 1237         -
-- /dev/null
         751  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1238    752   
@@ -0,0 +1,3 @@
         753  +
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
         754  +
Host:example.amazonaws.com
         755  +
 1239    756   
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
 1240    757   
new file mode 100644
 1241    758   
index 0000000..d837e67
 1242         -
-- /dev/null
         759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1243    760   
@@ -0,0 +1,4 @@
         761  +
AWS4-HMAC-SHA256
         762  +
20150830T123600Z
         763  +
20150830/us-east-1/service/aws4_request
         764  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1244    765   
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
 1245    766   
similarity index 100%
 1246    767   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1247    768   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1248    769   
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
 1249    770   
new file mode 100644
 1250    771   
index 0000000..0468d80
 1251         -
-- /dev/null
         772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1252    773   
@@ -0,0 +1,12 @@
         774  +
{
         775  +
    "credentials": {
         776  +
        "access_key_id": "AKIDEXAMPLE",
         777  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         778  +
    },
         779  +
    "expiration_in_seconds": 3600,
         780  +
    "normalize": true,
         781  +
    "region": "us-east-1",
         782  +
    "service": "service",
         783  +
    "sign_body": false,
         784  +
    "timestamp": "2015-08-30T12:36:00Z"
         785  +
}
              \
 No newline at end of file
 1253    786   
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
 1254    787   
similarity index 100%
 1255    788   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1256    789   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1257    790   
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
 1258    791   
new file mode 100644
 1259    792   
index 0000000..87f295f
 1260         -
-- /dev/null
         793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1261    794   
@@ -0,0 +1 @@
         795  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1262    796   
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
 1263    797   
new file mode 100644
 1264    798   
index 0000000..f9b3815
 1265         -
-- /dev/null
         799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1266    800   
@@ -0,0 +1,5 @@
         801  +
GET /example1/example2/../.. HTTP/1.1
         802  +
Host:example.amazonaws.com
         803  +
X-Amz-Date:20150830T123600Z
         804  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         805  +
 1267    806   
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
 1268    807   
similarity index 100%
 1269    808   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1270    809   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1271    810   
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
 1272    811   
new file mode 100644
 1273    812   
index 0000000..fb2420d
 1274         -
-- /dev/null
         813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1275    814   
@@ -0,0 +1,7 @@
         815  +
GET
         816  +
/
         817  +
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
         818  +
host:example.amazonaws.com
         819  +
         820  +
host
         821  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1276    822   
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
 1277    823   
new file mode 100644
 1278    824   
index 0000000..da5c905
 1279         -
-- /dev/null
         825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1280    826   
@@ -0,0 +1 @@
         827  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1281    828   
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
 1282    829   
new file mode 100644
 1283    830   
index 0000000..b2988b7
 1284         -
-- /dev/null
         831  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1285    832   
@@ -0,0 +1,3 @@
         833  +
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
         834  +
Host:example.amazonaws.com
         835  +
 1286    836   
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
 1287    837   
new file mode 100644
 1288    838   
index 0000000..d837e67
 1289         -
-- /dev/null
         839  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1290    840   
@@ -0,0 +1,4 @@
         841  +
AWS4-HMAC-SHA256
         842  +
20150830T123600Z
         843  +
20150830/us-east-1/service/aws4_request
         844  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1291    845   
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
 1292    846   
similarity index 100%
 1293    847   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1294    848   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1295    849   
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
 1296    850   
similarity index 99%
 1297    851   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1298    852   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1299    853   
index afe367b..7bee5c7 100644
 1300    854   
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
 1301    855   
similarity index 82%
 1302    856   
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
 1303    857   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1304    858   
index 36c3cdf..6919c44 100644
 1305         -
-- 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
         859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1306    860   
@@ -1,8 +1,8 @@
 1307    861   
GET
 1308         -
/
 1309         -
Param1=Value1&Param1=value2
         862  +
/example1/example2/../..
         863  +
 1310    864   
host:example.amazonaws.com
 1311    865   
x-amz-date:20150830T123600Z
 1312    866   
 1313    867   
host;x-amz-date
 1314    868   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1315    869   
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
 1316    870   
new file mode 100644
 1317    871   
index 0000000..4092d83
 1318         -
-- /dev/null
         872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1319    873   
@@ -0,0 +1 @@
         874  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1320    875   
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
 1321    876   
new file mode 100644
 1322    877   
index 0000000..e731b35
 1323         -
-- /dev/null
         878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1324    879   
@@ -0,0 +1,5 @@
         880  +
GET /example1/example2/../.. HTTP/1.1
         881  +
Host:example.amazonaws.com
         882  +
X-Amz-Date:20150830T123600Z
         883  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
         884  +
 1325    885   
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
 1326    886   
new file mode 100644
 1327    887   
index 0000000..4f45752
 1328         -
-- /dev/null
         888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1329    889   
@@ -0,0 +1,4 @@
         890  +
AWS4-HMAC-SHA256
         891  +
20150830T123600Z
         892  +
20150830/us-east-1/service/aws4_request
         893  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1330    894   
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
 1331    895   
new file mode 100644
 1332    896   
index 0000000..e1fb07d
 1333         -
-- /dev/null
         897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1334    898   
@@ -0,0 +1,7 @@
         899  +
GET
         900  +
/example1/example2/../..
         901  +
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
         902  +
host:example.amazonaws.com
         903  +
         904  +
host
         905  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1335    906   
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
 1336    907   
new file mode 100644
 1337    908   
index 0000000..8ac31d7
 1338         -
-- /dev/null
         909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1339    910   
@@ -0,0 +1 @@
         911  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1340    912   
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
 1341    913   
new file mode 100644
 1342    914   
index 0000000..ac074f9
 1343         -
-- /dev/null
         915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1344    916   
@@ -0,0 +1,3 @@
         917  +
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
         918  +
Host:example.amazonaws.com
         919  +
 1345    920   
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
 1346    921   
new file mode 100644
 1347    922   
index 0000000..8dcb6ff
 1348         -
-- /dev/null
         923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1349    924   
@@ -0,0 +1,4 @@
         925  +
AWS4-HMAC-SHA256
         926  +
20150830T123600Z
         927  +
20150830/us-east-1/service/aws4_request
         928  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1350    929   
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
 1351    930   
similarity index 100%
 1352    931   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1353    932   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1354    933   
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
 1355    934   
similarity index 99%
 1356    935   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1357    936   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1358    937   
index afe367b..7bee5c7 100644
 1359    938   
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
 1360    939   
similarity index 82%
 1361    940   
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
 1362    941   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1363    942   
index 26898eb..f640bc2 100644
 1364         -
-- 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
         943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1365    944   
@@ -1,8 +1,8 @@
 1366    945   
GET
 1367         -
/
 1368         -
Param1=value1&Param1=value2
         946  +
/example/..
         947  +
 1369    948   
host:example.amazonaws.com
 1370    949   
x-amz-date:20150830T123600Z
 1371    950   
 1372    951   
host;x-amz-date
 1373    952   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1374    953   
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
 1375    954   
new file mode 100644
 1376    955   
index 0000000..d957303
 1377         -
-- /dev/null
         956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1378    957   
@@ -0,0 +1 @@
         958  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1379    959   
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
 1380    960   
new file mode 100644
 1381    961   
index 0000000..4f42ffc
 1382         -
-- /dev/null
         962  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1383    963   
@@ -0,0 +1,5 @@
         964  +
GET /example/.. HTTP/1.1
         965  +
Host:example.amazonaws.com
         966  +
X-Amz-Date:20150830T123600Z
         967  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
         968  +
 1384    969   
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
 1385    970   
new file mode 100644
 1386    971   
index 0000000..ca54bda
 1387         -
-- /dev/null
         972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1388    973   
@@ -0,0 +1,4 @@
         974  +
AWS4-HMAC-SHA256
         975  +
20150830T123600Z
         976  +
20150830/us-east-1/service/aws4_request
         977  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1389    978   
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
 1390    979   
new file mode 100644
 1391    980   
index 0000000..dc80036
 1392         -
-- /dev/null
         981  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1393    982   
@@ -0,0 +1,7 @@
         983  +
GET
         984  +
/example/..
         985  +
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
         986  +
host:example.amazonaws.com
         987  +
         988  +
host
         989  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1394    990   
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
 1395    991   
new file mode 100644
 1396    992   
index 0000000..dfa0437
 1397         -
-- /dev/null
         993  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1398    994   
@@ -0,0 +1 @@
         995  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1399    996   
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
 1400    997   
new file mode 100644
 1401    998   
index 0000000..98367b1
 1402         -
-- /dev/null
         999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1403   1000   
@@ -0,0 +1,3 @@
        1001  +
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
        1002  +
Host:example.amazonaws.com
        1003  +
 1404   1004   
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
 1405   1005   
new file mode 100644
 1406   1006   
index 0000000..f65dd66
 1407         -
-- /dev/null
        1007  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1408   1008   
@@ -0,0 +1,4 @@
        1009  +
AWS4-HMAC-SHA256
        1010  +
20150830T123600Z
        1011  +
20150830/us-east-1/service/aws4_request
        1012  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1409   1013   
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
 1410   1014   
similarity index 100%
 1411   1015   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1412   1016   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1413   1017   
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
 1414   1018   
new file mode 100644
 1415   1019   
index 0000000..0468d80
 1416         -
-- /dev/null
        1020  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1417   1021   
@@ -0,0 +1,12 @@
        1022  +
{
        1023  +
    "credentials": {
        1024  +
        "access_key_id": "AKIDEXAMPLE",
        1025  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1026  +
    },
        1027  +
    "expiration_in_seconds": 3600,
        1028  +
    "normalize": true,
        1029  +
    "region": "us-east-1",
        1030  +
    "service": "service",
        1031  +
    "sign_body": false,
        1032  +
    "timestamp": "2015-08-30T12:36:00Z"
        1033  +
}
              \
 No newline at end of file
 1418   1034   
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
 1419   1035   
similarity index 100%
 1420   1036   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1421   1037   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1422   1038   
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
 1423   1039   
new file mode 100644
 1424   1040   
index 0000000..87f295f
 1425         -
-- /dev/null
        1041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1426   1042   
@@ -0,0 +1 @@
        1043  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1427   1044   
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
 1428   1045   
new file mode 100644
 1429   1046   
index 0000000..99c8eeb
 1430         -
-- /dev/null
        1047  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1431   1048   
@@ -0,0 +1,5 @@
        1049  +
GET /./ HTTP/1.1
        1050  +
Host:example.amazonaws.com
        1051  +
X-Amz-Date:20150830T123600Z
        1052  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1053  +
 1432   1054   
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
 1433   1055   
similarity index 100%
 1434   1056   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1435   1057   
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
 1436   1058   
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
 1437   1059   
new file mode 100644
 1438   1060   
index 0000000..fb2420d
 1439         -
-- /dev/null
        1061  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1440   1062   
@@ -0,0 +1,7 @@
        1063  +
GET
        1064  +
/
        1065  +
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
        1066  +
host:example.amazonaws.com
        1067  +
        1068  +
host
        1069  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1441   1070   
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
 1442   1071   
new file mode 100644
 1443   1072   
index 0000000..da5c905
 1444         -
-- /dev/null
        1073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1445   1074   
@@ -0,0 +1 @@
        1075  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1446   1076   
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
 1447   1077   
new file mode 100644
 1448   1078   
index 0000000..2e47f69
 1449         -
-- /dev/null
        1079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1450   1080   
@@ -0,0 +1,3 @@
        1081  +
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
        1082  +
Host:example.amazonaws.com
        1083  +
 1451   1084   
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
 1452   1085   
new file mode 100644
 1453   1086   
index 0000000..d837e67
 1454         -
-- /dev/null
        1087  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1455   1088   
@@ -0,0 +1,4 @@
        1089  +
AWS4-HMAC-SHA256
        1090  +
20150830T123600Z
        1091  +
20150830/us-east-1/service/aws4_request
        1092  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1456   1093   
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
 1457   1094   
similarity index 100%
 1458   1095   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1459   1096   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1460   1097   
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
 1461   1098   
similarity index 99%
 1462   1099   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1463   1100   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1464   1101   
index afe367b..7bee5c7 100644
 1465   1102   
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
 1466   1103   
new file mode 100644
 1467   1104   
index 0000000..5159048
 1468         -
-- /dev/null
        1105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1469   1106   
@@ -0,0 +1,8 @@
        1107  +
GET
        1108  +
/./
        1109  +
        1110  +
host:example.amazonaws.com
        1111  +
x-amz-date:20150830T123600Z
        1112  +
        1113  +
host;x-amz-date
        1114  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1470   1115   
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
 1471   1116   
new file mode 100644
 1472   1117   
index 0000000..b49ff0e
 1473         -
-- /dev/null
        1118  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1474   1119   
@@ -0,0 +1 @@
        1120  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1475   1121   
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
 1476   1122   
new file mode 100644
 1477   1123   
index 0000000..aeb1ffa
 1478         -
-- /dev/null
        1124  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1479   1125   
@@ -0,0 +1,5 @@
        1126  +
GET /./ HTTP/1.1
        1127  +
Host:example.amazonaws.com
        1128  +
X-Amz-Date:20150830T123600Z
        1129  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1130  +
 1480   1131   
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
 1481   1132   
new file mode 100644
 1482   1133   
index 0000000..b7d8caf
 1483         -
-- /dev/null
        1134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1484   1135   
@@ -0,0 +1,4 @@
        1136  +
AWS4-HMAC-SHA256
        1137  +
20150830T123600Z
        1138  +
20150830/us-east-1/service/aws4_request
        1139  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1485   1140   
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
 1486   1141   
new file mode 100644
 1487   1142   
index 0000000..d4e029e
 1488         -
-- /dev/null
        1143  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1489   1144   
@@ -0,0 +1,7 @@
        1145  +
GET
        1146  +
/./
        1147  +
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
        1148  +
host:example.amazonaws.com
        1149  +
        1150  +
host
        1151  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1490   1152   
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
 1491   1153   
new file mode 100644
 1492   1154   
index 0000000..fe8f4cc
 1493         -
-- /dev/null
        1155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1494   1156   
@@ -0,0 +1 @@
        1157  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1495   1158   
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
 1496   1159   
new file mode 100644
 1497   1160   
index 0000000..dcc4fc4
 1498         -
-- /dev/null
        1161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1499   1162   
@@ -0,0 +1,3 @@
        1163  +
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
        1164  +
Host:example.amazonaws.com
        1165  +
 1500   1166   
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
 1501   1167   
new file mode 100644
 1502   1168   
index 0000000..5fb3ada
 1503         -
-- /dev/null
        1169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1504   1170   
@@ -0,0 +1,4 @@
        1171  +
AWS4-HMAC-SHA256
        1172  +
20150830T123600Z
        1173  +
20150830/us-east-1/service/aws4_request
        1174  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1505   1175   
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
 1506   1176   
similarity index 100%
 1507   1177   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1508   1178   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1509   1179   
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
 1510   1180   
new file mode 100644
 1511   1181   
index 0000000..0468d80
 1512         -
-- /dev/null
        1182  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1513   1183   
@@ -0,0 +1,12 @@
        1184  +
{
        1185  +
    "credentials": {
        1186  +
        "access_key_id": "AKIDEXAMPLE",
        1187  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1188  +
    },
        1189  +
    "expiration_in_seconds": 3600,
        1190  +
    "normalize": true,
        1191  +
    "region": "us-east-1",
        1192  +
    "service": "service",
        1193  +
    "sign_body": false,
        1194  +
    "timestamp": "2015-08-30T12:36:00Z"
        1195  +
}
              \
 No newline at end of file
 1514   1196   
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
 1515   1197   
similarity index 100%
 1516   1198   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1517   1199   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1518   1200   
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
 1519   1201   
new file mode 100644
 1520   1202   
index 0000000..87f295f
 1521         -
-- /dev/null
        1203  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1522   1204   
@@ -0,0 +1 @@
        1205  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1523   1206   
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
 1524   1207   
new file mode 100644
 1525   1208   
index 0000000..b91087b
 1526         -
-- /dev/null
        1209  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1527   1210   
@@ -0,0 +1,5 @@
        1211  +
GET // HTTP/1.1
        1212  +
Host:example.amazonaws.com
        1213  +
X-Amz-Date:20150830T123600Z
        1214  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1215  +
 1528   1216   
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
 1529   1217   
similarity index 100%
 1530   1218   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1531   1219   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1532   1220   
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
 1533   1221   
new file mode 100644
 1534   1222   
index 0000000..fb2420d
 1535         -
-- /dev/null
        1223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1536   1224   
@@ -0,0 +1,7 @@
        1225  +
GET
        1226  +
/
        1227  +
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
        1228  +
host:example.amazonaws.com
        1229  +
        1230  +
host
        1231  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1537   1232   
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
 1538   1233   
new file mode 100644
 1539   1234   
index 0000000..da5c905
 1540         -
-- /dev/null
        1235  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1541   1236   
@@ -0,0 +1 @@
        1237  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1542   1238   
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
 1543   1239   
new file mode 100644
 1544   1240   
index 0000000..0290ba4
 1545         -
-- /dev/null
        1241  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1546   1242   
@@ -0,0 +1,3 @@
        1243  +
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
        1244  +
Host:example.amazonaws.com
        1245  +
 1547   1246   
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
 1548   1247   
new file mode 100644
 1549   1248   
index 0000000..d837e67
 1550         -
-- /dev/null
        1249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1551   1250   
@@ -0,0 +1,4 @@
        1251  +
AWS4-HMAC-SHA256
        1252  +
20150830T123600Z
        1253  +
20150830/us-east-1/service/aws4_request
        1254  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1552   1255   
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
 1553   1256   
similarity index 100%
 1554   1257   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1555   1258   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1556   1259   
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
 1557   1260   
new file mode 100644
 1558   1261   
index 0000000..0468d80
 1559         -
-- /dev/null
        1262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1560   1263   
@@ -0,0 +1,12 @@
        1264  +
{
        1265  +
    "credentials": {
        1266  +
        "access_key_id": "AKIDEXAMPLE",
        1267  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1268  +
    },
        1269  +
    "expiration_in_seconds": 3600,
        1270  +
    "normalize": true,
        1271  +
    "region": "us-east-1",
        1272  +
    "service": "service",
        1273  +
    "sign_body": false,
        1274  +
    "timestamp": "2015-08-30T12:36:00Z"
        1275  +
}
              \
 No newline at end of file
 1561   1276   
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
 1562   1277   
similarity index 100%
 1563   1278   
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
 1564   1279   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1565   1280   
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
 1566   1281   
new file mode 100644
 1567   1282   
index 0000000..8f892bf
 1568         -
-- /dev/null
        1283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1569   1284   
@@ -0,0 +1 @@
        1285  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1570   1286   
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
 1571   1287   
new file mode 100644
 1572   1288   
index 0000000..2a1895c
 1573         -
-- /dev/null
        1289  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1574   1290   
@@ -0,0 +1,5 @@
        1291  +
GET /./example HTTP/1.1
        1292  +
Host:example.amazonaws.com
        1293  +
X-Amz-Date:20150830T123600Z
        1294  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1295  +
 1575   1296   
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
 1576   1297   
similarity index 100%
 1577   1298   
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
 1578   1299   
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
 1579   1300   
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
 1580   1301   
new file mode 100644
 1581   1302   
index 0000000..99dfc2a
 1582         -
-- /dev/null
        1303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1583   1304   
@@ -0,0 +1,7 @@
        1305  +
GET
        1306  +
/example
        1307  +
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
        1308  +
host:example.amazonaws.com
        1309  +
        1310  +
host
        1311  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1584   1312   
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
 1585   1313   
new file mode 100644
 1586   1314   
index 0000000..fcd7a17
 1587         -
-- /dev/null
        1315  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1588   1316   
@@ -0,0 +1 @@
        1317  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1589   1318   
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
 1590   1319   
new file mode 100644
 1591   1320   
index 0000000..f671de2
 1592         -
-- /dev/null
        1321  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1593   1322   
@@ -0,0 +1,3 @@
        1323  +
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
        1324  +
Host:example.amazonaws.com
        1325  +
 1594   1326   
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
 1595   1327   
new file mode 100644
 1596   1328   
index 0000000..f8456dc
 1597         -
-- /dev/null
        1329  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1598   1330   
@@ -0,0 +1,4 @@
        1331  +
AWS4-HMAC-SHA256
        1332  +
20150830T123600Z
        1333  +
20150830/us-east-1/service/aws4_request
        1334  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1599   1335   
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
 1600   1336   
similarity index 100%
 1601   1337   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1602   1338   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1603   1339   
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
 1604   1340   
similarity index 99%
 1605   1341   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1606   1342   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1607   1343   
index afe367b..7bee5c7 100644
 1608   1344   
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
 1609   1345   
new file mode 100644
 1610   1346   
index 0000000..36698c7
 1611         -
-- /dev/null
        1347  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1612   1348   
@@ -0,0 +1,8 @@
        1349  +
GET
        1350  +
/./example
        1351  +
        1352  +
host:example.amazonaws.com
        1353  +
x-amz-date:20150830T123600Z
        1354  +
        1355  +
host;x-amz-date
        1356  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1613   1357   
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
 1614   1358   
new file mode 100644
 1615   1359   
index 0000000..4a4b8f2
 1616         -
-- /dev/null
        1360  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1617   1361   
@@ -0,0 +1 @@
        1362  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1618   1363   
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
 1619   1364   
new file mode 100644
 1620   1365   
index 0000000..d462bcd
 1621         -
-- /dev/null
        1366  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1622   1367   
@@ -0,0 +1,5 @@
        1368  +
GET /./example HTTP/1.1
        1369  +
Host:example.amazonaws.com
        1370  +
X-Amz-Date:20150830T123600Z
        1371  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1372  +
 1623   1373   
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
 1624   1374   
new file mode 100644
 1625   1375   
index 0000000..8be78c9
 1626         -
-- /dev/null
        1376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1627   1377   
@@ -0,0 +1,4 @@
        1378  +
AWS4-HMAC-SHA256
        1379  +
20150830T123600Z
        1380  +
20150830/us-east-1/service/aws4_request
        1381  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1628   1382   
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
 1629   1383   
new file mode 100644
 1630   1384   
index 0000000..fe1103c
 1631         -
-- /dev/null
        1385  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1632   1386   
@@ -0,0 +1,7 @@
        1387  +
GET
        1388  +
/./example
        1389  +
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
        1390  +
host:example.amazonaws.com
        1391  +
        1392  +
host
        1393  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1633   1394   
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
 1634   1395   
new file mode 100644
 1635   1396   
index 0000000..ce80762
 1636         -
-- /dev/null
        1397  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1637   1398   
@@ -0,0 +1 @@
        1399  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1638   1400   
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
 1639   1401   
new file mode 100644
 1640   1402   
index 0000000..30841a6
 1641         -
-- /dev/null
        1403  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1642   1404   
@@ -0,0 +1,3 @@
        1405  +
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
        1406  +
Host:example.amazonaws.com
        1407  +
 1643   1408   
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
 1644   1409   
new file mode 100644
 1645   1410   
index 0000000..5c66509
 1646         -
-- /dev/null
        1411  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1647   1412   
@@ -0,0 +1,4 @@
        1413  +
AWS4-HMAC-SHA256
        1414  +
20150830T123600Z
        1415  +
20150830/us-east-1/service/aws4_request
        1416  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1648   1417   
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
 1649   1418   
similarity index 100%
 1650   1419   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1651   1420   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1652   1421   
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
 1653   1422   
new file mode 100644
 1654   1423   
index 0000000..7bee5c7
 1655         -
-- /dev/null
        1424  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1656   1425   
@@ -0,0 +1,12 @@
        1426  +
{
        1427  +
    "credentials": {
        1428  +
        "access_key_id": "AKIDEXAMPLE",
        1429  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1430  +
    },
        1431  +
    "expiration_in_seconds": 3600,
        1432  +
    "normalize": false,
        1433  +
    "region": "us-east-1",
        1434  +
    "service": "service",
        1435  +
    "sign_body": false,
        1436  +
    "timestamp": "2015-08-30T12:36:00Z"
        1437  +
}
              \
 No newline at end of file
 1657   1438   
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
 1658   1439   
new file mode 100644
 1659   1440   
index 0000000..5860c8a
 1660         -
-- /dev/null
        1441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1661   1442   
@@ -0,0 +1,8 @@
        1443  +
GET
        1444  +
//
        1445  +
        1446  +
host:example.amazonaws.com
        1447  +
x-amz-date:20150830T123600Z
        1448  +
        1449  +
host;x-amz-date
        1450  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1662   1451   
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
 1663   1452   
new file mode 100644
 1664   1453   
index 0000000..8310471
 1665         -
-- /dev/null
        1454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1666   1455   
@@ -0,0 +1 @@
        1456  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1667   1457   
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
 1668   1458   
new file mode 100644
 1669   1459   
index 0000000..2a7afef
 1670         -
-- /dev/null
        1460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1671   1461   
@@ -0,0 +1,5 @@
        1462  +
GET // HTTP/1.1
        1463  +
Host:example.amazonaws.com
        1464  +
X-Amz-Date:20150830T123600Z
        1465  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1466  +
 1672   1467   
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
 1673   1468   
new file mode 100644
 1674   1469   
index 0000000..06059dd
 1675         -
-- /dev/null
        1470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1676   1471   
@@ -0,0 +1,4 @@
        1472  +
AWS4-HMAC-SHA256
        1473  +
20150830T123600Z
        1474  +
20150830/us-east-1/service/aws4_request
        1475  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1677   1476   
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
 1678   1477   
new file mode 100644
 1679   1478   
index 0000000..6d63aef
 1680         -
-- /dev/null
        1479  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1681   1480   
@@ -0,0 +1,7 @@
        1481  +
GET
        1482  +
//
        1483  +
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
        1484  +
host:example.amazonaws.com
        1485  +
        1486  +
host
        1487  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1682   1488   
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
 1683   1489   
new file mode 100644
 1684   1490   
index 0000000..e5b7b6c
 1685         -
-- /dev/null
        1491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1686   1492   
@@ -0,0 +1 @@
        1493  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1687   1494   
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
 1688   1495   
new file mode 100644
 1689   1496   
index 0000000..46fe3fd
 1690         -
-- /dev/null
        1497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1691   1498   
@@ -0,0 +1,3 @@
        1499  +
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
        1500  +
Host:example.amazonaws.com
        1501  +
 1692   1502   
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
 1693   1503   
new file mode 100644
 1694   1504   
index 0000000..ea79940
 1695         -
-- /dev/null
        1505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1696   1506   
@@ -0,0 +1,4 @@
        1507  +
AWS4-HMAC-SHA256
        1508  +
20150830T123600Z
        1509  +
20150830/us-east-1/service/aws4_request
        1510  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1697   1511   
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
 1698   1512   
similarity index 100%
 1699   1513   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1700   1514   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1701   1515   
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
 1702   1516   
new file mode 100644
 1703   1517   
index 0000000..0468d80
 1704         -
-- /dev/null
        1518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1705   1519   
@@ -0,0 +1,12 @@
        1520  +
{
        1521  +
    "credentials": {
        1522  +
        "access_key_id": "AKIDEXAMPLE",
        1523  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1524  +
    },
        1525  +
    "expiration_in_seconds": 3600,
        1526  +
    "normalize": true,
        1527  +
    "region": "us-east-1",
        1528  +
    "service": "service",
        1529  +
    "sign_body": false,
        1530  +
    "timestamp": "2015-08-30T12:36:00Z"
        1531  +
}
              \
 No newline at end of file
 1706   1532   
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
 1707   1533   
similarity index 100%
 1708   1534   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1709   1535   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1710   1536   
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
 1711   1537   
new file mode 100644
 1712   1538   
index 0000000..71c7bac
 1713         -
-- /dev/null
        1539  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1714   1540   
@@ -0,0 +1 @@
        1541  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1715   1542   
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
 1716   1543   
new file mode 100644
 1717   1544   
index 0000000..0add1f1
 1718         -
-- /dev/null
        1545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1719   1546   
@@ -0,0 +1,5 @@
        1547  +
GET //example// HTTP/1.1
        1548  +
Host:example.amazonaws.com
        1549  +
X-Amz-Date:20150830T123600Z
        1550  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1551  +
 1720   1552   
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
 1721   1553   
similarity index 100%
 1722   1554   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1723   1555   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1724   1556   
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
 1725   1557   
new file mode 100644
 1726   1558   
index 0000000..ce72510
 1727         -
-- /dev/null
        1559  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1728   1560   
@@ -0,0 +1,7 @@
        1561  +
GET
        1562  +
/example/
        1563  +
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
        1564  +
host:example.amazonaws.com
        1565  +
        1566  +
host
        1567  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1729   1568   
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
 1730   1569   
new file mode 100644
 1731   1570   
index 0000000..265f387
 1732         -
-- /dev/null
        1571  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1733   1572   
@@ -0,0 +1 @@
        1573  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1734   1574   
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
 1735   1575   
new file mode 100644
 1736   1576   
index 0000000..e1fcb2e
 1737         -
-- /dev/null
        1577  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1738   1578   
@@ -0,0 +1,3 @@
        1579  +
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
        1580  +
Host:example.amazonaws.com
        1581  +
 1739   1582   
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
 1740   1583   
new file mode 100644
 1741   1584   
index 0000000..a14de61
 1742         -
-- /dev/null
        1585  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1743   1586   
@@ -0,0 +1,4 @@
        1587  +
AWS4-HMAC-SHA256
        1588  +
20150830T123600Z
        1589  +
20150830/us-east-1/service/aws4_request
        1590  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1744   1591   
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
 1745   1592   
similarity index 100%
 1746   1593   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1747   1594   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1748   1595   
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
 1749   1596   
new file mode 100644
 1750   1597   
index 0000000..7bee5c7
 1751         -
-- /dev/null
        1598  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1752   1599   
@@ -0,0 +1,12 @@
        1600  +
{
        1601  +
    "credentials": {
        1602  +
        "access_key_id": "AKIDEXAMPLE",
        1603  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1604  +
    },
        1605  +
    "expiration_in_seconds": 3600,
        1606  +
    "normalize": false,
        1607  +
    "region": "us-east-1",
        1608  +
    "service": "service",
        1609  +
    "sign_body": false,
        1610  +
    "timestamp": "2015-08-30T12:36:00Z"
        1611  +
}
              \
 No newline at end of file
 1753   1612   
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
 1754   1613   
new file mode 100644
 1755   1614   
index 0000000..dfffaaf
 1756         -
-- /dev/null
        1615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1757   1616   
@@ -0,0 +1,8 @@
        1617  +
GET
        1618  +
//example//
        1619  +
        1620  +
host:example.amazonaws.com
        1621  +
x-amz-date:20150830T123600Z
        1622  +
        1623  +
host;x-amz-date
        1624  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1758   1625   
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
 1759   1626   
new file mode 100644
 1760   1627   
index 0000000..edbcc0d
 1761         -
-- /dev/null
        1628  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1762   1629   
@@ -0,0 +1 @@
        1630  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1763   1631   
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
 1764   1632   
new file mode 100644
 1765   1633   
index 0000000..4cc12dd
 1766         -
-- /dev/null
        1634  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 1767   1635   
@@ -0,0 +1,5 @@
        1636  +
GET //example// HTTP/1.1
        1637  +
Host:example.amazonaws.com
        1638  +
X-Amz-Date:20150830T123600Z
        1639  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1640  +
 1768   1641   
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
 1769   1642   
new file mode 100644
 1770   1643   
index 0000000..3eba390
 1771         -
-- /dev/null
        1644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 1772   1645   
@@ -0,0 +1,4 @@
        1646  +
AWS4-HMAC-SHA256
        1647  +
20150830T123600Z
        1648  +
20150830/us-east-1/service/aws4_request
        1649  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 1773   1650   
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
 1774   1651   
new file mode 100644
 1775   1652   
index 0000000..f7844e3
 1776         -
-- /dev/null
        1653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 1777   1654   
@@ -0,0 +1,7 @@
        1655  +
GET
        1656  +
//example//
        1657  +
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
        1658  +
host:example.amazonaws.com
        1659  +
        1660  +
host
        1661  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1778   1662   
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
 1779   1663   
new file mode 100644
 1780   1664   
index 0000000..a8d6b96
 1781         -
-- /dev/null
        1665  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 1782   1666   
@@ -0,0 +1 @@
        1667  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 1783   1668   
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
 1784   1669   
new file mode 100644
 1785   1670   
index 0000000..a8322c6
 1786         -
-- /dev/null
        1671  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 1787   1672   
@@ -0,0 +1,3 @@
        1673  +
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
        1674  +
Host:example.amazonaws.com
        1675  +
 1788   1676   
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
 1789   1677   
new file mode 100644
 1790   1678   
index 0000000..068724d
 1791         -
-- /dev/null
        1679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 1792   1680   
@@ -0,0 +1,4 @@
        1681  +
AWS4-HMAC-SHA256
        1682  +
20150830T123600Z
        1683  +
20150830/us-east-1/service/aws4_request
        1684  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 1793   1685   
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
 1794   1686   
similarity index 100%
 1795   1687   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 1796   1688   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 1797   1689   
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
 1798   1690   
new file mode 100644
 1799   1691   
index 0000000..0468d80
 1800         -
-- /dev/null
        1692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 1801   1693   
@@ -0,0 +1,12 @@
        1694  +
{
        1695  +
    "credentials": {
        1696  +
        "access_key_id": "AKIDEXAMPLE",
        1697  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1698  +
    },
        1699  +
    "expiration_in_seconds": 3600,
        1700  +
    "normalize": true,
        1701  +
    "region": "us-east-1",
        1702  +
    "service": "service",
        1703  +
    "sign_body": false,
        1704  +
    "timestamp": "2015-08-30T12:36:00Z"
        1705  +
}
              \
 No newline at end of file
 1802   1706   
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
 1803   1707   
similarity index 100%
 1804   1708   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 1805   1709   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 1806   1710   
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
 1807   1711   
new file mode 100644
 1808   1712   
index 0000000..f63892b
 1809         -
-- /dev/null
        1713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 1810   1714   
@@ -0,0 +1 @@
        1715  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1811   1716   
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
 1812   1717   
new file mode 100644
 1813   1718   
index 0000000..19cd5cb
 1814         -
-- /dev/null
        1719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 1815   1720   
@@ -0,0 +1,5 @@
        1721  +
GET /example space/ HTTP/1.1
        1722  +
Host:example.amazonaws.com
        1723  +
X-Amz-Date:20150830T123600Z
        1724  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1725  +
 1816   1726   
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
 1817   1727   
similarity index 100%
 1818   1728   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 1819   1729   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 1820   1730   
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
 1821   1731   
new file mode 100644
 1822   1732   
index 0000000..fa3d3e2
 1823         -
-- /dev/null
        1733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 1824   1734   
@@ -0,0 +1,7 @@
        1735  +
GET
        1736  +
/example%20space/
        1737  +
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
        1738  +
host:example.amazonaws.com
        1739  +
        1740  +
host
        1741  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1825   1742   
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
 1826   1743   
new file mode 100644
 1827   1744   
index 0000000..5b2e204
 1828         -
-- /dev/null
        1745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 1829   1746   
@@ -0,0 +1 @@
        1747  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1830   1748   
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
 1831   1749   
new file mode 100644
 1832   1750   
index 0000000..93ca1d0
 1833         -
-- /dev/null
        1751  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 1834   1752   
@@ -0,0 +1,3 @@
        1753  +
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
        1754  +
Host:example.amazonaws.com
        1755  +
 1835   1756   
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
 1836   1757   
new file mode 100644
 1837   1758   
index 0000000..b4cb789
 1838         -
-- /dev/null
        1759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 1839   1760   
@@ -0,0 +1,4 @@
        1761  +
AWS4-HMAC-SHA256
        1762  +
20150830T123600Z
        1763  +
20150830/us-east-1/service/aws4_request
        1764  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1840   1765   
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
 1841   1766   
new file mode 100644
 1842   1767   
index 0000000..860a277
 1843         -
-- /dev/null
        1768  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 1844   1769   
@@ -0,0 +1,2 @@
        1770  +
GET /example%20space/ HTTP/1.1
        1771  +
Host:example.amazonaws.com
 1845   1772   
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
 1846   1773   
new file mode 100644
 1847   1774   
index 0000000..7bee5c7
 1848         -
-- /dev/null
        1775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 1849   1776   
@@ -0,0 +1,12 @@
        1777  +
{
        1778  +
    "credentials": {
        1779  +
        "access_key_id": "AKIDEXAMPLE",
        1780  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1781  +
    },
        1782  +
    "expiration_in_seconds": 3600,
        1783  +
    "normalize": false,
        1784  +
    "region": "us-east-1",
        1785  +
    "service": "service",
        1786  +
    "sign_body": false,
        1787  +
    "timestamp": "2015-08-30T12:36:00Z"
        1788  +
}
              \
 No newline at end of file
 1850   1789   
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
 1851   1790   
similarity index 66%
 1852   1791   
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
 1853   1792   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1854   1793   
index 71dc981..124a709 100644
 1855         -
-- 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
        1794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1856   1795   
@@ -1,9 +1,8 @@
 1857         -
POST
 1858         -
/
        1796  +
GET
        1797  +
/example%20space/
 1859   1798   
 1860         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 1861   1799   
host:example.amazonaws.com
 1862   1800   
x-amz-date:20150830T123600Z
 1863   1801   
 1864   1802   
host;x-amz-date
 1865   1803   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1866   1804   
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
 1867   1805   
new file mode 100644
 1868   1806   
index 0000000..f63892b
 1869         -
-- /dev/null
        1807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 1870   1808   
@@ -0,0 +1 @@
        1809  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1871   1810   
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
 1872   1811   
new file mode 100644
 1873   1812   
index 0000000..19cd5cb
 1874         -
-- /dev/null
        1813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 1875   1814   
@@ -0,0 +1,5 @@
        1815  +
GET /example space/ HTTP/1.1
        1816  +
Host:example.amazonaws.com
        1817  +
X-Amz-Date:20150830T123600Z
        1818  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1819  +
 1876   1820   
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
 1877   1821   
new file mode 100644
 1878   1822   
index 0000000..a633f0c
 1879         -
-- /dev/null
        1823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 1880   1824   
@@ -0,0 +1,4 @@
        1825  +
AWS4-HMAC-SHA256
        1826  +
20150830T123600Z
        1827  +
20150830/us-east-1/service/aws4_request
        1828  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 1881   1829   
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
 1882   1830   
new file mode 100644
 1883   1831   
index 0000000..fa3d3e2
 1884         -
-- /dev/null
        1832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 1885   1833   
@@ -0,0 +1,7 @@
        1834  +
GET
        1835  +
/example%20space/
        1836  +
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
        1837  +
host:example.amazonaws.com
        1838  +
        1839  +
host
        1840  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1886   1841   
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
 1887   1842   
new file mode 100644
 1888   1843   
index 0000000..5b2e204
 1889         -
-- /dev/null
        1844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 1890   1845   
@@ -0,0 +1 @@
        1846  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1891   1847   
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
 1892   1848   
new file mode 100644
 1893   1849   
index 0000000..93ca1d0
 1894         -
-- /dev/null
        1850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 1895   1851   
@@ -0,0 +1,3 @@
        1852  +
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
        1853  +
Host:example.amazonaws.com
        1854  +
 1896   1855   
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
 1897   1856   
new file mode 100644
 1898   1857   
index 0000000..b4cb789
 1899         -
-- /dev/null
        1858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 1900   1859   
@@ -0,0 +1,4 @@
        1860  +
AWS4-HMAC-SHA256
        1861  +
20150830T123600Z
        1862  +
20150830/us-east-1/service/aws4_request
        1863  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1901   1864   
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
 1902   1865   
similarity index 67%
 1903   1866   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 1904   1867   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1905   1868   
index b7d5e8b..ab509ab 100644
 1906         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        1869  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 1907   1870   
@@ -1,3 +1,2 @@
 1908   1871   
GET /example space/ HTTP/1.1
 1909   1872   
Host:example.amazonaws.com
 1910         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1911   1873   
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
 1912   1874   
new file mode 100644
 1913   1875   
index 0000000..0468d80
 1914         -
-- /dev/null
        1876  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 1915   1877   
@@ -0,0 +1,12 @@
        1878  +
{
        1879  +
    "credentials": {
        1880  +
        "access_key_id": "AKIDEXAMPLE",
        1881  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1882  +
    },
        1883  +
    "expiration_in_seconds": 3600,
        1884  +
    "normalize": true,
        1885  +
    "region": "us-east-1",
        1886  +
    "service": "service",
        1887  +
    "sign_body": false,
        1888  +
    "timestamp": "2015-08-30T12:36:00Z"
        1889  +
}
              \
 No newline at end of file
 1916   1890   
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
 1917   1891   
similarity index 100%
 1918   1892   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 1919   1893   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 1920   1894   
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
 1921   1895   
new file mode 100644
 1922   1896   
index 0000000..e503354
 1923         -
-- /dev/null
        1897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 1924   1898   
@@ -0,0 +1 @@
        1899  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 1925   1900   
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
 1926   1901   
new file mode 100644
 1927   1902   
index 0000000..4367892
 1928         -
-- /dev/null
        1903  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 1929   1904   
@@ -0,0 +1,5 @@
        1905  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        1906  +
Host:example.amazonaws.com
        1907  +
X-Amz-Date:20150830T123600Z
        1908  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        1909  +
 1930   1910   
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
 1931   1911   
similarity index 100%
 1932   1912   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 1933   1913   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 1934   1914   
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
 1935   1915   
new file mode 100644
 1936   1916   
index 0000000..d7f0696
 1937         -
-- /dev/null
        1917  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 1938   1918   
@@ -0,0 +1,7 @@
        1919  +
GET
        1920  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        1921  +
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
        1922  +
host:example.amazonaws.com
        1923  +
        1924  +
host
        1925  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1939   1926   
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
 1940   1927   
new file mode 100644
 1941   1928   
index 0000000..509e972
 1942         -
-- /dev/null
        1929  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 1943   1930   
@@ -0,0 +1 @@
        1931  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 1944   1932   
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
 1945   1933   
new file mode 100644
 1946   1934   
index 0000000..79aad36
 1947         -
-- /dev/null
        1935  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 1948   1936   
@@ -0,0 +1,3 @@
        1937  +
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
        1938  +
Host:example.amazonaws.com
        1939  +
 1949   1940   
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
 1950   1941   
new file mode 100644
 1951   1942   
index 0000000..e8068b3
 1952         -
-- /dev/null
        1943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 1953   1944   
@@ -0,0 +1,4 @@
        1945  +
AWS4-HMAC-SHA256
        1946  +
20150830T123600Z
        1947  +
20150830/us-east-1/service/aws4_request
        1948  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 1954   1949   
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
 1955   1950   
similarity index 100%
 1956   1951   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 1957   1952   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 1958   1953   
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
 1959   1954   
new file mode 100644
 1960   1955   
index 0000000..0468d80
 1961         -
-- /dev/null
        1956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 1962   1957   
@@ -0,0 +1,12 @@
        1958  +
{
        1959  +
    "credentials": {
        1960  +
        "access_key_id": "AKIDEXAMPLE",
        1961  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1962  +
    },
        1963  +
    "expiration_in_seconds": 3600,
        1964  +
    "normalize": true,
        1965  +
    "region": "us-east-1",
        1966  +
    "service": "service",
        1967  +
    "sign_body": false,
        1968  +
    "timestamp": "2015-08-30T12:36:00Z"
        1969  +
}
              \
 No newline at end of file
 1963   1970   
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
 1964   1971   
similarity index 100%
 1965   1972   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 1966   1973   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 1967   1974   
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
 1968   1975   
new file mode 100644
 1969   1976   
index 0000000..9a13676
 1970         -
-- /dev/null
        1977  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 1971   1978   
@@ -0,0 +1 @@
        1979  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 1972   1980   
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
 1973   1981   
new file mode 100644
 1974   1982   
index 0000000..5aaf47c
 1975         -
-- /dev/null
        1983  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 1976   1984   
@@ -0,0 +1,5 @@
        1985  +
GET /ሴ HTTP/1.1
        1986  +
Host:example.amazonaws.com
        1987  +
X-Amz-Date:20150830T123600Z
        1988  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        1989  +
 1977   1990   
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
 1978   1991   
similarity index 100%
 1979   1992   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 1980   1993   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 1981   1994   
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
 1982   1995   
new file mode 100644
 1983   1996   
index 0000000..bdb77c9
 1984         -
-- /dev/null
        1997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 1985   1998   
@@ -0,0 +1,7 @@
        1999  +
GET
        2000  +
/%E1%88%B4
        2001  +
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
        2002  +
host:example.amazonaws.com
        2003  +
        2004  +
host
        2005  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1986   2006   
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
 1987   2007   
new file mode 100644
 1988   2008   
index 0000000..21342b3
 1989         -
-- /dev/null
        2009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 1990   2010   
@@ -0,0 +1 @@
        2011  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 1991   2012   
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
 1992   2013   
new file mode 100644
 1993   2014   
index 0000000..368c2ff
 1994         -
-- /dev/null
        2015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 1995   2016   
@@ -0,0 +1,3 @@
        2017  +
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
        2018  +
Host:example.amazonaws.com
        2019  +
 1996   2020   
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
 1997   2021   
new file mode 100644
 1998   2022   
index 0000000..56b8fbf
 1999         -
-- /dev/null
        2023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2000   2024   
@@ -0,0 +1,4 @@
        2025  +
AWS4-HMAC-SHA256
        2026  +
20150830T123600Z
        2027  +
20150830/us-east-1/service/aws4_request
        2028  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2001   2029   
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
 2002   2030   
similarity index 62%
 2003   2031   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2004   2032   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2005   2033   
index da4808d..9e273f6 100644
 2006         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2034  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2007   2035   
@@ -1,3 +1,2 @@
 2008   2036   
GET /ሴ HTTP/1.1
 2009   2037   
Host:example.amazonaws.com
 2010         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2011   2038   
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
 2012   2039   
new file mode 100644
 2013   2040   
index 0000000..0468d80
 2014         -
-- /dev/null
        2041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2015   2042   
@@ -0,0 +1,12 @@
        2043  +
{
        2044  +
    "credentials": {
        2045  +
        "access_key_id": "AKIDEXAMPLE",
        2046  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2047  +
    },
        2048  +
    "expiration_in_seconds": 3600,
        2049  +
    "normalize": true,
        2050  +
    "region": "us-east-1",
        2051  +
    "service": "service",
        2052  +
    "sign_body": false,
        2053  +
    "timestamp": "2015-08-30T12:36:00Z"
        2054  +
}
              \
 No newline at end of file
 2016   2055   
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
 2017   2056   
similarity index 100%
 2018   2057   
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
 2019   2058   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2020   2059   
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
 2021   2060   
new file mode 100644
 2022   2061   
index 0000000..d7f1c1c
 2023         -
-- /dev/null
        2062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2024   2063   
@@ -0,0 +1 @@
        2064  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2025   2065   
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
 2026   2066   
new file mode 100644
 2027   2067   
index 0000000..1c60790
 2028         -
-- /dev/null
        2068  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2029   2069   
@@ -0,0 +1,5 @@
        2070  +
GET /?Param1=value1 HTTP/1.1
        2071  +
Host:example.amazonaws.com
        2072  +
X-Amz-Date:20150830T123600Z
        2073  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2074  +
 2030   2075   
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
 2031   2076   
similarity index 100%
 2032   2077   
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
 2033   2078   
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
 2034   2079   
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
 2035   2080   
new file mode 100644
 2036   2081   
index 0000000..6a823ed
 2037         -
-- /dev/null
        2082  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2038   2083   
@@ -0,0 +1,7 @@
        2084  +
GET
        2085  +
/
        2086  +
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
        2087  +
host:example.amazonaws.com
        2088  +
        2089  +
host
        2090  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2039   2091   
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
 2040   2092   
new file mode 100644
 2041   2093   
index 0000000..8c77136
 2042         -
-- /dev/null
        2094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2043   2095   
@@ -0,0 +1 @@
        2096  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2044   2097   
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
 2045   2098   
new file mode 100644
 2046   2099   
index 0000000..2d337d8
 2047         -
-- /dev/null
        2100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2048   2101   
@@ -0,0 +1,3 @@
        2102  +
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
        2103  +
Host:example.amazonaws.com
        2104  +
 2049   2105   
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
 2050   2106   
new file mode 100644
 2051   2107   
index 0000000..191a484
 2052         -
-- /dev/null
        2108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2053   2109   
@@ -0,0 +1,4 @@
        2110  +
AWS4-HMAC-SHA256
        2111  +
20150830T123600Z
        2112  +
20150830/us-east-1/service/aws4_request
        2113  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2054   2114   
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
 2055   2115   
similarity index 100%
 2056   2116   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2057   2117   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2058   2118   
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
 2059   2119   
new file mode 100644
 2060   2120   
index 0000000..0468d80
 2061         -
-- /dev/null
        2121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2062   2122   
@@ -0,0 +1,12 @@
        2123  +
{
        2124  +
    "credentials": {
        2125  +
        "access_key_id": "AKIDEXAMPLE",
        2126  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2127  +
    },
        2128  +
    "expiration_in_seconds": 3600,
        2129  +
    "normalize": true,
        2130  +
    "region": "us-east-1",
        2131  +
    "service": "service",
        2132  +
    "sign_body": false,
        2133  +
    "timestamp": "2015-08-30T12:36:00Z"
        2134  +
}
              \
 No newline at end of file
 2063   2135   
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
 2064   2136   
new file mode 100644
 2065   2137   
index 0000000..0c8ba21
 2066         -
-- /dev/null
        2138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2067   2139   
@@ -0,0 +1,8 @@
        2140  +
GET
        2141  +
/
        2142  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2143  +
host:example.amazonaws.com
        2144  +
x-amz-date:20150830T123600Z
        2145  +
        2146  +
host;x-amz-date
        2147  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2068   2148   
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
 2069   2149   
new file mode 100644
 2070   2150   
index 0000000..9ab65ed
 2071         -
-- /dev/null
        2151  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2072   2152   
@@ -0,0 +1 @@
        2153  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2073   2154   
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
 2074   2155   
new file mode 100644
 2075   2156   
index 0000000..0bcdf98
 2076         -
-- /dev/null
        2157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2077   2158   
@@ -0,0 +1,5 @@
        2159  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2160  +
Host:example.amazonaws.com
        2161  +
X-Amz-Date:20150830T123600Z
        2162  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2163  +
 2078   2164   
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
 2079   2165   
new file mode 100644
 2080   2166   
index 0000000..bf674ad
 2081         -
-- /dev/null
        2167  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2082   2168   
@@ -0,0 +1,4 @@
        2169  +
AWS4-HMAC-SHA256
        2170  +
20150830T123600Z
        2171  +
20150830/us-east-1/service/aws4_request
        2172  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2083   2173   
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
 2084   2174   
new file mode 100644
 2085   2175   
index 0000000..3f590a4
 2086         -
-- /dev/null
        2176  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2087   2177   
@@ -0,0 +1,7 @@
        2178  +
GET
        2179  +
/
        2180  +
%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
        2181  +
host:example.amazonaws.com
        2182  +
        2183  +
host
        2184  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2088   2185   
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
 2089   2186   
new file mode 100644
 2090   2187   
index 0000000..e225eab
 2091         -
-- /dev/null
        2188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2092   2189   
@@ -0,0 +1 @@
        2190  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2093   2191   
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
 2094   2192   
new file mode 100644
 2095   2193   
index 0000000..6206719
 2096         -
-- /dev/null
        2194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2097   2195   
@@ -0,0 +1,3 @@
        2196  +
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
        2197  +
Host:example.amazonaws.com
        2198  +
 2098   2199   
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
 2099   2200   
new file mode 100644
 2100   2201   
index 0000000..81a4210
 2101         -
-- /dev/null
        2202  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2102   2203   
@@ -0,0 +1,4 @@
        2204  +
AWS4-HMAC-SHA256
        2205  +
20150830T123600Z
        2206  +
20150830/us-east-1/service/aws4_request
        2207  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2103   2208   
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
 2104   2209   
new file mode 100644
 2105   2210   
index 0000000..368c6e3
 2106         -
-- /dev/null
        2211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2107   2212   
@@ -0,0 +1,2 @@
        2213  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2214  +
Host:example.amazonaws.com
 2108   2215   
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
 2109   2216   
new file mode 100644
 2110   2217   
index 0000000..0468d80
 2111         -
-- /dev/null
        2218  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2112   2219   
@@ -0,0 +1,12 @@
        2220  +
{
        2221  +
    "credentials": {
        2222  +
        "access_key_id": "AKIDEXAMPLE",
        2223  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2224  +
    },
        2225  +
    "expiration_in_seconds": 3600,
        2226  +
    "normalize": true,
        2227  +
    "region": "us-east-1",
        2228  +
    "service": "service",
        2229  +
    "sign_body": false,
        2230  +
    "timestamp": "2015-08-30T12:36:00Z"
        2231  +
}
              \
 No newline at end of file
 2113   2232   
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
 2114   2233   
similarity index 100%
 2115   2234   
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
 2116   2235   
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
 2117   2236   
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
 2118   2237   
new file mode 100644
 2119   2238   
index 0000000..6a8cb9d
 2120         -
-- /dev/null
        2239  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2121   2240   
@@ -0,0 +1 @@
        2241  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2122   2242   
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
 2123   2243   
new file mode 100644
 2124   2244   
index 0000000..f78a9d2
 2125         -
-- /dev/null
        2245  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2126   2246   
@@ -0,0 +1,5 @@
        2247  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2248  +
Host:example.amazonaws.com
        2249  +
X-Amz-Date:20150830T123600Z
        2250  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2251  +
 2127   2252   
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
 2128   2253   
similarity index 100%
 2129   2254   
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
 2130   2255   
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
 2131   2256   
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
 2132   2257   
new file mode 100644
 2133   2258   
index 0000000..a6e1bc7
 2134         -
-- /dev/null
        2259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2135   2260   
@@ -0,0 +1,7 @@
        2261  +
GET
        2262  +
/
        2263  +
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
        2264  +
host:example.amazonaws.com
        2265  +
        2266  +
host
        2267  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2136   2268   
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
 2137   2269   
new file mode 100644
 2138   2270   
index 0000000..d6e6a88
 2139         -
-- /dev/null
        2271  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2140   2272   
@@ -0,0 +1 @@
        2273  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2141   2274   
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
 2142   2275   
new file mode 100644
 2143   2276   
index 0000000..538e2f0
 2144         -
-- /dev/null
        2277  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2145   2278   
@@ -0,0 +1,3 @@
        2279  +
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
        2280  +
Host:example.amazonaws.com
        2281  +
 2146   2282   
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
 2147   2283   
new file mode 100644
 2148   2284   
index 0000000..e696085
 2149         -
-- /dev/null
        2285  +
++ 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
 2150   2286   
@@ -0,0 +1,4 @@
        2287  +
AWS4-HMAC-SHA256
        2288  +
20150830T123600Z
        2289  +
20150830/us-east-1/service/aws4_request
        2290  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2151   2291   
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
 2152   2292   
similarity index 100%
 2153   2293   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2154   2294   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2155   2295   
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
 2156   2296   
new file mode 100644
 2157   2297   
index 0000000..0468d80
 2158         -
-- /dev/null
        2298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2159   2299   
@@ -0,0 +1,12 @@
        2300  +
{
        2301  +
    "credentials": {
        2302  +
        "access_key_id": "AKIDEXAMPLE",
        2303  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2304  +
    },
        2305  +
    "expiration_in_seconds": 3600,
        2306  +
    "normalize": true,
        2307  +
    "region": "us-east-1",
        2308  +
    "service": "service",
        2309  +
    "sign_body": false,
        2310  +
    "timestamp": "2015-08-30T12:36:00Z"
        2311  +
}
              \
 No newline at end of file
 2160   2312   
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
 2161   2313   
similarity index 100%
 2162   2314   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2163   2315   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2164   2316   
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
 2165   2317   
new file mode 100644
 2166   2318   
index 0000000..876a64b
 2167         -
-- /dev/null
        2319  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2168   2320   
@@ -0,0 +1 @@
        2321  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2169   2322   
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
 2170   2323   
similarity index 50%
 2171   2324   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2172   2325   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2173   2326   
index ba1ef40..9d0d993 100644
 2174         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2327  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2175   2328   
@@ -1,4 +1,5 @@
 2176   2329   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2177   2330   
Host:example.amazonaws.com
 2178   2331   
X-Amz-Date:20150830T123600Z
 2179         -
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
        2332  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2333  +
 2180   2334   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2181   2335   
similarity index 100%
 2182   2336   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2183   2337   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2184   2338   
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
 2185   2339   
new file mode 100644
 2186   2340   
index 0000000..a1bac59
 2187         -
-- /dev/null
        2341  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2188   2342   
@@ -0,0 +1,7 @@
        2343  +
GET
        2344  +
/
        2345  +
-._~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
        2346  +
host:example.amazonaws.com
        2347  +
        2348  +
host
        2349  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2189   2350   
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
 2190   2351   
new file mode 100644
 2191   2352   
index 0000000..41881e9
 2192         -
-- /dev/null
        2353  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2193   2354   
@@ -0,0 +1 @@
        2355  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2194   2356   
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
 2195   2357   
new file mode 100644
 2196   2358   
index 0000000..3179076
 2197         -
-- /dev/null
        2359  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2198   2360   
@@ -0,0 +1,3 @@
        2361  +
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
        2362  +
Host:example.amazonaws.com
        2363  +
 2199   2364   
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
 2200   2365   
new file mode 100644
 2201   2366   
index 0000000..6d675fc
 2202         -
-- /dev/null
        2367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2203   2368   
@@ -0,0 +1,4 @@
        2369  +
AWS4-HMAC-SHA256
        2370  +
20150830T123600Z
        2371  +
20150830/us-east-1/service/aws4_request
        2372  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2204   2373   
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
 2205   2374   
similarity index 100%
 2206   2375   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2207   2376   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2208   2377   
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
 2209   2378   
new file mode 100644
 2210   2379   
index 0000000..0468d80
 2211         -
-- /dev/null
        2380  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2212   2381   
@@ -0,0 +1,12 @@
        2382  +
{
        2383  +
    "credentials": {
        2384  +
        "access_key_id": "AKIDEXAMPLE",
        2385  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2386  +
    },
        2387  +
    "expiration_in_seconds": 3600,
        2388  +
    "normalize": true,
        2389  +
    "region": "us-east-1",
        2390  +
    "service": "service",
        2391  +
    "sign_body": false,
        2392  +
    "timestamp": "2015-08-30T12:36:00Z"
        2393  +
}
              \
 No newline at end of file
 2213   2394   
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
 2214   2395   
similarity index 100%
 2215   2396   
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
 2216   2397   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2217   2398   
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
 2218   2399   
new file mode 100644
 2219   2400   
index 0000000..87f295f
 2220         -
-- /dev/null
        2401  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2221   2402   
@@ -0,0 +1 @@
        2403  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2222   2404   
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
 2223   2405   
new file mode 100644
 2224   2406   
index 0000000..36b86e7
 2225         -
-- /dev/null
        2407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2226   2408   
@@ -0,0 +1,5 @@
        2409  +
GET / HTTP/1.1
        2410  +
Host:example.amazonaws.com
        2411  +
X-Amz-Date:20150830T123600Z
        2412  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2413  +
 2227   2414   
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
 2228   2415   
similarity index 100%
 2229   2416   
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
 2230   2417   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2231   2418   
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
 2232   2419   
new file mode 100644
 2233   2420   
index 0000000..fb2420d
 2234         -
-- /dev/null
        2421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2235   2422   
@@ -0,0 +1,7 @@
        2423  +
GET
        2424  +
/
        2425  +
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
        2426  +
host:example.amazonaws.com
        2427  +
        2428  +
host
        2429  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2236   2430   
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
 2237   2431   
new file mode 100644
 2238   2432   
index 0000000..da5c905
 2239         -
-- /dev/null
        2433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2240   2434   
@@ -0,0 +1 @@
        2435  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2241   2436   
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
 2242   2437   
new file mode 100644
 2243   2438   
index 0000000..eeb7a8f
 2244         -
-- /dev/null
        2439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2245   2440   
@@ -0,0 +1,3 @@
        2441  +
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
        2442  +
Host:example.amazonaws.com
        2443  +
 2246   2444   
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
 2247   2445   
new file mode 100644
 2248   2446   
index 0000000..d837e67
 2249         -
-- /dev/null
        2447  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2250   2448   
@@ -0,0 +1,4 @@
        2449  +
AWS4-HMAC-SHA256
        2450  +
20150830T123600Z
        2451  +
20150830/us-east-1/service/aws4_request
        2452  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2251   2453   
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
 2252   2454   
similarity index 100%
 2253   2455   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2254   2456   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2255   2457   
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
 2256   2458   
new file mode 100644
 2257   2459   
index 0000000..0468d80
 2258         -
-- /dev/null
        2460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2259   2461   
@@ -0,0 +1,12 @@
        2462  +
{
        2463  +
    "credentials": {
        2464  +
        "access_key_id": "AKIDEXAMPLE",
        2465  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2466  +
    },
        2467  +
    "expiration_in_seconds": 3600,
        2468  +
    "normalize": true,
        2469  +
    "region": "us-east-1",
        2470  +
    "service": "service",
        2471  +
    "sign_body": false,
        2472  +
    "timestamp": "2015-08-30T12:36:00Z"
        2473  +
}
              \
 No newline at end of file
 2260   2474   
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
 2261   2475   
similarity index 100%
 2262   2476   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2263   2477   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2264   2478   
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
 2265   2479   
new file mode 100644
 2266   2480   
index 0000000..19a2cc9
 2267         -
-- /dev/null
        2481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2268   2482   
@@ -0,0 +1 @@
        2483  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2269   2484   
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
 2270   2485   
new file mode 100644
 2271   2486   
index 0000000..acb13ee
 2272         -
-- /dev/null
        2487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2273   2488   
@@ -0,0 +1,5 @@
        2489  +
GET /?ሴ=bar HTTP/1.1
        2490  +
Host:example.amazonaws.com
        2491  +
X-Amz-Date:20150830T123600Z
        2492  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2493  +
 2274   2494   
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
 2275   2495   
similarity index 100%
 2276   2496   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2277   2497   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2278   2498   
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
 2279   2499   
new file mode 100644
 2280   2500   
index 0000000..92cee62
 2281         -
-- /dev/null
        2501  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2282   2502   
@@ -0,0 +1,7 @@
        2503  +
GET
        2504  +
/
        2505  +
%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
        2506  +
host:example.amazonaws.com
        2507  +
        2508  +
host
        2509  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2283   2510   
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
 2284   2511   
new file mode 100644
 2285   2512   
index 0000000..c9e49de
 2286         -
-- /dev/null
        2513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2287   2514   
@@ -0,0 +1 @@
        2515  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2288   2516   
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
 2289   2517   
new file mode 100644
 2290   2518   
index 0000000..8f4d8d0
 2291         -
-- /dev/null
        2519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2292   2520   
@@ -0,0 +1,3 @@
        2521  +
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
        2522  +
Host:example.amazonaws.com
        2523  +
 2293   2524   
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
 2294   2525   
new file mode 100644
 2295   2526   
index 0000000..a6181dc
 2296         -
-- /dev/null
        2527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2297   2528   
@@ -0,0 +1,4 @@
        2529  +
AWS4-HMAC-SHA256
        2530  +
20150830T123600Z
        2531  +
20150830/us-east-1/service/aws4_request
        2532  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2298   2533   
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
 2299   2534   
similarity index 64%
 2300   2535   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2301   2536   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2302   2537   
index cc2757e..aff333a 100644
 2303         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2304   2539   
@@ -1,3 +1,2 @@
 2305   2540   
GET /?ሴ=bar HTTP/1.1
 2306   2541   
Host:example.amazonaws.com
 2307         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2308   2542   
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
 2309   2543   
similarity index 99%
 2310   2544   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2311   2545   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2312   2546   
index a457c8a..a334e18 100644
 2313   2547   
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
 2314   2548   
new file mode 100644
 2315   2549   
index 0000000..ccacdeb
 2316         -
-- /dev/null
        2550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2317   2551   
@@ -0,0 +1,9 @@
        2552  +
GET
        2553  +
/
        2554  +
        2555  +
host:example.amazonaws.com
        2556  +
x-amz-date:20150830T123600Z
        2557  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2558  +
        2559  +
host;x-amz-date;x-amz-security-token
        2560  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2318   2561   
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
 2319   2562   
new file mode 100644
 2320   2563   
index 0000000..083e30d
 2321         -
-- /dev/null
        2564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2322   2565   
@@ -0,0 +1 @@
        2566  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2323   2567   
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
 2324   2568   
new file mode 100644
 2325   2569   
index 0000000..5287932
 2326         -
-- /dev/null
        2570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2327   2571   
@@ -0,0 +1,6 @@
        2572  +
GET / HTTP/1.1
        2573  +
Host:example.amazonaws.com
        2574  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2575  +
X-Amz-Date:20150830T123600Z
        2576  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2577  +
 2328   2578   
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
 2329   2579   
new file mode 100644
 2330   2580   
index 0000000..742b880
 2331         -
-- /dev/null
        2581  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2332   2582   
@@ -0,0 +1,4 @@
        2583  +
AWS4-HMAC-SHA256
        2584  +
20150830T123600Z
        2585  +
20150830/us-east-1/service/aws4_request
        2586  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2333   2587   
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
 2334   2588   
new file mode 100644
 2335   2589   
index 0000000..5e75179
 2336         -
-- /dev/null
        2590  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2337   2591   
@@ -0,0 +1,7 @@
        2592  +
GET
        2593  +
/
        2594  +
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
        2595  +
host:example.amazonaws.com
        2596  +
        2597  +
host
        2598  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2338   2599   
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
 2339   2600   
new file mode 100644
 2340   2601   
index 0000000..50b947f
 2341         -
-- /dev/null
        2602  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2342   2603   
@@ -0,0 +1 @@
        2604  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2343   2605   
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
 2344   2606   
new file mode 100644
 2345   2607   
index 0000000..aee910b
 2346         -
-- /dev/null
        2608  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2347   2609   
@@ -0,0 +1,3 @@
        2610  +
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
        2611  +
Host:example.amazonaws.com
        2612  +
 2348   2613   
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
 2349   2614   
new file mode 100644
 2350   2615   
index 0000000..04a6c17
 2351         -
-- /dev/null
        2616  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2352   2617   
@@ -0,0 +1,4 @@
        2618  +
AWS4-HMAC-SHA256
        2619  +
20150830T123600Z
        2620  +
20150830/us-east-1/service/aws4_request
        2621  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2353   2622   
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
 2354   2623   
similarity index 100%
 2355   2624   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2356   2625   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2357   2626   
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
 2358   2627   
new file mode 100644
 2359   2628   
index 0000000..0468d80
 2360         -
-- /dev/null
        2629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2361   2630   
@@ -0,0 +1,12 @@
        2631  +
{
        2632  +
    "credentials": {
        2633  +
        "access_key_id": "AKIDEXAMPLE",
        2634  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2635  +
    },
        2636  +
    "expiration_in_seconds": 3600,
        2637  +
    "normalize": true,
        2638  +
    "region": "us-east-1",
        2639  +
    "service": "service",
        2640  +
    "sign_body": false,
        2641  +
    "timestamp": "2015-08-30T12:36:00Z"
        2642  +
}
              \
 No newline at end of file
 2362   2643   
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
 2363   2644   
similarity index 100%
 2364   2645   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2365   2646   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2366   2647   
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
 2367   2648   
new file mode 100644
 2368   2649   
index 0000000..87f295f
 2369         -
-- /dev/null
        2650  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2370   2651   
@@ -0,0 +1 @@
        2652  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2371   2653   
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
 2372   2654   
new file mode 100644
 2373   2655   
index 0000000..36b86e7
 2374         -
-- /dev/null
        2656  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2375   2657   
@@ -0,0 +1,5 @@
        2658  +
GET / HTTP/1.1
        2659  +
Host:example.amazonaws.com
        2660  +
X-Amz-Date:20150830T123600Z
        2661  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2662  +
 2376   2663   
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
 2377   2664   
similarity index 100%
 2378   2665   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2379   2666   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2380   2667   
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
 2381   2668   
new file mode 100644
 2382   2669   
index 0000000..fb2420d
 2383         -
-- /dev/null
        2670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2384   2671   
@@ -0,0 +1,7 @@
        2672  +
GET
        2673  +
/
        2674  +
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
        2675  +
host:example.amazonaws.com
        2676  +
        2677  +
host
        2678  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2385   2679   
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
 2386   2680   
new file mode 100644
 2387   2681   
index 0000000..da5c905
 2388         -
-- /dev/null
        2682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2389   2683   
@@ -0,0 +1 @@
        2684  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2390   2685   
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
 2391   2686   
new file mode 100644
 2392   2687   
index 0000000..eeb7a8f
 2393         -
-- /dev/null
        2688  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2394   2689   
@@ -0,0 +1,3 @@
        2690  +
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
        2691  +
Host:example.amazonaws.com
        2692  +
 2395   2693   
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
 2396   2694   
new file mode 100644
 2397   2695   
index 0000000..d837e67
 2398         -
-- /dev/null
        2696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2399   2697   
@@ -0,0 +1,4 @@
        2698  +
AWS4-HMAC-SHA256
        2699  +
20150830T123600Z
        2700  +
20150830/us-east-1/service/aws4_request
        2701  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2400   2702   
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
 2401   2703   
similarity index 100%
 2402   2704   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2403   2705   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2404   2706   
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
 2405   2707   
new file mode 100644
 2406   2708   
index 0000000..0468d80
 2407         -
-- /dev/null
        2709  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2408   2710   
@@ -0,0 +1,12 @@
        2711  +
{
        2712  +
    "credentials": {
        2713  +
        "access_key_id": "AKIDEXAMPLE",
        2714  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2715  +
    },
        2716  +
    "expiration_in_seconds": 3600,
        2717  +
    "normalize": true,
        2718  +
    "region": "us-east-1",
        2719  +
    "service": "service",
        2720  +
    "sign_body": false,
        2721  +
    "timestamp": "2015-08-30T12:36:00Z"
        2722  +
}
              \
 No newline at end of file
 2409   2723   
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
 2410   2724   
similarity index 100%
 2411   2725   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2412   2726   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2413   2727   
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
 2414   2728   
new file mode 100644
 2415   2729   
index 0000000..629487f
 2416         -
-- /dev/null
        2730  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2417   2731   
@@ -0,0 +1 @@
        2732  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2418   2733   
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
 2419   2734   
new file mode 100644
 2420   2735   
index 0000000..0d99b1c
 2421         -
-- /dev/null
        2736  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2422   2737   
@@ -0,0 +1,5 @@
        2738  +
POST / HTTP/1.1
        2739  +
Host:example.amazonaws.com
        2740  +
X-Amz-Date:20150830T123600Z
        2741  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2742  +
 2423   2743   
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
 2424   2744   
similarity index 100%
 2425   2745   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2426   2746   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2427   2747   
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
 2428   2748   
new file mode 100644
 2429   2749   
index 0000000..d3341e7
 2430         -
-- /dev/null
        2750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2431   2751   
@@ -0,0 +1,7 @@
        2752  +
POST
        2753  +
/
        2754  +
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
        2755  +
host:example.amazonaws.com
        2756  +
        2757  +
host
        2758  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2432   2759   
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
 2433   2760   
new file mode 100644
 2434   2761   
index 0000000..79f7e0d
 2435         -
-- /dev/null
        2762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2436   2763   
@@ -0,0 +1 @@
        2764  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2437   2765   
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
 2438   2766   
new file mode 100644
 2439   2767   
index 0000000..94f1b21
 2440         -
-- /dev/null
        2768  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2441   2769   
@@ -0,0 +1,3 @@
        2770  +
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
        2771  +
Host:example.amazonaws.com
        2772  +
 2442   2773   
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
 2443   2774   
new file mode 100644
 2444   2775   
index 0000000..e8f335b
 2445         -
-- /dev/null
        2776  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2446   2777   
@@ -0,0 +1,4 @@
        2778  +
AWS4-HMAC-SHA256
        2779  +
20150830T123600Z
        2780  +
20150830/us-east-1/service/aws4_request
        2781  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2447   2782   
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
 2448   2783   
similarity index 100%
 2449   2784   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2450   2785   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2451   2786   
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
 2452   2787   
new file mode 100644
 2453   2788   
index 0000000..0468d80
 2454         -
-- /dev/null
        2789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2455   2790   
@@ -0,0 +1,12 @@
        2791  +
{
        2792  +
    "credentials": {
        2793  +
        "access_key_id": "AKIDEXAMPLE",
        2794  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2795  +
    },
        2796  +
    "expiration_in_seconds": 3600,
        2797  +
    "normalize": true,
        2798  +
    "region": "us-east-1",
        2799  +
    "service": "service",
        2800  +
    "sign_body": false,
        2801  +
    "timestamp": "2015-08-30T12:36:00Z"
        2802  +
}
              \
 No newline at end of file
 2456   2803   
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
 2457   2804   
similarity index 100%
 2458   2805   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2459   2806   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2460   2807   
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
 2461   2808   
new file mode 100644
 2462   2809   
index 0000000..e4e6428
 2463         -
-- /dev/null
        2810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2464   2811   
@@ -0,0 +1 @@
        2812  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2465   2813   
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
 2466   2814   
new file mode 100644
 2467   2815   
index 0000000..e3778f5
 2468         -
-- /dev/null
        2816  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2469   2817   
@@ -0,0 +1,6 @@
        2818  +
POST / HTTP/1.1
        2819  +
Host:example.amazonaws.com
        2820  +
My-Header1:value1
        2821  +
X-Amz-Date:20150830T123600Z
        2822  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2823  +
 2470   2824   
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
 2471   2825   
similarity index 100%
 2472   2826   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2473   2827   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2474   2828   
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
 2475   2829   
new file mode 100644
 2476   2830   
index 0000000..bd7c937
 2477         -
-- /dev/null
        2831  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2478   2832   
@@ -0,0 +1,8 @@
        2833  +
POST
        2834  +
/
        2835  +
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
        2836  +
host:example.amazonaws.com
        2837  +
my-header1:value1
        2838  +
        2839  +
host;my-header1
        2840  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2479   2841   
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
 2480   2842   
new file mode 100644
 2481   2843   
index 0000000..0416f13
 2482         -
-- /dev/null
        2844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2483   2845   
@@ -0,0 +1 @@
        2846  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2484   2847   
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
 2485   2848   
new file mode 100644
 2486   2849   
index 0000000..5e6522f
 2487         -
-- /dev/null
        2850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2488   2851   
@@ -0,0 +1,4 @@
        2852  +
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
        2853  +
Host:example.amazonaws.com
        2854  +
My-Header1:value1
        2855  +
 2489   2856   
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
 2490   2857   
new file mode 100644
 2491   2858   
index 0000000..d06d1df
 2492         -
-- /dev/null
        2859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2493   2860   
@@ -0,0 +1,4 @@
        2861  +
AWS4-HMAC-SHA256
        2862  +
20150830T123600Z
        2863  +
20150830/us-east-1/service/aws4_request
        2864  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2494   2865   
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
 2495   2866   
similarity index 100%
 2496   2867   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2497   2868   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2498   2869   
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
 2499   2870   
new file mode 100644
 2500   2871   
index 0000000..0468d80
 2501         -
-- /dev/null
        2872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2502   2873   
@@ -0,0 +1,12 @@
        2874  +
{
        2875  +
    "credentials": {
        2876  +
        "access_key_id": "AKIDEXAMPLE",
        2877  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2878  +
    },
        2879  +
    "expiration_in_seconds": 3600,
        2880  +
    "normalize": true,
        2881  +
    "region": "us-east-1",
        2882  +
    "service": "service",
        2883  +
    "sign_body": false,
        2884  +
    "timestamp": "2015-08-30T12:36:00Z"
        2885  +
}
              \
 No newline at end of file
 2503   2886   
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
 2504   2887   
similarity index 100%
 2505   2888   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2506   2889   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2507   2890   
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
 2508   2891   
new file mode 100644
 2509   2892   
index 0000000..bb3809c
 2510         -
-- /dev/null
        2893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2511   2894   
@@ -0,0 +1 @@
        2895  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2512   2896   
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
 2513   2897   
new file mode 100644
 2514   2898   
index 0000000..10f6761
 2515         -
-- /dev/null
        2899  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2516   2900   
@@ -0,0 +1,6 @@
        2901  +
POST / HTTP/1.1
        2902  +
Host:example.amazonaws.com
        2903  +
My-Header1:VALUE1
        2904  +
X-Amz-Date:20150830T123600Z
        2905  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        2906  +
 2517   2907   
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
 2518   2908   
similarity index 100%
 2519   2909   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2520   2910   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2521   2911   
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
 2522   2912   
new file mode 100644
 2523   2913   
index 0000000..f84856f
 2524         -
-- /dev/null
        2914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2525   2915   
@@ -0,0 +1,8 @@
        2916  +
POST
        2917  +
/
        2918  +
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
        2919  +
host:example.amazonaws.com
        2920  +
my-header1:VALUE1
        2921  +
        2922  +
host;my-header1
        2923  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2526   2924   
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
 2527   2925   
new file mode 100644
 2528   2926   
index 0000000..a9d3cac
 2529         -
-- /dev/null
        2927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2530   2928   
@@ -0,0 +1 @@
        2929  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2531   2930   
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
 2532   2931   
new file mode 100644
 2533   2932   
index 0000000..cf96c7c
 2534         -
-- /dev/null
        2933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2535   2934   
@@ -0,0 +1,4 @@
        2935  +
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
        2936  +
Host:example.amazonaws.com
        2937  +
My-Header1:VALUE1
        2938  +
 2536   2939   
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
 2537   2940   
new file mode 100644
 2538   2941   
index 0000000..47ef566
 2539         -
-- /dev/null
        2942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2540   2943   
@@ -0,0 +1,4 @@
        2944  +
AWS4-HMAC-SHA256
        2945  +
20150830T123600Z
        2946  +
20150830/us-east-1/service/aws4_request
        2947  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2541   2948   
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
 2542   2949   
similarity index 100%
 2543   2950   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2544   2951   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2545   2952   
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
 2546   2953   
similarity index 100%
 2547   2954   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2548   2955   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2549   2956   
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
 2550   2957   
similarity index 100%
 2551   2958   
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
 2552   2959   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2553   2960   
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
 2554   2961   
new file mode 100644
 2555   2962   
index 0000000..629487f
 2556         -
-- /dev/null
        2963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2557   2964   
@@ -0,0 +1 @@
        2965  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2558   2966   
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
 2559   2967   
similarity index 67%
 2560   2968   
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
 2561   2969   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2562   2970   
index 291ed07..f96ff9e 100644
 2563         -
-- 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
        2971  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2564   2972   
@@ -1,5 +1,6 @@
 2565   2973   
POST / HTTP/1.1
 2566   2974   
Host:example.amazonaws.com
 2567         -
X-Amz-Date:20150830T123600Z
 2568   2975   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2569         -
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
        2976  +
X-Amz-Date:20150830T123600Z
        2977  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2978  +
 2570   2979   
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
 2571   2980   
similarity index 100%
 2572   2981   
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
 2573   2982   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2574   2983   
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
 2575   2984   
new file mode 100644
 2576   2985   
index 0000000..d3341e7
 2577         -
-- /dev/null
        2986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2578   2987   
@@ -0,0 +1,7 @@
        2988  +
POST
        2989  +
/
        2990  +
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
        2991  +
host:example.amazonaws.com
        2992  +
        2993  +
host
        2994  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2579   2995   
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
 2580   2996   
new file mode 100644
 2581   2997   
index 0000000..79f7e0d
 2582         -
-- /dev/null
        2998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2583   2999   
@@ -0,0 +1 @@
        3000  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2584   3001   
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
 2585   3002   
new file mode 100644
 2586   3003   
index 0000000..4983268
 2587         -
-- /dev/null
        3004  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2588   3005   
@@ -0,0 +1,3 @@
        3006  +
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
        3007  +
Host:example.amazonaws.com
        3008  +
 2589   3009   
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
 2590   3010   
new file mode 100644
 2591   3011   
index 0000000..e8f335b
 2592         -
-- /dev/null
        3012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2593   3013   
@@ -0,0 +1,4 @@
        3014  +
AWS4-HMAC-SHA256
        3015  +
20150830T123600Z
        3016  +
20150830/us-east-1/service/aws4_request
        3017  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2594   3018   
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
 2595   3019   
similarity index 100%
 2596   3020   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2597   3021   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2598   3022   
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
 2599   3023   
similarity index 100%
 2600   3024   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2601   3025   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2602   3026   
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
 2603   3027   
similarity index 100%
 2604   3028   
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
 2605   3029   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2606   3030   
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
 2607   3031   
new file mode 100644
 2608   3032   
index 0000000..85a7c29
 2609         -
-- /dev/null
        3033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2610   3034   
@@ -0,0 +1 @@
        3035  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2611   3036   
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
 2612   3037   
similarity index 65%
 2613   3038   
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
 2614   3039   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2615   3040   
index 37b2f04..4d0b143 100644
 2616         -
-- 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
        3041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2617   3042   
@@ -1,5 +1,6 @@
 2618   3043   
POST / HTTP/1.1
 2619   3044   
Host:example.amazonaws.com
 2620         -
X-Amz-Date:20150830T123600Z
 2621   3045   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2622         -
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
        3046  +
X-Amz-Date:20150830T123600Z
        3047  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3048  +
 2623   3049   
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
 2624   3050   
similarity index 100%
 2625   3051   
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
 2626   3052   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2627   3053   
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
 2628   3054   
new file mode 100644
 2629   3055   
index 0000000..57a7bc3
 2630         -
-- /dev/null
        3056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2631   3057   
@@ -0,0 +1,7 @@
        3058  +
POST
        3059  +
/
        3060  +
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
        3061  +
host:example.amazonaws.com
        3062  +
        3063  +
host
        3064  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2632   3065   
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
 2633   3066   
new file mode 100644
 2634   3067   
index 0000000..eb905d2
 2635         -
-- /dev/null
        3068  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2636   3069   
@@ -0,0 +1 @@
        3070  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2637   3071   
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
 2638   3072   
new file mode 100644
 2639   3073   
index 0000000..1d80ec0
 2640         -
-- /dev/null
        3074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2641   3075   
@@ -0,0 +1,3 @@
        3076  +
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
        3077  +
Host:example.amazonaws.com
        3078  +
 2642   3079   
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
 2643   3080   
new file mode 100644
 2644   3081   
index 0000000..bd0239a
 2645         -
-- /dev/null
        3082  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2646   3083   
@@ -0,0 +1,4 @@
        3084  +
AWS4-HMAC-SHA256
        3085  +
20150830T123600Z
        3086  +
20150830/us-east-1/service/aws4_request
        3087  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2647   3088   
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
 2648   3089   
similarity index 100%
 2649   3090   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2650   3091   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2651   3092   
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
 2652   3093   
new file mode 100644
 2653   3094   
index 0000000..0468d80
 2654         -
-- /dev/null
        3095  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2655   3096   
@@ -0,0 +1,12 @@
        3097  +
{
        3098  +
    "credentials": {
        3099  +
        "access_key_id": "AKIDEXAMPLE",
        3100  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3101  +
    },
        3102  +
    "expiration_in_seconds": 3600,
        3103  +
    "normalize": true,
        3104  +
    "region": "us-east-1",
        3105  +
    "service": "service",
        3106  +
    "sign_body": false,
        3107  +
    "timestamp": "2015-08-30T12:36:00Z"
        3108  +
}
              \
 No newline at end of file
 2656   3109   
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
 2657   3110   
similarity index 100%
 2658   3111   
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
 2659   3112   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2660   3113   
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
 2661   3114   
new file mode 100644
 2662   3115   
index 0000000..80ed433
 2663         -
-- /dev/null
        3116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2664   3117   
@@ -0,0 +1 @@
        3118  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2665   3119   
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
 2666   3120   
new file mode 100644
 2667   3121   
index 0000000..4e614f8
 2668         -
-- /dev/null
        3122  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2669   3123   
@@ -0,0 +1,5 @@
        3124  +
POST /?Param1=value1 HTTP/1.1
        3125  +
Host:example.amazonaws.com
        3126  +
X-Amz-Date:20150830T123600Z
        3127  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3128  +
 2670   3129   
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
 2671   3130   
similarity index 100%
 2672   3131   
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
 2673   3132   
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
 2674   3133   
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
 2675   3134   
new file mode 100644
 2676   3135   
index 0000000..be66403
 2677         -
-- /dev/null
        3136  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2678   3137   
@@ -0,0 +1,7 @@
        3138  +
POST
        3139  +
/
        3140  +
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
        3141  +
host:example.amazonaws.com
        3142  +
        3143  +
host
        3144  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2679   3145   
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
 2680   3146   
new file mode 100644
 2681   3147   
index 0000000..20fd32b
 2682         -
-- /dev/null
        3148  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2683   3149   
@@ -0,0 +1 @@
        3150  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2684   3151   
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
 2685   3152   
new file mode 100644
 2686   3153   
index 0000000..d1148d0
 2687         -
-- /dev/null
        3154  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2688   3155   
@@ -0,0 +1,3 @@
        3156  +
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
        3157  +
Host:example.amazonaws.com
        3158  +
 2689   3159   
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
 2690   3160   
new file mode 100644
 2691   3161   
index 0000000..1a77103
 2692         -
-- /dev/null
        3162  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2693   3163   
@@ -0,0 +1,4 @@
        3164  +
AWS4-HMAC-SHA256
        3165  +
20150830T123600Z
        3166  +
20150830/us-east-1/service/aws4_request
        3167  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2694   3168   
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
 2695   3169   
similarity index 100%
 2696   3170   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2697   3171   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2698   3172   
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
 2699   3173   
new file mode 100644
 2700   3174   
index 0000000..0468d80
 2701         -
-- /dev/null
        3175  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2702   3176   
@@ -0,0 +1,12 @@
        3177  +
{
        3178  +
    "credentials": {
        3179  +
        "access_key_id": "AKIDEXAMPLE",
        3180  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3181  +
    },
        3182  +
    "expiration_in_seconds": 3600,
        3183  +
    "normalize": true,
        3184  +
    "region": "us-east-1",
        3185  +
    "service": "service",
        3186  +
    "sign_body": false,
        3187  +
    "timestamp": "2015-08-30T12:36:00Z"
        3188  +
}
              \
 No newline at end of file
 2703   3189   
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
 2704   3190   
similarity index 100%
 2705   3191   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2706   3192   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2707   3193   
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
 2708   3194   
new file mode 100644
 2709   3195   
index 0000000..80ed433
 2710         -
-- /dev/null
        3196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2711   3197   
@@ -0,0 +1 @@
        3198  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2712   3199   
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
 2713   3200   
new file mode 100644
 2714   3201   
index 0000000..4e614f8
 2715         -
-- /dev/null
        3202  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2716   3203   
@@ -0,0 +1,5 @@
        3204  +
POST /?Param1=value1 HTTP/1.1
        3205  +
Host:example.amazonaws.com
        3206  +
X-Amz-Date:20150830T123600Z
        3207  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3208  +
 2717   3209   
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
 2718   3210   
similarity index 100%
 2719   3211   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2720   3212   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2721   3213   
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
 2722   3214   
new file mode 100644
 2723   3215   
index 0000000..be66403
 2724         -
-- /dev/null
        3216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2725   3217   
@@ -0,0 +1,7 @@
        3218  +
POST
        3219  +
/
        3220  +
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
        3221  +
host:example.amazonaws.com
        3222  +
        3223  +
host
        3224  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2726   3225   
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
 2727   3226   
new file mode 100644
 2728   3227   
index 0000000..20fd32b
 2729         -
-- /dev/null
        3228  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2730   3229   
@@ -0,0 +1 @@
        3230  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2731   3231   
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
 2732   3232   
new file mode 100644
 2733   3233   
index 0000000..d1148d0
 2734         -
-- /dev/null
        3234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2735   3235   
@@ -0,0 +1,3 @@
        3236  +
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
        3237  +
Host:example.amazonaws.com
        3238  +
 2736   3239   
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
 2737   3240   
new file mode 100644
 2738   3241   
index 0000000..1a77103
 2739         -
-- /dev/null
        3242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2740   3243   
@@ -0,0 +1,4 @@
        3244  +
AWS4-HMAC-SHA256
        3245  +
20150830T123600Z
        3246  +
20150830/us-east-1/service/aws4_request
        3247  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2741   3248   
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
 2742   3249   
similarity index 100%
 2743   3250   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2744   3251   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2745   3252   
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
 2746   3253   
new file mode 100644
 2747   3254   
index 0000000..0468d80
 2748         -
-- /dev/null
        3255  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2749   3256   
@@ -0,0 +1,12 @@
        3257  +
{
        3258  +
    "credentials": {
        3259  +
        "access_key_id": "AKIDEXAMPLE",
        3260  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3261  +
    },
        3262  +
    "expiration_in_seconds": 3600,
        3263  +
    "normalize": true,
        3264  +
    "region": "us-east-1",
        3265  +
    "service": "service",
        3266  +
    "sign_body": false,
        3267  +
    "timestamp": "2015-08-30T12:36:00Z"
        3268  +
}
              \
 No newline at end of file
 2750   3269   
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
 2751   3270   
similarity index 100%
 2752   3271   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2753   3272   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2754   3273   
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
 2755   3274   
new file mode 100644
 2756   3275   
index 0000000..629487f
 2757         -
-- /dev/null
        3276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2758   3277   
@@ -0,0 +1 @@
        3278  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2759   3279   
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
 2760   3280   
new file mode 100644
 2761   3281   
index 0000000..0d99b1c
 2762         -
-- /dev/null
        3282  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2763   3283   
@@ -0,0 +1,5 @@
        3284  +
POST / HTTP/1.1
        3285  +
Host:example.amazonaws.com
        3286  +
X-Amz-Date:20150830T123600Z
        3287  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3288  +
 2764   3289   
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
 2765   3290   
similarity index 100%
 2766   3291   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 2767   3292   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 2768   3293   
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
 2769   3294   
new file mode 100644
 2770   3295   
index 0000000..d3341e7
 2771         -
-- /dev/null
        3296  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 2772   3297   
@@ -0,0 +1,7 @@
        3298  +
POST
        3299  +
/
        3300  +
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
        3301  +
host:example.amazonaws.com
        3302  +
        3303  +
host
        3304  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2773   3305   
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
 2774   3306   
new file mode 100644
 2775   3307   
index 0000000..79f7e0d
 2776         -
-- /dev/null
        3308  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 2777   3309   
@@ -0,0 +1 @@
        3310  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2778   3311   
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
 2779   3312   
new file mode 100644
 2780   3313   
index 0000000..94f1b21
 2781         -
-- /dev/null
        3314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 2782   3315   
@@ -0,0 +1,3 @@
        3316  +
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
        3317  +
Host:example.amazonaws.com
        3318  +
 2783   3319   
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
 2784   3320   
new file mode 100644
 2785   3321   
index 0000000..e8f335b
 2786         -
-- /dev/null
        3322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 2787   3323   
@@ -0,0 +1,4 @@
        3324  +
AWS4-HMAC-SHA256
        3325  +
20150830T123600Z
        3326  +
20150830/us-east-1/service/aws4_request
        3327  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2788   3328   
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
 2789   3329   
similarity index 100%
 2790   3330   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 2791   3331   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 2792   3332   
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
 2793   3333   
similarity index 99%
 2794   3334   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 2795   3335   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2796   3336   
index fc4bce6..0db1df1 100644
 2797   3337   
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
 2798   3338   
new file mode 100644
 2799   3339   
index 0000000..c218fdf
 2800         -
-- /dev/null
        3340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 2801   3341   
@@ -0,0 +1,11 @@
        3342  +
POST
        3343  +
/
        3344  +
        3345  +
content-length:13
        3346  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3347  +
host:example.amazonaws.com
        3348  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3349  +
x-amz-date:20150830T123600Z
        3350  +
        3351  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3352  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2802   3353   
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
 2803   3354   
new file mode 100644
 2804   3355   
index 0000000..836aa8b
 2805         -
-- /dev/null
        3356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 2806   3357   
@@ -0,0 +1 @@
        3358  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 2807   3359   
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
 2808   3360   
new file mode 100644
 2809   3361   
index 0000000..9262d53
 2810         -
-- /dev/null
        3362  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 2811   3363   
@@ -0,0 +1,9 @@
        3364  +
POST / HTTP/1.1
        3365  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3366  +
Host:example.amazonaws.com
        3367  +
Content-Length:13
        3368  +
X-Amz-Date:20150830T123600Z
        3369  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3370  +
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
        3371  +
        3372  +
Param1=value1
              \
 No newline at end of file
 2812   3373   
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
 2813   3374   
new file mode 100644
 2814   3375   
index 0000000..ddbdccc
 2815         -
-- /dev/null
        3376  +
++ 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
 2816   3377   
@@ -0,0 +1,4 @@
        3378  +
AWS4-HMAC-SHA256
        3379  +
20150830T123600Z
        3380  +
20150830/us-east-1/service/aws4_request
        3381  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 2817   3382   
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
 2818   3383   
new file mode 100644
 2819   3384   
index 0000000..596a579
 2820         -
-- /dev/null
        3385  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 2821   3386   
@@ -0,0 +1,9 @@
        3387  +
POST
        3388  +
/
        3389  +
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
        3390  +
content-length:13
        3391  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3392  +
host:example.amazonaws.com
        3393  +
        3394  +
content-length;content-type;host
        3395  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2822   3396   
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
 2823   3397   
new file mode 100644
 2824   3398   
index 0000000..bc85cd8
 2825         -
-- /dev/null
        3399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 2826   3400   
@@ -0,0 +1 @@
        3401  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 2827   3402   
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
 2828   3403   
new file mode 100644
 2829   3404   
index 0000000..16b59e5
 2830         -
-- /dev/null
        3405  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 2831   3406   
@@ -0,0 +1,6 @@
        3407  +
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
        3408  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3409  +
Host:example.amazonaws.com
        3410  +
Content-Length:13
        3411  +
        3412  +
Param1=value1
              \
 No newline at end of file
 2832   3413   
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
 2833   3414   
new file mode 100644
 2834   3415   
index 0000000..50074af
 2835         -
-- /dev/null
        3416  +
++ 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
 2836   3417   
@@ -0,0 +1,4 @@
        3418  +
AWS4-HMAC-SHA256
        3419  +
20150830T123600Z
        3420  +
20150830/us-east-1/service/aws4_request
        3421  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 2837   3422   
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
 2838   3423   
similarity index 89%
 2839   3424   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 2840   3425   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2841   3426   
index b711c25..8289eaa 100644
 2842   3427   
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
 2843   3428   
similarity index 99%
 2844   3429   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 2845   3430   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 2846   3431   
index fc4bce6..0db1df1 100644
 2847   3432   
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
 2848   3433   
new file mode 100644
 2849   3434   
index 0000000..4d116a5
 2850         -
-- /dev/null
        3435  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 2851   3436   
@@ -0,0 +1,11 @@
        3437  +
POST
        3438  +
/
        3439  +
        3440  +
content-length:13
        3441  +
content-type:application/x-www-form-urlencoded
        3442  +
host:example.amazonaws.com
        3443  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3444  +
x-amz-date:20150830T123600Z
        3445  +
        3446  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3447  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2852   3448   
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
 2853   3449   
new file mode 100644
 2854   3450   
index 0000000..0d2ac37
 2855         -
-- /dev/null
        3451  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 2856   3452   
@@ -0,0 +1 @@
        3453  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 2857   3454   
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
 2858   3455   
new file mode 100644
 2859   3456   
index 0000000..bd5e49c
 2860         -
-- /dev/null
        3457  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 2861   3458   
@@ -0,0 +1,9 @@
        3459  +
POST / HTTP/1.1
        3460  +
Content-Type:application/x-www-form-urlencoded
        3461  +
Host:example.amazonaws.com
        3462  +
Content-Length:13
        3463  +
X-Amz-Date:20150830T123600Z
        3464  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3465  +
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
        3466  +
        3467  +
Param1=value1
              \
 No newline at end of file
 2862   3468   
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
 2863   3469   
new file mode 100644
 2864   3470   
index 0000000..f1c599c
 2865         -
-- /dev/null
        3471  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 2866   3472   
@@ -0,0 +1,4 @@
        3473  +
AWS4-HMAC-SHA256
        3474  +
20150830T123600Z
        3475  +
20150830/us-east-1/service/aws4_request
        3476  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 2867   3477   
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
 2868   3478   
new file mode 100644
 2869   3479   
index 0000000..1fc1bb7
 2870         -
-- /dev/null
        3480  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 2871   3481   
@@ -0,0 +1,9 @@
        3482  +
POST
        3483  +
/
        3484  +
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
        3485  +
content-length:13
        3486  +
content-type:application/x-www-form-urlencoded
        3487  +
host:example.amazonaws.com
        3488  +
        3489  +
content-length;content-type;host
        3490  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2872   3491   
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
 2873   3492   
new file mode 100644
 2874   3493   
index 0000000..98c91b3
 2875         -
-- /dev/null
        3494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 2876   3495   
@@ -0,0 +1 @@
        3496  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 2877   3497   
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
 2878   3498   
new file mode 100644
 2879   3499   
index 0000000..055cd7a
 2880         -
-- /dev/null
        3500  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 2881   3501   
@@ -0,0 +1,6 @@
        3502  +
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
        3503  +
Content-Type:application/x-www-form-urlencoded
        3504  +
Host:example.amazonaws.com
        3505  +
Content-Length:13
        3506  +
        3507  +
Param1=value1
              \
 No newline at end of file
 2882   3508   
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
 2883   3509   
new file mode 100644
 2884   3510   
index 0000000..db7fc27
 2885         -
-- /dev/null
        3511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 2886   3512   
@@ -0,0 +1,4 @@
        3513  +
AWS4-HMAC-SHA256
        3514  +
20150830T123600Z
        3515  +
20150830/us-east-1/service/aws4_request
        3516  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 2887   3517   
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
 2888   3518   
similarity index 88%
 2889   3519   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 2890   3520   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 2891   3521   
index 0091102..760b2d3 100644
 2892   3522   
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
 2893   3523   
new file mode 100644
 2894   3524   
index 0000000..0468d80
 2895         -
-- /dev/null
        3525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 2896   3526   
@@ -0,0 +1,12 @@
        3527  +
{
        3528  +
    "credentials": {
        3529  +
        "access_key_id": "AKIDEXAMPLE",
        3530  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3531  +
    },
        3532  +
    "expiration_in_seconds": 3600,
        3533  +
    "normalize": true,
        3534  +
    "region": "us-east-1",
        3535  +
    "service": "service",
        3536  +
    "sign_body": false,
        3537  +
    "timestamp": "2015-08-30T12:36:00Z"
        3538  +
}
              \
 No newline at end of file
 2897   3539   
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
 2898   3540   
similarity index 99%
 2899   3541   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 2900   3542   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 2901   3543   
index ccb5f43..1bc448e 100644
 2902   3544   
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
 2903   3545   
new file mode 100644
 2904   3546   
index 0000000..489c182
 2905         -
-- /dev/null
        3547  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 2906   3548   
@@ -0,0 +1 @@
        3549  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 2907   3550   
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
 2908   3551   
new file mode 100644
 2909   3552   
index 0000000..e1b8dbf
 2910         -
-- /dev/null
        3553  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 2911   3554   
@@ -0,0 +1,9 @@
        3555  +
GET / HTTP/1.1
        3556  +
Host:example.amazonaws.com
        3557  +
My-Header1:value2
        3558  +
My-Header1:value2
        3559  +
My-Header1:value1
        3560  +
X-Amz-Date:20150830T123600Z
        3561  +
X-Amz-Region-Set:us-east-1
        3562  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3563  +
 2912   3564   
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
 2913   3565   
similarity index 99%
 2914   3566   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 2915   3567   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 2916   3568   
index 8783461..bfc4619 100644
 2917   3569   
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
 2918   3570   
new file mode 100644
 2919   3571   
index 0000000..379dcb2
 2920         -
-- /dev/null
        3572  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 2921   3573   
@@ -0,0 +1,4 @@
        3574  +
{
        3575  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3576  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3577  +
}
 2922   3578   
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
 2923   3579   
similarity index 99%
 2924   3580   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 2925   3581   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 2926   3582   
index 9561297..c05c3f5 100644
 2927   3583   
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
 2928   3584   
new file mode 100644
 2929   3585   
index 0000000..de9a4c3
 2930         -
-- /dev/null
        3586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 2931   3587   
@@ -0,0 +1 @@
        3588  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 2932   3589   
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
 2933   3590   
new file mode 100644
 2934   3591   
index 0000000..6c6b8c4
 2935         -
-- /dev/null
        3592  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 2936   3593   
@@ -0,0 +1,6 @@
        3594  +
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
        3595  +
Host:example.amazonaws.com
        3596  +
My-Header1:value2
        3597  +
My-Header1:value2
        3598  +
My-Header1:value1
        3599  +
 2937   3600   
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
 2938   3601   
similarity index 99%
 2939   3602   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 2940   3603   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 2941   3604   
index 3140f6f..4eef106 100644
 2942   3605   
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
 2943   3606   
similarity index 78%
 2944   3607   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 2945   3608   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 2946   3609   
index 08a0364..40455ce 100644
 2947         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 2948   3611   
@@ -1,6 +1,5 @@
 2949   3612   
GET / HTTP/1.1
 2950   3613   
Host:example.amazonaws.com
 2951   3614   
My-Header1:value2
 2952   3615   
My-Header1:value2
 2953   3616   
My-Header1:value1
 2954         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2955   3617   
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
 2956   3618   
new file mode 100644
 2957   3619   
index 0000000..0468d80
 2958         -
-- /dev/null
        3620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 2959   3621   
@@ -0,0 +1,12 @@
        3622  +
{
        3623  +
    "credentials": {
        3624  +
        "access_key_id": "AKIDEXAMPLE",
        3625  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3626  +
    },
        3627  +
    "expiration_in_seconds": 3600,
        3628  +
    "normalize": true,
        3629  +
    "region": "us-east-1",
        3630  +
    "service": "service",
        3631  +
    "sign_body": false,
        3632  +
    "timestamp": "2015-08-30T12:36:00Z"
        3633  +
}
              \
 No newline at end of file
 2960   3634   
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
 2961   3635   
new file mode 100644
 2962   3636   
index 0000000..69526cd
 2963         -
-- /dev/null
        3637  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 2964   3638   
@@ -0,0 +1,10 @@
        3639  +
GET
        3640  +
/
        3641  +
        3642  +
host:example.amazonaws.com
        3643  +
my-header1:value1 value2 value3
        3644  +
x-amz-date:20150830T123600Z
        3645  +
x-amz-region-set:us-east-1
        3646  +
        3647  +
host;my-header1;x-amz-date;x-amz-region-set
        3648  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2965   3649   
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
 2966   3650   
new file mode 100644
 2967   3651   
index 0000000..d51b4f3
 2968         -
-- /dev/null
        3652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 2969   3653   
@@ -0,0 +1 @@
        3654  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 2970   3655   
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
 2971   3656   
new file mode 100644
 2972   3657   
index 0000000..8131420
 2973         -
-- /dev/null
        3658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 2974   3659   
@@ -0,0 +1,9 @@
        3660  +
GET / HTTP/1.1
        3661  +
Host:example.amazonaws.com
        3662  +
My-Header1:value1
        3663  +
  value2
        3664  +
     value3
        3665  +
X-Amz-Date:20150830T123600Z
        3666  +
X-Amz-Region-Set:us-east-1
        3667  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3668  +
 2975   3669   
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
 2976   3670   
new file mode 100644
 2977   3671   
index 0000000..e4d99fa
 2978         -
-- /dev/null
        3672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 2979   3673   
@@ -0,0 +1,4 @@
        3674  +
AWS4-ECDSA-P256-SHA256
        3675  +
20150830T123600Z
        3676  +
20150830/service/aws4_request
        3677  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 2980   3678   
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
 2981   3679   
new file mode 100644
 2982   3680   
index 0000000..379dcb2
 2983         -
-- /dev/null
        3681  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 2984   3682   
@@ -0,0 +1,4 @@
        3683  +
{
        3684  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3685  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3686  +
}
 2985   3687   
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
 2986   3688   
new file mode 100644
 2987   3689   
index 0000000..3c4d52f
 2988         -
-- /dev/null
        3690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 2989   3691   
@@ -0,0 +1,8 @@
        3692  +
GET
        3693  +
/
        3694  +
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
        3695  +
host:example.amazonaws.com
        3696  +
my-header1:value1 value2 value3
        3697  +
        3698  +
host;my-header1
        3699  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2990   3700   
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
 2991   3701   
new file mode 100644
 2992   3702   
index 0000000..4e63f9a
 2993         -
-- /dev/null
        3703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 2994   3704   
@@ -0,0 +1 @@
        3705  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 2995   3706   
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
 2996   3707   
new file mode 100644
 2997   3708   
index 0000000..adf1f09
 2998         -
-- /dev/null
        3709  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 2999   3710   
@@ -0,0 +1,6 @@
        3711  +
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
        3712  +
Host:example.amazonaws.com
        3713  +
My-Header1:value1
        3714  +
  value2
        3715  +
     value3
        3716  +
 3000   3717   
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
 3001   3718   
new file mode 100644
 3002   3719   
index 0000000..e085407
 3003         -
-- /dev/null
        3720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3004   3721   
@@ -0,0 +1,4 @@
        3722  +
AWS4-ECDSA-P256-SHA256
        3723  +
20150830T123600Z
        3724  +
20150830/service/aws4_request
        3725  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3005   3726   
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
 3006   3727   
new file mode 100644
 3007   3728   
index 0000000..b5026cd
 3008         -
-- /dev/null
        3729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3009   3730   
@@ -0,0 +1,5 @@
        3731  +
GET / HTTP/1.1
        3732  +
Host:example.amazonaws.com
        3733  +
My-Header1:value1
        3734  +
  value2
        3735  +
     value3
 3010   3736   
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
 3011   3737   
new file mode 100644
 3012   3738   
index 0000000..0468d80
 3013         -
-- /dev/null
        3739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3014   3740   
@@ -0,0 +1,12 @@
        3741  +
{
        3742  +
    "credentials": {
        3743  +
        "access_key_id": "AKIDEXAMPLE",
        3744  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3745  +
    },
        3746  +
    "expiration_in_seconds": 3600,
        3747  +
    "normalize": true,
        3748  +
    "region": "us-east-1",
        3749  +
    "service": "service",
        3750  +
    "sign_body": false,
        3751  +
    "timestamp": "2015-08-30T12:36:00Z"
        3752  +
}
              \
 No newline at end of file
 3015   3753   
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
 3016   3754   
similarity index 99%
 3017   3755   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3018   3756   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3019   3757   
index 9375193..533afdb 100644
 3020   3758   
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
 3021   3759   
new file mode 100644
 3022   3760   
index 0000000..057b426
 3023         -
-- /dev/null
        3761  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3024   3762   
@@ -0,0 +1 @@
        3763  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3025   3764   
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
 3026   3765   
new file mode 100644
 3027   3766   
index 0000000..4e4ccf0
 3028         -
-- /dev/null
        3767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3029   3768   
@@ -0,0 +1,10 @@
        3769  +
GET / HTTP/1.1
        3770  +
Host:example.amazonaws.com
        3771  +
My-Header1:value4
        3772  +
My-Header1:value1
        3773  +
My-Header1:value3
        3774  +
My-Header1:value2
        3775  +
X-Amz-Date:20150830T123600Z
        3776  +
X-Amz-Region-Set:us-east-1
        3777  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        3778  +
 3030   3779   
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
 3031   3780   
similarity index 99%
 3032   3781   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3033   3782   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3034   3783   
index 6400baf..e68c952 100644
 3035   3784   
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
 3036   3785   
new file mode 100644
 3037   3786   
index 0000000..379dcb2
 3038         -
-- /dev/null
        3787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3039   3788   
@@ -0,0 +1,4 @@
        3789  +
{
        3790  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3791  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3792  +
}
 3040   3793   
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
 3041   3794   
similarity index 99%
 3042   3795   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3043   3796   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3044   3797   
index ecf494a..68450fe 100644
 3045   3798   
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
 3046   3799   
new file mode 100644
 3047   3800   
index 0000000..9df2eb3
 3048         -
-- /dev/null
        3801  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3049   3802   
@@ -0,0 +1 @@
        3803  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3050   3804   
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
 3051   3805   
new file mode 100644
 3052   3806   
index 0000000..62f8cb7
 3053         -
-- /dev/null
        3807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3054   3808   
@@ -0,0 +1,7 @@
        3809  +
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
        3810  +
Host:example.amazonaws.com
        3811  +
My-Header1:value4
        3812  +
My-Header1:value1
        3813  +
My-Header1:value3
        3814  +
My-Header1:value2
        3815  +
 3055   3816   
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
 3056   3817   
similarity index 99%
 3057   3818   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3058   3819   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3059   3820   
index b584179..2bcf7b1 100644
 3060   3821   
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
 3061   3822   
similarity index 80%
 3062   3823   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3063   3824   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3064   3825   
index f7bd9e6..2c6f49d 100644
 3065         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        3826  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3066   3827   
@@ -1,7 +1,6 @@
 3067   3828   
GET / HTTP/1.1
 3068   3829   
Host:example.amazonaws.com
 3069   3830   
My-Header1:value4
 3070   3831   
My-Header1:value1
 3071   3832   
My-Header1:value3
 3072   3833   
My-Header1:value2
 3073         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3074   3834   
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
 3075   3835   
new file mode 100644
 3076   3836   
index 0000000..0468d80
 3077         -
-- /dev/null
        3837  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3078   3838   
@@ -0,0 +1,12 @@
        3839  +
{
        3840  +
    "credentials": {
        3841  +
        "access_key_id": "AKIDEXAMPLE",
        3842  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3843  +
    },
        3844  +
    "expiration_in_seconds": 3600,
        3845  +
    "normalize": true,
        3846  +
    "region": "us-east-1",
        3847  +
    "service": "service",
        3848  +
    "sign_body": false,
        3849  +
    "timestamp": "2015-08-30T12:36:00Z"
        3850  +
}
              \
 No newline at end of file
 3079   3851   
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
 3080   3852   
similarity index 99%
 3081   3853   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3082   3854   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3083   3855   
index e91e952..94b6be5 100644
 3084   3856   
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
 3085   3857   
new file mode 100644
 3086   3858   
index 0000000..bf8c3cb
 3087         -
-- /dev/null
        3859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3088   3860   
@@ -0,0 +1 @@
        3861  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3089   3862   
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
 3090   3863   
new file mode 100644
 3091   3864   
index 0000000..f7f054d
 3092         -
-- /dev/null
        3865  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3093   3866   
@@ -0,0 +1,8 @@
        3867  +
GET / HTTP/1.1
        3868  +
Host:example.amazonaws.com
        3869  +
My-Header1: value1
        3870  +
My-Header2: "a   b   c"
        3871  +
X-Amz-Date:20150830T123600Z
        3872  +
X-Amz-Region-Set:us-east-1
        3873  +
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
        3874  +
 3094   3875   
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
 3095   3876   
similarity index 99%
 3096   3877   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3097   3878   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3098   3879   
index 0e407d8..a2c9c05 100644
 3099   3880   
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
 3100   3881   
new file mode 100644
 3101   3882   
index 0000000..379dcb2
 3102         -
-- /dev/null
        3883  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3103   3884   
@@ -0,0 +1,4 @@
        3885  +
{
        3886  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3887  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3888  +
}
 3104   3889   
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
 3105   3890   
similarity index 99%
 3106   3891   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3107   3892   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3108   3893   
index 8a3b042..3a51150 100644
 3109   3894   
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
 3110   3895   
new file mode 100644
 3111   3896   
index 0000000..0033053
 3112         -
-- /dev/null
        3897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3113   3898   
@@ -0,0 +1 @@
        3899  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3114   3900   
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
 3115   3901   
new file mode 100644
 3116   3902   
index 0000000..1537888
 3117         -
-- /dev/null
        3903  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3118   3904   
@@ -0,0 +1,5 @@
        3905  +
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
        3906  +
Host:example.amazonaws.com
        3907  +
My-Header1: value1
        3908  +
My-Header2: "a   b   c"
        3909  +
 3119   3910   
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
 3120   3911   
similarity index 99%
 3121   3912   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3122   3913   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3123   3914   
index 5eead25..633dc1f 100644
 3124   3915   
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
 3125   3916   
similarity index 75%
 3126   3917   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3127   3918   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3128   3919   
index 901f36c..ad1ea98 100644
 3129         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        3920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3130   3921   
@@ -1,5 +1,4 @@
 3131   3922   
GET / HTTP/1.1
 3132   3923   
Host:example.amazonaws.com
 3133   3924   
My-Header1: value1
 3134   3925   
My-Header2: "a   b   c"
 3135         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3136   3926   
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
 3137   3927   
new file mode 100644
 3138   3928   
index 0000000..0468d80
 3139         -
-- /dev/null
        3929  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3140   3930   
@@ -0,0 +1,12 @@
        3931  +
{
        3932  +
    "credentials": {
        3933  +
        "access_key_id": "AKIDEXAMPLE",
        3934  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3935  +
    },
        3936  +
    "expiration_in_seconds": 3600,
        3937  +
    "normalize": true,
        3938  +
    "region": "us-east-1",
        3939  +
    "service": "service",
        3940  +
    "sign_body": false,
        3941  +
    "timestamp": "2015-08-30T12:36:00Z"
        3942  +
}
              \
 No newline at end of file
 3141   3943   
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
 3142   3944   
similarity index 99%
 3143   3945   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3144   3946   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3145   3947   
index 47e7128..76db73d 100644
 3146   3948   
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
 3147   3949   
new file mode 100644
 3148   3950   
index 0000000..cbd6ae2
 3149         -
-- /dev/null
        3951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3150   3952   
@@ -0,0 +1 @@
        3953  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3151   3954   
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
 3152   3955   
new file mode 100644
 3153   3956   
index 0000000..a343fcf
 3154         -
-- /dev/null
        3957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3155   3958   
@@ -0,0 +1,6 @@
        3959  +
GET /example/.. HTTP/1.1
        3960  +
Host:example.amazonaws.com
        3961  +
X-Amz-Date:20150830T123600Z
        3962  +
X-Amz-Region-Set:us-east-1
        3963  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        3964  +
 3156   3965   
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
 3157   3966   
similarity index 99%
 3158   3967   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3159   3968   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3160   3969   
index 95d7219..600f1d8 100644
 3161   3970   
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
 3162   3971   
new file mode 100644
 3163   3972   
index 0000000..379dcb2
 3164         -
-- /dev/null
        3973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3165   3974   
@@ -0,0 +1,4 @@
        3975  +
{
        3976  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3977  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3978  +
}
 3166   3979   
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
 3167   3980   
similarity index 99%
 3168   3981   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3169   3982   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3170   3983   
index a34ea26..779c51c 100644
 3171   3984   
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
 3172   3985   
new file mode 100644
 3173   3986   
index 0000000..3cc88e6
 3174         -
-- /dev/null
        3987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3175   3988   
@@ -0,0 +1 @@
        3989  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3176   3990   
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
 3177   3991   
new file mode 100644
 3178   3992   
index 0000000..f68dde8
 3179         -
-- /dev/null
        3993  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3180   3994   
@@ -0,0 +1,3 @@
        3995  +
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
        3996  +
Host:example.amazonaws.com
        3997  +
 3181   3998   
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
 3182   3999   
similarity index 99%
 3183   4000   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3184   4001   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3185   4002   
index 48f855c..6e29a7e 100644
 3186   4003   
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
 3187   4004   
similarity index 65%
 3188   4005   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3189   4006   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3190   4007   
index 9d6d7ca..6aa9f99 100644
 3191         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3192   4009   
@@ -1,3 +1,2 @@
 3193   4010   
GET /example/.. HTTP/1.1
 3194   4011   
Host:example.amazonaws.com
 3195         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3196   4012   
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
 3197   4013   
new file mode 100644
 3198   4014   
index 0000000..0468d80
 3199         -
-- /dev/null
        4015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3200   4016   
@@ -0,0 +1,12 @@
        4017  +
{
        4018  +
    "credentials": {
        4019  +
        "access_key_id": "AKIDEXAMPLE",
        4020  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4021  +
    },
        4022  +
    "expiration_in_seconds": 3600,
        4023  +
    "normalize": true,
        4024  +
    "region": "us-east-1",
        4025  +
    "service": "service",
        4026  +
    "sign_body": false,
        4027  +
    "timestamp": "2015-08-30T12:36:00Z"
        4028  +
}
              \
 No newline at end of file
 3201   4029   
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
 3202   4030   
similarity index 99%
 3203   4031   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3204   4032   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3205   4033   
index 47e7128..76db73d 100644
 3206   4034   
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
 3207   4035   
new file mode 100644
 3208   4036   
index 0000000..f7a7ebe
 3209         -
-- /dev/null
        4037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3210   4038   
@@ -0,0 +1 @@
        4039  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3211   4040   
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
 3212   4041   
new file mode 100644
 3213   4042   
index 0000000..9d2c50d
 3214         -
-- /dev/null
        4043  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3215   4044   
@@ -0,0 +1,6 @@
        4045  +
GET /example1/example2/../.. HTTP/1.1
        4046  +
Host:example.amazonaws.com
        4047  +
X-Amz-Date:20150830T123600Z
        4048  +
X-Amz-Region-Set:us-east-1
        4049  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4050  +
 3216   4051   
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
 3217   4052   
similarity index 99%
 3218   4053   
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
 3219   4054   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3220   4055   
index 95d7219..600f1d8 100644
 3221   4056   
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
 3222   4057   
new file mode 100644
 3223   4058   
index 0000000..379dcb2
 3224         -
-- /dev/null
        4059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3225   4060   
@@ -0,0 +1,4 @@
        4061  +
{
        4062  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4063  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4064  +
}
 3226   4065   
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
 3227   4066   
similarity index 99%
 3228   4067   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3229   4068   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3230   4069   
index a34ea26..779c51c 100644
 3231   4070   
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
 3232   4071   
new file mode 100644
 3233   4072   
index 0000000..45ef286
 3234         -
-- /dev/null
        4073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3235   4074   
@@ -0,0 +1 @@
        4075  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3236   4076   
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
 3237   4077   
new file mode 100644
 3238   4078   
index 0000000..0d16f66
 3239         -
-- /dev/null
        4079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3240   4080   
@@ -0,0 +1,3 @@
        4081  +
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
        4082  +
Host:example.amazonaws.com
        4083  +
 3241   4084   
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
 3242   4085   
similarity index 99%
 3243   4086   
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
 3244   4087   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3245   4088   
index 48f855c..6e29a7e 100644
 3246   4089   
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
 3247   4090   
similarity index 70%
 3248   4091   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3249   4092   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3250   4093   
index cfd4e8b..a856c10 100644
 3251         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3252   4095   
@@ -1,3 +1,2 @@
 3253   4096   
GET /example1/example2/../.. HTTP/1.1
 3254   4097   
Host:example.amazonaws.com
 3255         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3256   4098   
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
 3257   4099   
new file mode 100644
 3258   4100   
index 0000000..7bee5c7
 3259         -
-- /dev/null
        4101  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3260   4102   
@@ -0,0 +1,12 @@
        4103  +
{
        4104  +
    "credentials": {
        4105  +
        "access_key_id": "AKIDEXAMPLE",
        4106  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4107  +
    },
        4108  +
    "expiration_in_seconds": 3600,
        4109  +
    "normalize": false,
        4110  +
    "region": "us-east-1",
        4111  +
    "service": "service",
        4112  +
    "sign_body": false,
        4113  +
    "timestamp": "2015-08-30T12:36:00Z"
        4114  +
}
              \
 No newline at end of file
 3261   4115   
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
 3262   4116   
similarity index 99%
 3263   4117   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3264   4118   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3265   4119   
index 5e1d1cf..e4e6d57 100644
 3266   4120   
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
 3267   4121   
new file mode 100644
 3268   4122   
index 0000000..2d1b47c
 3269         -
-- /dev/null
        4123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3270   4124   
@@ -0,0 +1 @@
        4125  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3271   4126   
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
 3272   4127   
new file mode 100644
 3273   4128   
index 0000000..7158179
 3274         -
-- /dev/null
        4129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3275   4130   
@@ -0,0 +1,6 @@
        4131  +
GET /example1/example2/../.. HTTP/1.1
        4132  +
Host:example.amazonaws.com
        4133  +
X-Amz-Date:20150830T123600Z
        4134  +
X-Amz-Region-Set:us-east-1
        4135  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4136  +
 3276   4137   
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
 3277   4138   
similarity index 99%
 3278   4139   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3279   4140   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3280   4141   
index 1cca6cf..db60c8e 100644
 3281   4142   
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
 3282   4143   
new file mode 100644
 3283   4144   
index 0000000..379dcb2
 3284         -
-- /dev/null
        4145  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3285   4146   
@@ -0,0 +1,4 @@
        4147  +
{
        4148  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4149  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4150  +
}
 3286   4151   
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
 3287   4152   
similarity index 99%
 3288   4153   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3289   4154   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3290   4155   
index 95dc104..0d963ba 100644
 3291   4156   
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
 3292   4157   
new file mode 100644
 3293   4158   
index 0000000..ae774e4
 3294         -
-- /dev/null
        4159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3295   4160   
@@ -0,0 +1 @@
        4161  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3296   4162   
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
 3297   4163   
new file mode 100644
 3298   4164   
index 0000000..be6b86e
 3299         -
-- /dev/null
        4165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3300   4166   
@@ -0,0 +1,3 @@
        4167  +
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
        4168  +
Host:example.amazonaws.com
        4169  +
 3301   4170   
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
 3302   4171   
similarity index 99%
 3303   4172   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3304   4173   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3305   4174   
index 50edce6..fcc70cd 100644
 3306   4175   
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
 3307   4176   
new file mode 100644
 3308   4177   
index 0000000..a856c10
 3309         -
-- /dev/null
        4178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3310   4179   
@@ -0,0 +1,2 @@
        4180  +
GET /example1/example2/../.. HTTP/1.1
        4181  +
Host:example.amazonaws.com
 3311   4182   
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
 3312   4183   
new file mode 100644
 3313   4184   
index 0000000..7bee5c7
 3314         -
-- /dev/null
        4185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3315   4186   
@@ -0,0 +1,12 @@
        4187  +
{
        4188  +
    "credentials": {
        4189  +
        "access_key_id": "AKIDEXAMPLE",
        4190  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4191  +
    },
        4192  +
    "expiration_in_seconds": 3600,
        4193  +
    "normalize": false,
        4194  +
    "region": "us-east-1",
        4195  +
    "service": "service",
        4196  +
    "sign_body": false,
        4197  +
    "timestamp": "2015-08-30T12:36:00Z"
        4198  +
}
              \
 No newline at end of file
 3316   4199   
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
 3317   4200   
similarity index 99%
 3318   4201   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3319   4202   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3320   4203   
index d6a0abe..22def1a 100644
 3321   4204   
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
 3322   4205   
new file mode 100644
 3323   4206   
index 0000000..9251bad
 3324         -
-- /dev/null
        4207  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3325   4208   
@@ -0,0 +1 @@
        4209  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3326   4210   
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
 3327   4211   
new file mode 100644
 3328   4212   
index 0000000..f1bb60f
 3329         -
-- /dev/null
        4213  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3330   4214   
@@ -0,0 +1,6 @@
        4215  +
GET /example/.. HTTP/1.1
        4216  +
Host:example.amazonaws.com
        4217  +
X-Amz-Date:20150830T123600Z
        4218  +
X-Amz-Region-Set:us-east-1
        4219  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4220  +
 3331   4221   
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
 3332   4222   
similarity index 99%
 3333   4223   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3334   4224   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3335   4225   
index 4a34e93..5673a20 100644
 3336   4226   
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
 3337   4227   
new file mode 100644
 3338   4228   
index 0000000..379dcb2
 3339         -
-- /dev/null
        4229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3340   4230   
@@ -0,0 +1,4 @@
        4231  +
{
        4232  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4233  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4234  +
}
 3341   4235   
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
 3342   4236   
similarity index 99%
 3343   4237   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3344   4238   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3345   4239   
index b1d123e..a1c22e0 100644
 3346   4240   
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
 3347   4241   
new file mode 100644
 3348   4242   
index 0000000..9f0f686
 3349         -
-- /dev/null
        4243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3350   4244   
@@ -0,0 +1 @@
        4245  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3351   4246   
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
 3352   4247   
new file mode 100644
 3353   4248   
index 0000000..d1d451a
 3354         -
-- /dev/null
        4249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3355   4250   
@@ -0,0 +1,3 @@
        4251  +
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
        4252  +
Host:example.amazonaws.com
        4253  +
 3356   4254   
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
 3357   4255   
similarity index 99%
 3358   4256   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3359   4257   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3360   4258   
index a17f5ab..81b41e8 100644
 3361   4259   
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
 3362   4260   
new file mode 100644
 3363   4261   
index 0000000..6aa9f99
 3364         -
-- /dev/null
        4262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3365   4263   
@@ -0,0 +1,2 @@
        4264  +
GET /example/.. HTTP/1.1
        4265  +
Host:example.amazonaws.com
 3366   4266   
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
 3367   4267   
new file mode 100644
 3368   4268   
index 0000000..0468d80
 3369         -
-- /dev/null
        4269  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3370   4270   
@@ -0,0 +1,12 @@
        4271  +
{
        4272  +
    "credentials": {
        4273  +
        "access_key_id": "AKIDEXAMPLE",
        4274  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4275  +
    },
        4276  +
    "expiration_in_seconds": 3600,
        4277  +
    "normalize": true,
        4278  +
    "region": "us-east-1",
        4279  +
    "service": "service",
        4280  +
    "sign_body": false,
        4281  +
    "timestamp": "2015-08-30T12:36:00Z"
        4282  +
}
              \
 No newline at end of file
 3371   4283   
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
 3372   4284   
similarity index 99%
 3373   4285   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3374   4286   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3375   4287   
index 47e7128..76db73d 100644
 3376   4288   
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
 3377   4289   
new file mode 100644
 3378   4290   
index 0000000..ca6e84e
 3379         -
-- /dev/null
        4291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3380   4292   
@@ -0,0 +1 @@
        4293  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3381   4294   
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
 3382   4295   
new file mode 100644
 3383   4296   
index 0000000..a7c764c
 3384         -
-- /dev/null
        4297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3385   4298   
@@ -0,0 +1,6 @@
        4299  +
GET /./ HTTP/1.1
        4300  +
Host:example.amazonaws.com
        4301  +
X-Amz-Date:20150830T123600Z
        4302  +
X-Amz-Region-Set:us-east-1
        4303  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4304  +
 3386   4305   
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
 3387   4306   
similarity index 99%
 3388   4307   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3389   4308   
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
 3390   4309   
index 95d7219..600f1d8 100644
 3391   4310   
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
 3392   4311   
new file mode 100644
 3393   4312   
index 0000000..379dcb2
 3394         -
-- /dev/null
        4313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3395   4314   
@@ -0,0 +1,4 @@
        4315  +
{
        4316  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4317  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4318  +
}
 3396   4319   
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
 3397   4320   
similarity index 99%
 3398   4321   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3399   4322   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3400   4323   
index a34ea26..779c51c 100644
 3401   4324   
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
 3402   4325   
new file mode 100644
 3403   4326   
index 0000000..4b6ed09
 3404         -
-- /dev/null
        4327  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3405   4328   
@@ -0,0 +1 @@
        4329  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3406   4330   
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
 3407   4331   
new file mode 100644
 3408   4332   
index 0000000..d6c7176
 3409         -
-- /dev/null
        4333  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3410   4334   
@@ -0,0 +1,3 @@
        4335  +
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
        4336  +
Host:example.amazonaws.com
        4337  +
 3411   4338   
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
 3412   4339   
similarity index 99%
 3413   4340   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3414   4341   
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
 3415   4342   
index 48f855c..6e29a7e 100644
 3416   4343   
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
 3417   4344   
similarity index 61%
 3418   4345   
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
 3419   4346   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3420   4347   
index f3537b7..2c5ff38 100644
 3421         -
-- 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
        4348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3422   4349   
@@ -1,3 +1,2 @@
 3423   4350   
GET /./ HTTP/1.1
 3424   4351   
Host:example.amazonaws.com
 3425         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3426   4352   
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
 3427   4353   
new file mode 100644
 3428   4354   
index 0000000..7bee5c7
 3429         -
-- /dev/null
        4355  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3430   4356   
@@ -0,0 +1,12 @@
        4357  +
{
        4358  +
    "credentials": {
        4359  +
        "access_key_id": "AKIDEXAMPLE",
        4360  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4361  +
    },
        4362  +
    "expiration_in_seconds": 3600,
        4363  +
    "normalize": false,
        4364  +
    "region": "us-east-1",
        4365  +
    "service": "service",
        4366  +
    "sign_body": false,
        4367  +
    "timestamp": "2015-08-30T12:36:00Z"
        4368  +
}
              \
 No newline at end of file
 3431   4369   
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
 3432   4370   
similarity index 99%
 3433   4371   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3434   4372   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3435   4373   
index d05303d..9257ac4 100644
 3436   4374   
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
 3437   4375   
new file mode 100644
 3438   4376   
index 0000000..2eb1aa5
 3439         -
-- /dev/null
        4377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3440   4378   
@@ -0,0 +1 @@
        4379  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3441   4380   
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
 3442   4381   
new file mode 100644
 3443   4382   
index 0000000..df3b1da
 3444         -
-- /dev/null
        4383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3445   4384   
@@ -0,0 +1,6 @@
        4385  +
GET /./ HTTP/1.1
        4386  +
Host:example.amazonaws.com
        4387  +
X-Amz-Date:20150830T123600Z
        4388  +
X-Amz-Region-Set:us-east-1
        4389  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4390  +
 3446   4391   
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
 3447   4392   
similarity index 99%
 3448   4393   
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
 3449   4394   
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
 3450   4395   
index e1bfb39..754b3ed 100644
 3451   4396   
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
 3452   4397   
new file mode 100644
 3453   4398   
index 0000000..379dcb2
 3454         -
-- /dev/null
        4399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3455   4400   
@@ -0,0 +1,4 @@
        4401  +
{
        4402  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4403  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4404  +
}
 3456   4405   
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
 3457   4406   
similarity index 99%
 3458   4407   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3459   4408   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3460   4409   
index f048d0f..c8edce3 100644
 3461   4410   
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
 3462   4411   
new file mode 100644
 3463   4412   
index 0000000..d3af3b8
 3464         -
-- /dev/null
        4413  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3465   4414   
@@ -0,0 +1 @@
        4415  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3466   4416   
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
 3467   4417   
new file mode 100644
 3468   4418   
index 0000000..eb38155
 3469         -
-- /dev/null
        4419  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3470   4420   
@@ -0,0 +1,3 @@
        4421  +
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
        4422  +
Host:example.amazonaws.com
        4423  +
 3471   4424   
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
 3472   4425   
similarity index 99%
 3473   4426   
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
 3474   4427   
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
 3475   4428   
index bfcf245..4f20b8f 100644
 3476   4429   
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
 3477   4430   
new file mode 100644
 3478   4431   
index 0000000..2c5ff38
 3479         -
-- /dev/null
        4432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3480   4433   
@@ -0,0 +1,2 @@
        4434  +
GET /./ HTTP/1.1
        4435  +
Host:example.amazonaws.com
 3481   4436   
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
 3482   4437   
new file mode 100644
 3483   4438   
index 0000000..0468d80
 3484         -
-- /dev/null
        4439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3485   4440   
@@ -0,0 +1,12 @@
        4441  +
{
        4442  +
    "credentials": {
        4443  +
        "access_key_id": "AKIDEXAMPLE",
        4444  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4445  +
    },
        4446  +
    "expiration_in_seconds": 3600,
        4447  +
    "normalize": true,
        4448  +
    "region": "us-east-1",
        4449  +
    "service": "service",
        4450  +
    "sign_body": false,
        4451  +
    "timestamp": "2015-08-30T12:36:00Z"
        4452  +
}
              \
 No newline at end of file
 3486   4453   
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
 3487   4454   
similarity index 99%
 3488   4455   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 3489   4456   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3490   4457   
index 47e7128..76db73d 100644
 3491   4458   
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
 3492   4459   
new file mode 100644
 3493   4460   
index 0000000..0c049ca
 3494         -
-- /dev/null
        4461  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 3495   4462   
@@ -0,0 +1 @@
        4463  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 3496   4464   
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
 3497   4465   
new file mode 100644
 3498   4466   
index 0000000..f4bb1e1
 3499         -
-- /dev/null
        4467  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 3500   4468   
@@ -0,0 +1,6 @@
        4469  +
GET // HTTP/1.1
        4470  +
Host:example.amazonaws.com
        4471  +
X-Amz-Date:20150830T123600Z
        4472  +
X-Amz-Region-Set:us-east-1
        4473  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4474  +
 3501   4475   
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
 3502   4476   
similarity index 99%
 3503   4477   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 3504   4478   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3505   4479   
index 95d7219..600f1d8 100644
 3506   4480   
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
 3507   4481   
new file mode 100644
 3508   4482   
index 0000000..379dcb2
 3509         -
-- /dev/null
        4483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 3510   4484   
@@ -0,0 +1,4 @@
        4485  +
{
        4486  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4487  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4488  +
}
 3511   4489   
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
 3512   4490   
similarity index 99%
 3513   4491   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 3514   4492   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3515   4493   
index a34ea26..779c51c 100644
 3516   4494   
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
 3517   4495   
new file mode 100644
 3518   4496   
index 0000000..ca52293
 3519         -
-- /dev/null
        4497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 3520   4498   
@@ -0,0 +1 @@
        4499  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 3521   4500   
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
 3522   4501   
new file mode 100644
 3523   4502   
index 0000000..4a212a9
 3524         -
-- /dev/null
        4503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 3525   4504   
@@ -0,0 +1,3 @@
        4505  +
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
        4506  +
Host:example.amazonaws.com
        4507  +
 3526   4508   
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
 3527   4509   
similarity index 99%
 3528   4510   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 3529   4511   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3530   4512   
index 48f855c..6e29a7e 100644
 3531   4513   
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
 3532   4514   
similarity index 61%
 3533   4515   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 3534   4516   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3535   4517   
index ede8e3c..25bc21e 100644
 3536         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        4518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3537   4519   
@@ -1,3 +1,2 @@
 3538   4520   
GET // HTTP/1.1
 3539   4521   
Host:example.amazonaws.com
 3540         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3541   4522   
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
 3542   4523   
new file mode 100644
 3543   4524   
index 0000000..0468d80
 3544         -
-- /dev/null
        4525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 3545   4526   
@@ -0,0 +1,12 @@
        4527  +
{
        4528  +
    "credentials": {
        4529  +
        "access_key_id": "AKIDEXAMPLE",
        4530  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4531  +
    },
        4532  +
    "expiration_in_seconds": 3600,
        4533  +
    "normalize": true,
        4534  +
    "region": "us-east-1",
        4535  +
    "service": "service",
        4536  +
    "sign_body": false,
        4537  +
    "timestamp": "2015-08-30T12:36:00Z"
        4538  +
}
              \
 No newline at end of file
 3546   4539   
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
 3547   4540   
similarity index 99%
 3548   4541   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3549   4542   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3550   4543   
index 2e36c20..a51f1ba 100644
 3551   4544   
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
 3552   4545   
new file mode 100644
 3553   4546   
index 0000000..f5c871f
 3554         -
-- /dev/null
        4547  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 3555   4548   
@@ -0,0 +1 @@
        4549  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 3556   4550   
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
 3557   4551   
new file mode 100644
 3558   4552   
index 0000000..bda4718
 3559         -
-- /dev/null
        4553  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 3560   4554   
@@ -0,0 +1,6 @@
        4555  +
GET /./example HTTP/1.1
        4556  +
Host:example.amazonaws.com
        4557  +
X-Amz-Date:20150830T123600Z
        4558  +
X-Amz-Region-Set:us-east-1
        4559  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        4560  +
 3561   4561   
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
 3562   4562   
similarity index 99%
 3563   4563   
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
 3564   4564   
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
 3565   4565   
index cd30e8b..2ffe879 100644
 3566   4566   
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
 3567   4567   
new file mode 100644
 3568   4568   
index 0000000..379dcb2
 3569         -
-- /dev/null
        4569  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 3570   4570   
@@ -0,0 +1,4 @@
        4571  +
{
        4572  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4573  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4574  +
}
 3571   4575   
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
 3572   4576   
similarity index 99%
 3573   4577   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3574   4578   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3575   4579   
index 77cf28d..45151ea 100644
 3576   4580   
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
 3577   4581   
new file mode 100644
 3578   4582   
index 0000000..11ad7bf
 3579         -
-- /dev/null
        4583  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 3580   4584   
@@ -0,0 +1 @@
        4585  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 3581   4586   
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
 3582   4587   
new file mode 100644
 3583   4588   
index 0000000..a7537b1
 3584         -
-- /dev/null
        4589  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 3585   4590   
@@ -0,0 +1,3 @@
        4591  +
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
        4592  +
Host:example.amazonaws.com
        4593  +
 3586   4594   
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
 3587   4595   
similarity index 99%
 3588   4596   
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
 3589   4597   
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
 3590   4598   
index 49d9b24..b486672 100644
 3591   4599   
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
 3592   4600   
similarity index 65%
 3593   4601   
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
 3594   4602   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3595   4603   
index 3c91071..5d919c9 100644
 3596         -
-- 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
        4604  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3597   4605   
@@ -1,3 +1,2 @@
 3598   4606   
GET /./example HTTP/1.1
 3599   4607   
Host:example.amazonaws.com
 3600         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3601   4608   
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
 3602   4609   
new file mode 100644
 3603   4610   
index 0000000..7bee5c7
 3604         -
-- /dev/null
        4611  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 3605   4612   
@@ -0,0 +1,12 @@
        4613  +
{
        4614  +
    "credentials": {
        4615  +
        "access_key_id": "AKIDEXAMPLE",
        4616  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4617  +
    },
        4618  +
    "expiration_in_seconds": 3600,
        4619  +
    "normalize": false,
        4620  +
    "region": "us-east-1",
        4621  +
    "service": "service",
        4622  +
    "sign_body": false,
        4623  +
    "timestamp": "2015-08-30T12:36:00Z"
        4624  +
}
              \
 No newline at end of file
 3606   4625   
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
 3607   4626   
similarity index 99%
 3608   4627   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3609   4628   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3610   4629   
index 4444842..2355a69 100644
 3611   4630   
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
 3612   4631   
new file mode 100644
 3613   4632   
index 0000000..9c8f737
 3614         -
-- /dev/null
        4633  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 3615   4634   
@@ -0,0 +1 @@
        4635  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 3616   4636   
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
 3617   4637   
new file mode 100644
 3618   4638   
index 0000000..aa5980d
 3619         -
-- /dev/null
        4639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 3620   4640   
@@ -0,0 +1,6 @@
        4641  +
GET /./example HTTP/1.1
        4642  +
Host:example.amazonaws.com
        4643  +
X-Amz-Date:20150830T123600Z
        4644  +
X-Amz-Region-Set:us-east-1
        4645  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        4646  +
 3621   4647   
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
 3622   4648   
similarity index 99%
 3623   4649   
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
 3624   4650   
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
 3625   4651   
index cc63510..d056816 100644
 3626   4652   
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
 3627   4653   
new file mode 100644
 3628   4654   
index 0000000..379dcb2
 3629         -
-- /dev/null
        4655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 3630   4656   
@@ -0,0 +1,4 @@
        4657  +
{
        4658  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4659  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4660  +
}
 3631   4661   
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
 3632   4662   
similarity index 99%
 3633   4663   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3634   4664   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3635   4665   
index ed2cb2d..df9928e 100644
 3636   4666   
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
 3637   4667   
new file mode 100644
 3638   4668   
index 0000000..bb4d86b
 3639         -
-- /dev/null
        4669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 3640   4670   
@@ -0,0 +1 @@
        4671  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 3641   4672   
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
 3642   4673   
new file mode 100644
 3643   4674   
index 0000000..0061136
 3644         -
-- /dev/null
        4675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 3645   4676   
@@ -0,0 +1,3 @@
        4677  +
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
        4678  +
Host:example.amazonaws.com
        4679  +
 3646   4680   
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
 3647   4681   
similarity index 99%
 3648   4682   
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
 3649   4683   
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
 3650   4684   
index c9f3b6d..418f2d6 100644
 3651   4685   
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
 3652   4686   
new file mode 100644
 3653   4687   
index 0000000..5d919c9
 3654         -
-- /dev/null
        4688  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 3655   4689   
@@ -0,0 +1,2 @@
        4690  +
GET /./example HTTP/1.1
        4691  +
Host:example.amazonaws.com
 3656   4692   
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
 3657   4693   
new file mode 100644
 3658   4694   
index 0000000..7bee5c7
 3659         -
-- /dev/null
        4695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 3660   4696   
@@ -0,0 +1,12 @@
        4697  +
{
        4698  +
    "credentials": {
        4699  +
        "access_key_id": "AKIDEXAMPLE",
        4700  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4701  +
    },
        4702  +
    "expiration_in_seconds": 3600,
        4703  +
    "normalize": false,
        4704  +
    "region": "us-east-1",
        4705  +
    "service": "service",
        4706  +
    "sign_body": false,
        4707  +
    "timestamp": "2015-08-30T12:36:00Z"
        4708  +
}
              \
 No newline at end of file
 3661   4709   
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
 3662   4710   
similarity index 99%
 3663   4711   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 3664   4712   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 3665   4713   
index 8a4d33b..5f809da 100644
 3666   4714   
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
 3667   4715   
new file mode 100644
 3668   4716   
index 0000000..60179e9
 3669         -
-- /dev/null
        4717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 3670   4718   
@@ -0,0 +1 @@
        4719  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 3671   4720   
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
 3672   4721   
new file mode 100644
 3673   4722   
index 0000000..72bf1b7
 3674         -
-- /dev/null
        4723  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 3675   4724   
@@ -0,0 +1,6 @@
        4725  +
GET // HTTP/1.1
        4726  +
Host:example.amazonaws.com
        4727  +
X-Amz-Date:20150830T123600Z
        4728  +
X-Amz-Region-Set:us-east-1
        4729  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        4730  +
 3676   4731   
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
 3677   4732   
similarity index 99%
 3678   4733   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 3679   4734   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 3680   4735   
index 874c01c..2b3bf67 100644
 3681   4736   
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
 3682   4737   
new file mode 100644
 3683   4738   
index 0000000..379dcb2
 3684         -
-- /dev/null
        4739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 3685   4740   
@@ -0,0 +1,4 @@
        4741  +
{
        4742  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4743  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4744  +
}
 3686   4745   
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
 3687   4746   
similarity index 99%
 3688   4747   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 3689   4748   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 3690   4749   
index 81d7b0b..d10ad29 100644
 3691   4750   
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
 3692   4751   
new file mode 100644
 3693   4752   
index 0000000..d9bd824
 3694         -
-- /dev/null
        4753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 3695   4754   
@@ -0,0 +1 @@
        4755  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 3696   4756   
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
 3697   4757   
new file mode 100644
 3698   4758   
index 0000000..19d1d46
 3699         -
-- /dev/null
        4759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 3700   4760   
@@ -0,0 +1,3 @@
        4761  +
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
        4762  +
Host:example.amazonaws.com
        4763  +
 3701   4764   
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
 3702   4765   
similarity index 99%
 3703   4766   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 3704   4767   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 3705   4768   
index 17e5279..24c8a5e 100644
 3706   4769   
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
 3707   4770   
new file mode 100644
 3708   4771   
index 0000000..25bc21e
 3709         -
-- /dev/null
        4772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 3710   4773   
@@ -0,0 +1,2 @@
        4774  +
GET // HTTP/1.1
        4775  +
Host:example.amazonaws.com
 3711   4776   
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
 3712   4777   
new file mode 100644
 3713   4778   
index 0000000..0468d80
 3714         -
-- /dev/null
        4779  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 3715   4780   
@@ -0,0 +1,12 @@
        4781  +
{
        4782  +
    "credentials": {
        4783  +
        "access_key_id": "AKIDEXAMPLE",
        4784  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4785  +
    },
        4786  +
    "expiration_in_seconds": 3600,
        4787  +
    "normalize": true,
        4788  +
    "region": "us-east-1",
        4789  +
    "service": "service",
        4790  +
    "sign_body": false,
        4791  +
    "timestamp": "2015-08-30T12:36:00Z"
        4792  +
}
              \
 No newline at end of file
 3716   4793   
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
 3717   4794   
similarity index 99%
 3718   4795   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 3719   4796   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 3720   4797   
index fdf9c48..a8e9e02 100644
 3721   4798   
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
 3722   4799   
new file mode 100644
 3723   4800   
index 0000000..ffe1b60
 3724         -
-- /dev/null
        4801  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 3725   4802   
@@ -0,0 +1 @@
        4803  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 3726   4804   
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
 3727   4805   
new file mode 100644
 3728   4806   
index 0000000..3189f55
 3729         -
-- /dev/null
        4807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 3730   4808   
@@ -0,0 +1,6 @@
        4809  +
GET //example// HTTP/1.1
        4810  +
Host:example.amazonaws.com
        4811  +
X-Amz-Date:20150830T123600Z
        4812  +
X-Amz-Region-Set:us-east-1
        4813  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        4814  +
 3731   4815   
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
 3732   4816   
similarity index 99%
 3733   4817   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 3734   4818   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 3735   4819   
index 8f9c95e..430020e 100644
 3736   4820   
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
 3737   4821   
new file mode 100644
 3738   4822   
index 0000000..379dcb2
 3739         -
-- /dev/null
        4823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 3740   4824   
@@ -0,0 +1,4 @@
        4825  +
{
        4826  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4827  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4828  +
}
 3741   4829   
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
 3742   4830   
similarity index 99%
 3743   4831   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 3744   4832   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 3745   4833   
index 1046735..8d41e37 100644
 3746   4834   
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
 3747   4835   
new file mode 100644
 3748   4836   
index 0000000..93a0fa4
 3749         -
-- /dev/null
        4837  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 3750   4838   
@@ -0,0 +1 @@
        4839  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 3751   4840   
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
 3752   4841   
new file mode 100644
 3753   4842   
index 0000000..65c8cb6
 3754         -
-- /dev/null
        4843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 3755   4844   
@@ -0,0 +1,3 @@
        4845  +
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
        4846  +
Host:example.amazonaws.com
        4847  +
 3756   4848   
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
 3757   4849   
similarity index 99%
 3758   4850   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 3759   4851   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 3760   4852   
index b293cc2..0f4c4c5 100644
 3761   4853   
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
 3762   4854   
similarity index 65%
 3763   4855   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 3764   4856   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3765   4857   
index a4307ce..12e0931 100644
 3766         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        4858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3767   4859   
@@ -1,3 +1,2 @@
 3768   4860   
GET //example// HTTP/1.1
 3769   4861   
Host:example.amazonaws.com
 3770         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3771   4862   
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
 3772   4863   
new file mode 100644
 3773   4864   
index 0000000..7bee5c7
 3774         -
-- /dev/null
        4865  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 3775   4866   
@@ -0,0 +1,12 @@
        4867  +
{
        4868  +
    "credentials": {
        4869  +
        "access_key_id": "AKIDEXAMPLE",
        4870  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4871  +
    },
        4872  +
    "expiration_in_seconds": 3600,
        4873  +
    "normalize": false,
        4874  +
    "region": "us-east-1",
        4875  +
    "service": "service",
        4876  +
    "sign_body": false,
        4877  +
    "timestamp": "2015-08-30T12:36:00Z"
        4878  +
}
              \
 No newline at end of file
 3776   4879   
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
 3777   4880   
similarity index 99%
 3778   4881   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 3779   4882   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 3780   4883   
index a9c55f6..76f55ed 100644
 3781   4884   
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
 3782   4885   
new file mode 100644
 3783   4886   
index 0000000..de333b2
 3784         -
-- /dev/null
        4887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 3785   4888   
@@ -0,0 +1 @@
        4889  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 3786   4890   
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
 3787   4891   
new file mode 100644
 3788   4892   
index 0000000..773ce63
 3789         -
-- /dev/null
        4893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 3790   4894   
@@ -0,0 +1,6 @@
        4895  +
GET //example// HTTP/1.1
        4896  +
Host:example.amazonaws.com
        4897  +
X-Amz-Date:20150830T123600Z
        4898  +
X-Amz-Region-Set:us-east-1
        4899  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        4900  +
 3791   4901   
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
 3792   4902   
similarity index 99%
 3793   4903   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 3794   4904   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 3795   4905   
index 5c4c2cd..46c3265 100644
 3796   4906   
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
 3797   4907   
new file mode 100644
 3798   4908   
index 0000000..379dcb2
 3799         -
-- /dev/null
        4909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 3800   4910   
@@ -0,0 +1,4 @@
        4911  +
{
        4912  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4913  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4914  +
}
 3801   4915   
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
 3802   4916   
similarity index 99%
 3803   4917   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 3804   4918   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 3805   4919   
index c878ab4..6047ccf 100644
 3806   4920   
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
 3807   4921   
new file mode 100644
 3808   4922   
index 0000000..d61fcd0
 3809         -
-- /dev/null
        4923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 3810   4924   
@@ -0,0 +1 @@
        4925  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 3811   4926   
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
 3812   4927   
new file mode 100644
 3813   4928   
index 0000000..3e37b5b
 3814         -
-- /dev/null
        4929  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 3815   4930   
@@ -0,0 +1,3 @@
        4931  +
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
        4932  +
Host:example.amazonaws.com
        4933  +
 3816   4934   
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
 3817   4935   
similarity index 99%
 3818   4936   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 3819   4937   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 3820   4938   
index 5f59645..2537d28 100644
 3821   4939   
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
 3822   4940   
new file mode 100644
 3823   4941   
index 0000000..12e0931
 3824         -
-- /dev/null
        4942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 3825   4943   
@@ -0,0 +1,2 @@
        4944  +
GET //example// HTTP/1.1
        4945  +
Host:example.amazonaws.com
 3826   4946   
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
 3827   4947   
new file mode 100644
 3828   4948   
index 0000000..0468d80
 3829         -
-- /dev/null
        4949  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 3830   4950   
@@ -0,0 +1,12 @@
        4951  +
{
        4952  +
    "credentials": {
        4953  +
        "access_key_id": "AKIDEXAMPLE",
        4954  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4955  +
    },
        4956  +
    "expiration_in_seconds": 3600,
        4957  +
    "normalize": true,
        4958  +
    "region": "us-east-1",
        4959  +
    "service": "service",
        4960  +
    "sign_body": false,
        4961  +
    "timestamp": "2015-08-30T12:36:00Z"
        4962  +
}
              \
 No newline at end of file
 3831   4963   
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
 3832   4964   
new file mode 100644
 3833   4965   
index 0000000..0b2b616
 3834         -
-- /dev/null
        4966  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 3835   4967   
@@ -0,0 +1,9 @@
        4968  +
GET
        4969  +
/example%20space/
        4970  +
        4971  +
host:example.amazonaws.com
        4972  +
x-amz-date:20150830T123600Z
        4973  +
x-amz-region-set:us-east-1
        4974  +
        4975  +
host;x-amz-date;x-amz-region-set
        4976  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3836   4977   
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
 3837   4978   
new file mode 100644
 3838   4979   
index 0000000..6e7841d
 3839         -
-- /dev/null
        4980  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 3840   4981   
@@ -0,0 +1 @@
        4982  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 3841   4983   
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
 3842   4984   
new file mode 100644
 3843   4985   
index 0000000..0969cd3
 3844         -
-- /dev/null
        4986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 3845   4987   
@@ -0,0 +1,6 @@
        4988  +
GET /example space/ HTTP/1.1
        4989  +
Host:example.amazonaws.com
        4990  +
X-Amz-Date:20150830T123600Z
        4991  +
X-Amz-Region-Set:us-east-1
        4992  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        4993  +
 3846   4994   
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
 3847   4995   
new file mode 100644
 3848   4996   
index 0000000..ddae6e2
 3849         -
-- /dev/null
        4997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 3850   4998   
@@ -0,0 +1,4 @@
        4999  +
AWS4-ECDSA-P256-SHA256
        5000  +
20150830T123600Z
        5001  +
20150830/service/aws4_request
        5002  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 3851   5003   
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
 3852   5004   
new file mode 100644
 3853   5005   
index 0000000..379dcb2
 3854         -
-- /dev/null
        5006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 3855   5007   
@@ -0,0 +1,4 @@
        5008  +
{
        5009  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5010  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5011  +
}
 3856   5012   
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
 3857   5013   
new file mode 100644
 3858   5014   
index 0000000..a66b3cb
 3859         -
-- /dev/null
        5015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 3860   5016   
@@ -0,0 +1,7 @@
        5017  +
GET
        5018  +
/example%20space/
        5019  +
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
        5020  +
host:example.amazonaws.com
        5021  +
        5022  +
host
        5023  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3861   5024   
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
 3862   5025   
new file mode 100644
 3863   5026   
index 0000000..b3253ae
 3864         -
-- /dev/null
        5027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 3865   5028   
@@ -0,0 +1 @@
        5029  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 3866   5030   
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
 3867   5031   
new file mode 100644
 3868   5032   
index 0000000..9e335b2
 3869         -
-- /dev/null
        5033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 3870   5034   
@@ -0,0 +1,3 @@
        5035  +
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
        5036  +
Host:example.amazonaws.com
        5037  +
 3871   5038   
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
 3872   5039   
new file mode 100644
 3873   5040   
index 0000000..b6ff6fb
 3874         -
-- /dev/null
        5041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 3875   5042   
@@ -0,0 +1,4 @@
        5043  +
AWS4-ECDSA-P256-SHA256
        5044  +
20150830T123600Z
        5045  +
20150830/service/aws4_request
        5046  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 3876   5047   
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
 3877   5048   
new file mode 100644
 3878   5049   
index 0000000..ab509ab
 3879         -
-- /dev/null
        5050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 3880   5051   
@@ -0,0 +1,2 @@
        5052  +
GET /example space/ HTTP/1.1
        5053  +
Host:example.amazonaws.com
 3881   5054   
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
 3882   5055   
new file mode 100644
 3883   5056   
index 0000000..7bee5c7
 3884         -
-- /dev/null
        5057  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 3885   5058   
@@ -0,0 +1,12 @@
        5059  +
{
        5060  +
    "credentials": {
        5061  +
        "access_key_id": "AKIDEXAMPLE",
        5062  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5063  +
    },
        5064  +
    "expiration_in_seconds": 3600,
        5065  +
    "normalize": false,
        5066  +
    "region": "us-east-1",
        5067  +
    "service": "service",
        5068  +
    "sign_body": false,
        5069  +
    "timestamp": "2015-08-30T12:36:00Z"
        5070  +
}
              \
 No newline at end of file
 3886   5071   
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
 3887   5072   
new file mode 100644
 3888   5073   
index 0000000..0b2b616
 3889         -
-- /dev/null
        5074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 3890   5075   
@@ -0,0 +1,9 @@
        5076  +
GET
        5077  +
/example%20space/
        5078  +
        5079  +
host:example.amazonaws.com
        5080  +
x-amz-date:20150830T123600Z
        5081  +
x-amz-region-set:us-east-1
        5082  +
        5083  +
host;x-amz-date;x-amz-region-set
        5084  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3891   5085   
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
 3892   5086   
new file mode 100644
 3893   5087   
index 0000000..e75ae08
 3894         -
-- /dev/null
        5088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 3895   5089   
@@ -0,0 +1 @@
        5090  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 3896   5091   
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
 3897   5092   
new file mode 100644
 3898   5093   
index 0000000..cb089db
 3899         -
-- /dev/null
        5094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 3900   5095   
@@ -0,0 +1,6 @@
        5096  +
GET /example space/ HTTP/1.1
        5097  +
Host:example.amazonaws.com
        5098  +
X-Amz-Date:20150830T123600Z
        5099  +
X-Amz-Region-Set:us-east-1
        5100  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5101  +
 3901   5102   
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
 3902   5103   
new file mode 100644
 3903   5104   
index 0000000..ddae6e2
 3904         -
-- /dev/null
        5105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 3905   5106   
@@ -0,0 +1,4 @@
        5107  +
AWS4-ECDSA-P256-SHA256
        5108  +
20150830T123600Z
        5109  +
20150830/service/aws4_request
        5110  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 3906   5111   
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
 3907   5112   
new file mode 100644
 3908   5113   
index 0000000..379dcb2
 3909         -
-- /dev/null
        5114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 3910   5115   
@@ -0,0 +1,4 @@
        5116  +
{
        5117  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5118  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5119  +
}
 3911   5120   
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
 3912   5121   
new file mode 100644
 3913   5122   
index 0000000..a66b3cb
 3914         -
-- /dev/null
        5123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 3915   5124   
@@ -0,0 +1,7 @@
        5125  +
GET
        5126  +
/example%20space/
        5127  +
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
        5128  +
host:example.amazonaws.com
        5129  +
        5130  +
host
        5131  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3916   5132   
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
 3917   5133   
new file mode 100644
 3918   5134   
index 0000000..66a80c3
 3919         -
-- /dev/null
        5135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 3920   5136   
@@ -0,0 +1 @@
        5137  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 3921   5138   
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
 3922   5139   
new file mode 100644
 3923   5140   
index 0000000..7d1b9d9
 3924         -
-- /dev/null
        5141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 3925   5142   
@@ -0,0 +1,3 @@
        5143  +
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
        5144  +
Host:example.amazonaws.com
        5145  +
 3926   5146   
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
 3927   5147   
new file mode 100644
 3928   5148   
index 0000000..b6ff6fb
 3929         -
-- /dev/null
        5149  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 3930   5150   
@@ -0,0 +1,4 @@
        5151  +
AWS4-ECDSA-P256-SHA256
        5152  +
20150830T123600Z
        5153  +
20150830/service/aws4_request
        5154  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 3931   5155   
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
 3932   5156   
new file mode 100644
 3933   5157   
index 0000000..ab509ab
 3934         -
-- /dev/null
        5158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 3935   5159   
@@ -0,0 +1,2 @@
        5160  +
GET /example space/ HTTP/1.1
        5161  +
Host:example.amazonaws.com
 3936   5162   
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
 3937   5163   
new file mode 100644
 3938   5164   
index 0000000..0468d80
 3939         -
-- /dev/null
        5165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 3940   5166   
@@ -0,0 +1,12 @@
        5167  +
{
        5168  +
    "credentials": {
        5169  +
        "access_key_id": "AKIDEXAMPLE",
        5170  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5171  +
    },
        5172  +
    "expiration_in_seconds": 3600,
        5173  +
    "normalize": true,
        5174  +
    "region": "us-east-1",
        5175  +
    "service": "service",
        5176  +
    "sign_body": false,
        5177  +
    "timestamp": "2015-08-30T12:36:00Z"
        5178  +
}
              \
 No newline at end of file
 3941   5179   
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
 3942   5180   
similarity index 99%
 3943   5181   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 3944   5182   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 3945   5183   
index b0db648..46d76bb 100644
 3946   5184   
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
 3947   5185   
new file mode 100644
 3948   5186   
index 0000000..53c0cb6
 3949         -
-- /dev/null
        5187  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 3950   5188   
@@ -0,0 +1 @@
        5189  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 3951   5190   
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
 3952   5191   
new file mode 100644
 3953   5192   
index 0000000..3bdb653
 3954         -
-- /dev/null
        5193  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 3955   5194   
@@ -0,0 +1,6 @@
        5195  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5196  +
Host:example.amazonaws.com
        5197  +
X-Amz-Date:20150830T123600Z
        5198  +
X-Amz-Region-Set:us-east-1
        5199  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5200  +
 3956   5201   
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
 3957   5202   
similarity index 99%
 3958   5203   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 3959   5204   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 3960   5205   
index 20c7cd6..3b30173 100644
 3961   5206   
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
 3962   5207   
new file mode 100644
 3963   5208   
index 0000000..379dcb2
 3964         -
-- /dev/null
        5209  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 3965   5210   
@@ -0,0 +1,4 @@
        5211  +
{
        5212  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5213  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5214  +
}
 3966   5215   
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
 3967   5216   
similarity index 99%
 3968   5217   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 3969   5218   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 3970   5219   
index f9fb726..7e93f58 100644
 3971   5220   
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
 3972   5221   
new file mode 100644
 3973   5222   
index 0000000..48311a8
 3974         -
-- /dev/null
        5223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 3975   5224   
@@ -0,0 +1 @@
        5225  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 3976   5226   
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
 3977   5227   
new file mode 100644
 3978   5228   
index 0000000..82da9be
 3979         -
-- /dev/null
        5229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 3980   5230   
@@ -0,0 +1,3 @@
        5231  +
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
        5232  +
Host:example.amazonaws.com
        5233  +
 3981   5234   
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
 3982   5235   
similarity index 99%
 3983   5236   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 3984   5237   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 3985   5238   
index ef06e89..4aab9a2 100644
 3986   5239   
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
 3987   5240   
similarity index 80%
 3988   5241   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 3989   5242   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 3990   5243   
index da760cd..a149694 100644
 3991         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 3992   5245   
@@ -1,3 +1,2 @@
 3993   5246   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 3994   5247   
Host:example.amazonaws.com
 3995         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3996   5248   
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
 3997   5249   
new file mode 100644
 3998   5250   
index 0000000..0468d80
 3999         -
-- /dev/null
        5251  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4000   5252   
@@ -0,0 +1,12 @@
        5253  +
{
        5254  +
    "credentials": {
        5255  +
        "access_key_id": "AKIDEXAMPLE",
        5256  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5257  +
    },
        5258  +
    "expiration_in_seconds": 3600,
        5259  +
    "normalize": true,
        5260  +
    "region": "us-east-1",
        5261  +
    "service": "service",
        5262  +
    "sign_body": false,
        5263  +
    "timestamp": "2015-08-30T12:36:00Z"
        5264  +
}
              \
 No newline at end of file
 4001   5265   
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
 4002   5266   
new file mode 100644
 4003   5267   
index 0000000..0f1afe7
 4004         -
-- /dev/null
        5268  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4005   5269   
@@ -0,0 +1,9 @@
        5270  +
GET
        5271  +
/%E1%88%B4
        5272  +
        5273  +
host:example.amazonaws.com
        5274  +
x-amz-date:20150830T123600Z
        5275  +
x-amz-region-set:us-east-1
        5276  +
        5277  +
host;x-amz-date;x-amz-region-set
        5278  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4006   5279   
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
 4007   5280   
new file mode 100644
 4008   5281   
index 0000000..4b9af6c
 4009         -
-- /dev/null
        5282  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4010   5283   
@@ -0,0 +1 @@
        5284  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4011   5285   
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
 4012   5286   
new file mode 100644
 4013   5287   
index 0000000..d42d7b3
 4014         -
-- /dev/null
        5288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4015   5289   
@@ -0,0 +1,6 @@
        5290  +
GET /ሴ HTTP/1.1
        5291  +
Host:example.amazonaws.com
        5292  +
X-Amz-Date:20150830T123600Z
        5293  +
X-Amz-Region-Set:us-east-1
        5294  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        5295  +
 4016   5296   
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
 4017   5297   
new file mode 100644
 4018   5298   
index 0000000..0827f62
 4019         -
-- /dev/null
        5299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4020   5300   
@@ -0,0 +1,4 @@
        5301  +
AWS4-ECDSA-P256-SHA256
        5302  +
20150830T123600Z
        5303  +
20150830/service/aws4_request
        5304  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4021   5305   
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
 4022   5306   
new file mode 100644
 4023   5307   
index 0000000..379dcb2
 4024         -
-- /dev/null
        5308  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4025   5309   
@@ -0,0 +1,4 @@
        5310  +
{
        5311  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5312  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5313  +
}
 4026   5314   
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
 4027   5315   
new file mode 100644
 4028   5316   
index 0000000..a41a2f8
 4029         -
-- /dev/null
        5317  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4030   5318   
@@ -0,0 +1,7 @@
        5319  +
GET
        5320  +
/%E1%88%B4
        5321  +
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
        5322  +
host:example.amazonaws.com
        5323  +
        5324  +
host
        5325  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4031   5326   
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
 4032   5327   
new file mode 100644
 4033   5328   
index 0000000..a5c7f4f
 4034         -
-- /dev/null
        5329  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4035   5330   
@@ -0,0 +1 @@
        5331  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4036   5332   
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
 4037   5333   
new file mode 100644
 4038   5334   
index 0000000..492ed33
 4039         -
-- /dev/null
        5335  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4040   5336   
@@ -0,0 +1,3 @@
        5337  +
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
        5338  +
Host:example.amazonaws.com
        5339  +
 4041   5340   
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
 4042   5341   
new file mode 100644
 4043   5342   
index 0000000..a93108f
 4044         -
-- /dev/null
        5343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4045   5344   
@@ -0,0 +1,4 @@
        5345  +
AWS4-ECDSA-P256-SHA256
        5346  +
20150830T123600Z
        5347  +
20150830/service/aws4_request
        5348  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4046   5349   
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
 4047   5350   
new file mode 100644
 4048   5351   
index 0000000..9e273f6
 4049         -
-- /dev/null
        5352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4050   5353   
@@ -0,0 +1,2 @@
        5354  +
GET /ሴ HTTP/1.1
        5355  +
Host:example.amazonaws.com
 4051   5356   
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
 4052   5357   
new file mode 100644
 4053   5358   
index 0000000..0468d80
 4054         -
-- /dev/null
        5359  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4055   5360   
@@ -0,0 +1,12 @@
        5361  +
{
        5362  +
    "credentials": {
        5363  +
        "access_key_id": "AKIDEXAMPLE",
        5364  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5365  +
    },
        5366  +
    "expiration_in_seconds": 3600,
        5367  +
    "normalize": true,
        5368  +
    "region": "us-east-1",
        5369  +
    "service": "service",
        5370  +
    "sign_body": false,
        5371  +
    "timestamp": "2015-08-30T12:36:00Z"
        5372  +
}
              \
 No newline at end of file
 4056   5373   
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
 4057   5374   
similarity index 99%
 4058   5375   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4059   5376   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4060   5377   
index bb9d4bf..edc0bb4 100644
 4061   5378   
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
 4062   5379   
new file mode 100644
 4063   5380   
index 0000000..ee9a272
 4064         -
-- /dev/null
        5381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4065   5382   
@@ -0,0 +1 @@
        5383  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4066   5384   
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
 4067   5385   
new file mode 100644
 4068   5386   
index 0000000..2090343
 4069         -
-- /dev/null
        5387  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4070   5388   
@@ -0,0 +1,6 @@
        5389  +
GET /?Param1=value1 HTTP/1.1
        5390  +
Host:example.amazonaws.com
        5391  +
X-Amz-Date:20150830T123600Z
        5392  +
X-Amz-Region-Set:us-east-1
        5393  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        5394  +
 4071   5395   
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
 4072   5396   
similarity index 99%
 4073   5397   
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
 4074   5398   
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
 4075   5399   
index a176f1d..06ed74f 100644
 4076   5400   
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
 4077   5401   
new file mode 100644
 4078   5402   
index 0000000..379dcb2
 4079         -
-- /dev/null
        5403  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4080   5404   
@@ -0,0 +1,4 @@
        5405  +
{
        5406  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5407  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5408  +
}
 4081   5409   
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
 4082   5410   
similarity index 99%
 4083   5411   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4084   5412   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4085   5413   
index 344384b..a875d70 100644
 4086   5414   
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
 4087   5415   
new file mode 100644
 4088   5416   
index 0000000..ef93624
 4089         -
-- /dev/null
        5417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4090   5418   
@@ -0,0 +1 @@
        5419  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4091   5420   
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
 4092   5421   
new file mode 100644
 4093   5422   
index 0000000..92829f7
 4094         -
-- /dev/null
        5423  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4095   5424   
@@ -0,0 +1,3 @@
        5425  +
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
        5426  +
Host:example.amazonaws.com
        5427  +
 4096   5428   
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
 4097   5429   
similarity index 99%
 4098   5430   
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
 4099   5431   
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
 4100   5432   
index b625052..4ff9191 100644
 4101   5433   
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
 4102   5434   
similarity index 67%
 4103   5435   
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
 4104   5436   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4105   5437   
index 970d0a0..f4a03bb 100644
 4106         -
-- 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
        5438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4107   5439   
@@ -1,3 +1,2 @@
 4108   5440   
GET /?Param1=value1 HTTP/1.1
 4109   5441   
Host:example.amazonaws.com
 4110         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4111   5442   
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
 4112   5443   
new file mode 100644
 4113   5444   
index 0000000..0468d80
 4114         -
-- /dev/null
        5445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4115   5446   
@@ -0,0 +1,12 @@
        5447  +
{
        5448  +
    "credentials": {
        5449  +
        "access_key_id": "AKIDEXAMPLE",
        5450  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5451  +
    },
        5452  +
    "expiration_in_seconds": 3600,
        5453  +
    "normalize": true,
        5454  +
    "region": "us-east-1",
        5455  +
    "service": "service",
        5456  +
    "sign_body": false,
        5457  +
    "timestamp": "2015-08-30T12:36:00Z"
        5458  +
}
              \
 No newline at end of file
 4116   5459   
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
 4117   5460   
new file mode 100644
 4118   5461   
index 0000000..da07537
 4119         -
-- /dev/null
        5462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4120   5463   
@@ -0,0 +1,9 @@
        5464  +
GET
        5465  +
/
        5466  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        5467  +
host:example.amazonaws.com
        5468  +
x-amz-date:20150830T123600Z
        5469  +
x-amz-region-set:us-east-1
        5470  +
        5471  +
host;x-amz-date;x-amz-region-set
        5472  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4121   5473   
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
 4122   5474   
new file mode 100644
 4123   5475   
index 0000000..edb21e5
 4124         -
-- /dev/null
        5476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4125   5477   
@@ -0,0 +1 @@
        5478  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4126   5479   
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
 4127   5480   
new file mode 100644
 4128   5481   
index 0000000..e60394c
 4129         -
-- /dev/null
        5482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4130   5483   
@@ -0,0 +1,6 @@
        5484  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5485  +
Host:example.amazonaws.com
        5486  +
X-Amz-Date:20150830T123600Z
        5487  +
X-Amz-Region-Set:us-east-1
        5488  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        5489  +
 4131   5490   
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
 4132   5491   
new file mode 100644
 4133   5492   
index 0000000..1dfc886
 4134         -
-- /dev/null
        5493  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4135   5494   
@@ -0,0 +1,4 @@
        5495  +
AWS4-ECDSA-P256-SHA256
        5496  +
20150830T123600Z
        5497  +
20150830/service/aws4_request
        5498  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4136   5499   
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
 4137   5500   
new file mode 100644
 4138   5501   
index 0000000..379dcb2
 4139         -
-- /dev/null
        5502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4140   5503   
@@ -0,0 +1,4 @@
        5504  +
{
        5505  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5506  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5507  +
}
 4141   5508   
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
 4142   5509   
new file mode 100644
 4143   5510   
index 0000000..e94dc0c
 4144         -
-- /dev/null
        5511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4145   5512   
@@ -0,0 +1,7 @@
        5513  +
GET
        5514  +
/
        5515  +
%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
        5516  +
host:example.amazonaws.com
        5517  +
        5518  +
host
        5519  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4146   5520   
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
 4147   5521   
new file mode 100644
 4148   5522   
index 0000000..7489437
 4149         -
-- /dev/null
        5523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4150   5524   
@@ -0,0 +1 @@
        5525  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4151   5526   
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
 4152   5527   
new file mode 100644
 4153   5528   
index 0000000..90c0e73
 4154         -
-- /dev/null
        5529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4155   5530   
@@ -0,0 +1,3 @@
        5531  +
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
        5532  +
Host:example.amazonaws.com
        5533  +
 4156   5534   
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
 4157   5535   
new file mode 100644
 4158   5536   
index 0000000..ab8a711
 4159         -
-- /dev/null
        5537  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4160   5538   
@@ -0,0 +1,4 @@
        5539  +
AWS4-ECDSA-P256-SHA256
        5540  +
20150830T123600Z
        5541  +
20150830/service/aws4_request
        5542  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4161   5543   
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
 4162   5544   
new file mode 100644
 4163   5545   
index 0000000..368c6e3
 4164         -
-- /dev/null
        5546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4165   5547   
@@ -0,0 +1,2 @@
        5548  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5549  +
Host:example.amazonaws.com
 4166   5550   
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
 4167   5551   
new file mode 100644
 4168   5552   
index 0000000..0468d80
 4169         -
-- /dev/null
        5553  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4170   5554   
@@ -0,0 +1,12 @@
        5555  +
{
        5556  +
    "credentials": {
        5557  +
        "access_key_id": "AKIDEXAMPLE",
        5558  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5559  +
    },
        5560  +
    "expiration_in_seconds": 3600,
        5561  +
    "normalize": true,
        5562  +
    "region": "us-east-1",
        5563  +
    "service": "service",
        5564  +
    "sign_body": false,
        5565  +
    "timestamp": "2015-08-30T12:36:00Z"
        5566  +
}
              \
 No newline at end of file
 4171   5567   
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
 4172   5568   
similarity index 99%
 4173   5569   
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
 4174   5570   
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
 4175   5571   
index 74f625a..3db56f7 100644
 4176   5572   
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
 4177   5573   
new file mode 100644
 4178   5574   
index 0000000..e6042bc
 4179         -
-- /dev/null
        5575  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4180   5576   
@@ -0,0 +1 @@
        5577  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4181   5578   
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
 4182   5579   
new file mode 100644
 4183   5580   
index 0000000..5505969
 4184         -
-- /dev/null
        5581  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4185   5582   
@@ -0,0 +1,6 @@
        5583  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        5584  +
Host:example.amazonaws.com
        5585  +
X-Amz-Date:20150830T123600Z
        5586  +
X-Amz-Region-Set:us-east-1
        5587  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        5588  +
 4186   5589   
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
 4187   5590   
similarity index 99%
 4188   5591   
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
 4189   5592   
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
 4190   5593   
index 44873b7..e8f5e31 100644
 4191   5594   
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
 4192   5595   
new file mode 100644
 4193   5596   
index 0000000..379dcb2
 4194         -
-- /dev/null
        5597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4195   5598   
@@ -0,0 +1,4 @@
        5599  +
{
        5600  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5601  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5602  +
}
 4196   5603   
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
 4197   5604   
similarity index 99%
 4198   5605   
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
 4199   5606   
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
 4200   5607   
index 6d30727..3fe6a9f 100644
 4201   5608   
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
 4202   5609   
new file mode 100644
 4203   5610   
index 0000000..3f35de8
 4204         -
-- /dev/null
        5611  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4205   5612   
@@ -0,0 +1 @@
        5613  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 4206   5614   
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
 4207   5615   
new file mode 100644
 4208   5616   
index 0000000..30b336b
 4209         -
-- /dev/null
        5617  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 4210   5618   
@@ -0,0 +1,3 @@
        5619  +
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
        5620  +
Host:example.amazonaws.com
        5621  +
 4211   5622   
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
 4212   5623   
similarity index 99%
 4213   5624   
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
 4214   5625   
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
 4215   5626   
index 99d0510..7f0565f 100644
 4216   5627   
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
 4217   5628   
similarity index 100%
 4218   5629   
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
 4219   5630   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 4220   5631   
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
 4221   5632   
new file mode 100644
 4222   5633   
index 0000000..0468d80
 4223         -
-- /dev/null
        5634  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 4224   5635   
@@ -0,0 +1,12 @@
        5636  +
{
        5637  +
    "credentials": {
        5638  +
        "access_key_id": "AKIDEXAMPLE",
        5639  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5640  +
    },
        5641  +
    "expiration_in_seconds": 3600,
        5642  +
    "normalize": true,
        5643  +
    "region": "us-east-1",
        5644  +
    "service": "service",
        5645  +
    "sign_body": false,
        5646  +
    "timestamp": "2015-08-30T12:36:00Z"
        5647  +
}
              \
 No newline at end of file
 4225   5648   
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
 4226   5649   
similarity index 99%
 4227   5650   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 4228   5651   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4229   5652   
index 816c862..cc4537a 100644
 4230   5653   
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
 4231   5654   
new file mode 100644
 4232   5655   
index 0000000..70d38c1
 4233         -
-- /dev/null
        5656  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 4234   5657   
@@ -0,0 +1 @@
        5658  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 4235   5659   
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
 4236   5660   
new file mode 100644
 4237   5661   
index 0000000..0647eea
 4238         -
-- /dev/null
        5662  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 4239   5663   
@@ -0,0 +1,6 @@
        5664  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5665  +
Host:example.amazonaws.com
        5666  +
X-Amz-Date:20150830T123600Z
        5667  +
X-Amz-Region-Set:us-east-1
        5668  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        5669  +
 4240   5670   
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
 4241   5671   
similarity index 99%
 4242   5672   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 4243   5673   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4244   5674   
index 6129fc5..cc19d14 100644
 4245   5675   
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
 4246   5676   
new file mode 100644
 4247   5677   
index 0000000..379dcb2
 4248         -
-- /dev/null
        5678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 4249   5679   
@@ -0,0 +1,4 @@
        5680  +
{
        5681  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5682  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5683  +
}
 4250   5684   
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
 4251   5685   
similarity index 99%
 4252   5686   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 4253   5687   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4254   5688   
index b77ee9f..ed6a10e 100644
 4255   5689   
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
 4256   5690   
new file mode 100644
 4257   5691   
index 0000000..2ceba7b
 4258         -
-- /dev/null
        5692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 4259   5693   
@@ -0,0 +1 @@
        5694  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 4260   5695   
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
 4261   5696   
new file mode 100644
 4262   5697   
index 0000000..0cd6d0a
 4263         -
-- /dev/null
        5698  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 4264   5699   
@@ -0,0 +1,3 @@
        5700  +
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
        5701  +
Host:example.amazonaws.com
        5702  +
 4265   5703   
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
 4266   5704   
similarity index 99%
 4267   5705   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 4268   5706   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4269   5707   
index 1cfed7a..aad1421 100644
 4270   5708   
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
 4271   5709   
similarity index 86%
 4272   5710   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 4273   5711   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4274   5712   
index d2833b3..36b2fe3 100644
 4275         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        5713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4276   5714   
@@ -1,3 +1,2 @@
 4277   5715   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4278   5716   
Host:example.amazonaws.com
 4279         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4280   5717   
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
 4281   5718   
new file mode 100644
 4282   5719   
index 0000000..0468d80
 4283         -
-- /dev/null
        5720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 4284   5721   
@@ -0,0 +1,12 @@
        5722  +
{
        5723  +
    "credentials": {
        5724  +
        "access_key_id": "AKIDEXAMPLE",
        5725  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5726  +
    },
        5727  +
    "expiration_in_seconds": 3600,
        5728  +
    "normalize": true,
        5729  +
    "region": "us-east-1",
        5730  +
    "service": "service",
        5731  +
    "sign_body": false,
        5732  +
    "timestamp": "2015-08-30T12:36:00Z"
        5733  +
}
              \
 No newline at end of file
 4285   5734   
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
 4286   5735   
new file mode 100644
 4287   5736   
index 0000000..76db73d
 4288         -
-- /dev/null
        5737  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 4289   5738   
@@ -0,0 +1,9 @@
        5739  +
GET
        5740  +
/
        5741  +
        5742  +
host:example.amazonaws.com
        5743  +
x-amz-date:20150830T123600Z
        5744  +
x-amz-region-set:us-east-1
        5745  +
        5746  +
host;x-amz-date;x-amz-region-set
        5747  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4290   5748   
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
 4291   5749   
new file mode 100644
 4292   5750   
index 0000000..281cc62
 4293         -
-- /dev/null
        5751  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 4294   5752   
@@ -0,0 +1 @@
        5753  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 4295   5754   
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
 4296   5755   
new file mode 100644
 4297   5756   
index 0000000..cce9925
 4298         -
-- /dev/null
        5757  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 4299   5758   
@@ -0,0 +1,6 @@
        5759  +
GET / HTTP/1.1
        5760  +
Host:example.amazonaws.com
        5761  +
X-Amz-Date:20150830T123600Z
        5762  +
X-Amz-Region-Set:us-east-1
        5763  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        5764  +
 4300   5765   
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
 4301   5766   
new file mode 100644
 4302   5767   
index 0000000..600f1d8
 4303         -
-- /dev/null
        5768  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 4304   5769   
@@ -0,0 +1,4 @@
        5770  +
AWS4-ECDSA-P256-SHA256
        5771  +
20150830T123600Z
        5772  +
20150830/service/aws4_request
        5773  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4305   5774   
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
 4306   5775   
new file mode 100644
 4307   5776   
index 0000000..379dcb2
 4308         -
-- /dev/null
        5777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 4309   5778   
@@ -0,0 +1,4 @@
        5779  +
{
        5780  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5781  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5782  +
}
 4310   5783   
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
 4311   5784   
new file mode 100644
 4312   5785   
index 0000000..779c51c
 4313         -
-- /dev/null
        5786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 4314   5787   
@@ -0,0 +1,7 @@
        5788  +
GET
        5789  +
/
        5790  +
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
        5791  +
host:example.amazonaws.com
        5792  +
        5793  +
host
        5794  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4315   5795   
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
 4316   5796   
new file mode 100644
 4317   5797   
index 0000000..2979e5e
 4318         -
-- /dev/null
        5798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 4319   5799   
@@ -0,0 +1 @@
        5800  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 4320   5801   
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
 4321   5802   
new file mode 100644
 4322   5803   
index 0000000..1b3179c
 4323         -
-- /dev/null
        5804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 4324   5805   
@@ -0,0 +1,3 @@
        5806  +
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
        5807  +
Host:example.amazonaws.com
        5808  +
 4325   5809   
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
 4326   5810   
new file mode 100644
 4327   5811   
index 0000000..6e29a7e
 4328         -
-- /dev/null
        5812  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 4329   5813   
@@ -0,0 +1,4 @@
        5814  +
AWS4-ECDSA-P256-SHA256
        5815  +
20150830T123600Z
        5816  +
20150830/service/aws4_request
        5817  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4330   5818   
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
 4331   5819   
similarity index 60%
 4332   5820   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 4333   5821   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4334   5822   
index 0f7a9bf..e659c3b 100644
 4335         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        5823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4336   5824   
@@ -1,3 +1,2 @@
 4337   5825   
GET / HTTP/1.1
 4338   5826   
Host:example.amazonaws.com
 4339         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4340   5827   
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
 4341   5828   
new file mode 100644
 4342   5829   
index 0000000..0468d80
 4343         -
-- /dev/null
        5830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 4344   5831   
@@ -0,0 +1,12 @@
        5832  +
{
        5833  +
    "credentials": {
        5834  +
        "access_key_id": "AKIDEXAMPLE",
        5835  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5836  +
    },
        5837  +
    "expiration_in_seconds": 3600,
        5838  +
    "normalize": true,
        5839  +
    "region": "us-east-1",
        5840  +
    "service": "service",
        5841  +
    "sign_body": false,
        5842  +
    "timestamp": "2015-08-30T12:36:00Z"
        5843  +
}
              \
 No newline at end of file
 4345   5844   
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
 4346   5845   
new file mode 100644
 4347   5846   
index 0000000..8841ddf
 4348         -
-- /dev/null
        5847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 4349   5848   
@@ -0,0 +1,9 @@
        5849  +
GET
        5850  +
/
        5851  +
%E1%88%B4=bar
        5852  +
host:example.amazonaws.com
        5853  +
x-amz-date:20150830T123600Z
        5854  +
x-amz-region-set:us-east-1
        5855  +
        5856  +
host;x-amz-date;x-amz-region-set
        5857  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4350   5858   
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
 4351   5859   
new file mode 100644
 4352   5860   
index 0000000..1497add
 4353         -
-- /dev/null
        5861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 4354   5862   
@@ -0,0 +1 @@
        5863  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 4355   5864   
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
 4356   5865   
new file mode 100644
 4357   5866   
index 0000000..961bc10
 4358         -
-- /dev/null
        5867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 4359   5868   
@@ -0,0 +1,6 @@
        5869  +
GET /?ሴ=bar HTTP/1.1
        5870  +
Host:example.amazonaws.com
        5871  +
X-Amz-Date:20150830T123600Z
        5872  +
X-Amz-Region-Set:us-east-1
        5873  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        5874  +
 4360   5875   
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
 4361   5876   
new file mode 100644
 4362   5877   
index 0000000..e78ed70
 4363         -
-- /dev/null
        5878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 4364   5879   
@@ -0,0 +1,4 @@
        5880  +
AWS4-ECDSA-P256-SHA256
        5881  +
20150830T123600Z
        5882  +
20150830/service/aws4_request
        5883  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 4365   5884   
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
 4366   5885   
new file mode 100644
 4367   5886   
index 0000000..379dcb2
 4368         -
-- /dev/null
        5887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 4369   5888   
@@ -0,0 +1,4 @@
        5889  +
{
        5890  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5891  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5892  +
}
 4370   5893   
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
 4371   5894   
new file mode 100644
 4372   5895   
index 0000000..6d5ae93
 4373         -
-- /dev/null
        5896  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 4374   5897   
@@ -0,0 +1,7 @@
        5898  +
GET
        5899  +
/
        5900  +
%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
        5901  +
host:example.amazonaws.com
        5902  +
        5903  +
host
        5904  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4375   5905   
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
 4376   5906   
new file mode 100644
 4377   5907   
index 0000000..92107f2
 4378         -
-- /dev/null
        5908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 4379   5909   
@@ -0,0 +1 @@
        5910  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 4380   5911   
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
 4381   5912   
new file mode 100644
 4382   5913   
index 0000000..bb8a75b
 4383         -
-- /dev/null
        5914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 4384   5915   
@@ -0,0 +1,3 @@
        5916  +
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
        5917  +
Host:example.amazonaws.com
        5918  +
 4385   5919   
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
 4386   5920   
new file mode 100644
 4387   5921   
index 0000000..9fa94c7
 4388         -
-- /dev/null
        5922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 4389   5923   
@@ -0,0 +1,4 @@
        5924  +
AWS4-ECDSA-P256-SHA256
        5925  +
20150830T123600Z
        5926  +
20150830/service/aws4_request
        5927  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 4390   5928   
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
 4391   5929   
new file mode 100644
 4392   5930   
index 0000000..aff333a
 4393         -
-- /dev/null
        5931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 4394   5932   
@@ -0,0 +1,2 @@
        5933  +
GET /?ሴ=bar HTTP/1.1
        5934  +
Host:example.amazonaws.com
 4395   5935   
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
 4396   5936   
new file mode 100644
 4397   5937   
index 0000000..a334e18
 4398         -
-- /dev/null
        5938  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 4399   5939   
@@ -0,0 +1,13 @@
        5940  +
{
        5941  +
    "credentials": {
        5942  +
        "access_key_id": "AKIDEXAMPLE",
        5943  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        5944  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        5945  +
    },
        5946  +
    "expiration_in_seconds": 3600,
        5947  +
    "normalize": true,
        5948  +
    "region": "us-east-1",
        5949  +
    "service": "service",
        5950  +
    "sign_body": false,
        5951  +
    "timestamp": "2015-08-30T12:36:00Z"
        5952  +
}
              \
 No newline at end of file
 4400   5953   
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
 4401   5954   
similarity index 99%
 4402   5955   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 4403   5956   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 4404   5957   
index f14defd..0e9ad42 100644
 4405   5958   
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
 4406   5959   
new file mode 100644
 4407   5960   
index 0000000..a7673b5
 4408         -
-- /dev/null
        5961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 4409   5962   
@@ -0,0 +1 @@
        5963  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 4410   5964   
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
 4411   5965   
new file mode 100644
 4412   5966   
index 0000000..ed16e76
 4413         -
-- /dev/null
        5967  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 4414   5968   
@@ -0,0 +1,7 @@
        5969  +
GET / HTTP/1.1
        5970  +
Host:example.amazonaws.com
        5971  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        5972  +
X-Amz-Date:20150830T123600Z
        5973  +
X-Amz-Region-Set:us-east-1
        5974  +
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
        5975  +
 4415   5976   
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
 4416   5977   
similarity index 99%
 4417   5978   
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
 4418   5979   
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
 4419   5980   
index 4edece5..6c1ec65 100644
 4420   5981   
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
 4421   5982   
new file mode 100644
 4422   5983   
index 0000000..379dcb2
 4423         -
-- /dev/null
        5984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 4424   5985   
@@ -0,0 +1,4 @@
        5986  +
{
        5987  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5988  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5989  +
}
 4425   5990   
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
 4426   5991   
similarity index 99%
 4427   5992   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 4428   5993   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 4429   5994   
index 7c042af..1876b42 100644
 4430   5995   
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
 4431   5996   
new file mode 100644
 4432   5997   
index 0000000..903dfb4
 4433         -
-- /dev/null
        5998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 4434   5999   
@@ -0,0 +1 @@
        6000  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 4435   6001   
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
 4436   6002   
new file mode 100644
 4437   6003   
index 0000000..bf1d246
 4438         -
-- /dev/null
        6004  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 4439   6005   
@@ -0,0 +1,3 @@
        6006  +
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
        6007  +
Host:example.amazonaws.com
        6008  +
 4440   6009   
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
 4441   6010   
similarity index 99%
 4442   6011   
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
 4443   6012   
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
 4444   6013   
index 0fd066a..f1b1790 100644
 4445   6014   
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
 4446   6015   
similarity index 60%
 4447   6016   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 4448   6017   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4449   6018   
index 0f7a9bf..e659c3b 100644
 4450         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6019  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4451   6020   
@@ -1,3 +1,2 @@
 4452   6021   
GET / HTTP/1.1
 4453   6022   
Host:example.amazonaws.com
 4454         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4455   6023   
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
 4456   6024   
new file mode 100644
 4457   6025   
index 0000000..76db73d
 4458         -
-- /dev/null
        6026  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 4459   6027   
@@ -0,0 +1,9 @@
        6028  +
GET
        6029  +
/
        6030  +
        6031  +
host:example.amazonaws.com
        6032  +
x-amz-date:20150830T123600Z
        6033  +
x-amz-region-set:us-east-1
        6034  +
        6035  +
host;x-amz-date;x-amz-region-set
        6036  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4460   6037   
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
 4461   6038   
new file mode 100644
 4462   6039   
index 0000000..0468d80
 4463         -
-- /dev/null
        6040  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 4464   6041   
@@ -0,0 +1,12 @@
        6042  +
{
        6043  +
    "credentials": {
        6044  +
        "access_key_id": "AKIDEXAMPLE",
        6045  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6046  +
    },
        6047  +
    "expiration_in_seconds": 3600,
        6048  +
    "normalize": true,
        6049  +
    "region": "us-east-1",
        6050  +
    "service": "service",
        6051  +
    "sign_body": false,
        6052  +
    "timestamp": "2015-08-30T12:36:00Z"
        6053  +
}
              \
 No newline at end of file
 4465   6054   
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
 4466   6055   
new file mode 100644
 4467   6056   
index 0000000..76db73d
 4468         -
-- /dev/null
        6057  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 4469   6058   
@@ -0,0 +1,9 @@
        6059  +
GET
        6060  +
/
        6061  +
        6062  +
host:example.amazonaws.com
        6063  +
x-amz-date:20150830T123600Z
        6064  +
x-amz-region-set:us-east-1
        6065  +
        6066  +
host;x-amz-date;x-amz-region-set
        6067  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4470   6068   
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
 4471   6069   
new file mode 100644
 4472   6070   
index 0000000..a96ff24
 4473         -
-- /dev/null
        6071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 4474   6072   
@@ -0,0 +1 @@
        6073  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 4475   6074   
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
 4476   6075   
new file mode 100644
 4477   6076   
index 0000000..689078b
 4478         -
-- /dev/null
        6077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 4479   6078   
@@ -0,0 +1,6 @@
        6079  +
GET / HTTP/1.1
        6080  +
Host:example.amazonaws.com
        6081  +
X-Amz-Date:20150830T123600Z
        6082  +
X-Amz-Region-Set:us-east-1
        6083  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6084  +
 4480   6085   
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
 4481   6086   
new file mode 100644
 4482   6087   
index 0000000..600f1d8
 4483         -
-- /dev/null
        6088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 4484   6089   
@@ -0,0 +1,4 @@
        6090  +
AWS4-ECDSA-P256-SHA256
        6091  +
20150830T123600Z
        6092  +
20150830/service/aws4_request
        6093  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4485   6094   
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
 4486   6095   
new file mode 100644
 4487   6096   
index 0000000..379dcb2
 4488         -
-- /dev/null
        6097  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 4489   6098   
@@ -0,0 +1,4 @@
        6099  +
{
        6100  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6101  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6102  +
}
 4490   6103   
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
 4491   6104   
new file mode 100644
 4492   6105   
index 0000000..779c51c
 4493         -
-- /dev/null
        6106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 4494   6107   
@@ -0,0 +1,7 @@
        6108  +
GET
        6109  +
/
        6110  +
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
        6111  +
host:example.amazonaws.com
        6112  +
        6113  +
host
        6114  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4495   6115   
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
 4496   6116   
new file mode 100644
 4497   6117   
index 0000000..cc42158
 4498         -
-- /dev/null
        6118  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 4499   6119   
@@ -0,0 +1 @@
        6120  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 4500   6121   
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
 4501   6122   
new file mode 100644
 4502   6123   
index 0000000..dc6d01d
 4503         -
-- /dev/null
        6124  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 4504   6125   
@@ -0,0 +1,3 @@
        6126  +
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
        6127  +
Host:example.amazonaws.com
        6128  +
 4505   6129   
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
 4506   6130   
new file mode 100644
 4507   6131   
index 0000000..6e29a7e
 4508         -
-- /dev/null
        6132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 4509   6133   
@@ -0,0 +1,4 @@
        6134  +
AWS4-ECDSA-P256-SHA256
        6135  +
20150830T123600Z
        6136  +
20150830/service/aws4_request
        6137  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4510   6138   
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
 4511   6139   
new file mode 100644
 4512   6140   
index 0000000..e659c3b
 4513         -
-- /dev/null
        6141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 4514   6142   
@@ -0,0 +1,2 @@
        6143  +
GET / HTTP/1.1
        6144  +
Host:example.amazonaws.com
 4515   6145   
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
 4516   6146   
new file mode 100644
 4517   6147   
index 0000000..600f1d8
 4518         -
-- /dev/null
        6148  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 4519   6149   
@@ -0,0 +1,4 @@
        6150  +
AWS4-ECDSA-P256-SHA256
        6151  +
20150830T123600Z
        6152  +
20150830/service/aws4_request
        6153  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4520   6154   
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
 4521   6155   
new file mode 100644
 4522   6156   
index 0000000..0468d80
 4523         -
-- /dev/null
        6157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 4524   6158   
@@ -0,0 +1,12 @@
        6159  +
{
        6160  +
    "credentials": {
        6161  +
        "access_key_id": "AKIDEXAMPLE",
        6162  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6163  +
    },
        6164  +
    "expiration_in_seconds": 3600,
        6165  +
    "normalize": true,
        6166  +
    "region": "us-east-1",
        6167  +
    "service": "service",
        6168  +
    "sign_body": false,
        6169  +
    "timestamp": "2015-08-30T12:36:00Z"
        6170  +
}
              \
 No newline at end of file
 4525   6171   
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
 4526   6172   
similarity index 99%
 4527   6173   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 4528   6174   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 4529   6175   
index a6942c1..e881ac7 100644
 4530   6176   
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
 4531   6177   
new file mode 100644
 4532   6178   
index 0000000..4210210
 4533         -
-- /dev/null
        6179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 4534   6180   
@@ -0,0 +1 @@
        6181  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 4535   6182   
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
 4536   6183   
new file mode 100644
 4537   6184   
index 0000000..257b110
 4538         -
-- /dev/null
        6185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 4539   6186   
@@ -0,0 +1,6 @@
        6187  +
POST / HTTP/1.1
        6188  +
Host:example.amazonaws.com
        6189  +
X-Amz-Date:20150830T123600Z
        6190  +
X-Amz-Region-Set:us-east-1
        6191  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        6192  +
 4540   6193   
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
 4541   6194   
similarity index 99%
 4542   6195   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 4543   6196   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 4544   6197   
index d5650cb..f8adf13 100644
 4545   6198   
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
 4546   6199   
new file mode 100644
 4547   6200   
index 0000000..379dcb2
 4548         -
-- /dev/null
        6201  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 4549   6202   
@@ -0,0 +1,4 @@
        6203  +
{
        6204  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6205  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6206  +
}
 4550   6207   
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
 4551   6208   
similarity index 99%
 4552   6209   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 4553   6210   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 4554   6211   
index e48ce07..5ea8e3c 100644
 4555   6212   
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
 4556   6213   
new file mode 100644
 4557   6214   
index 0000000..9e2069e
 4558         -
-- /dev/null
        6215  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 4559   6216   
@@ -0,0 +1 @@
        6217  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 4560   6218   
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
 4561   6219   
new file mode 100644
 4562   6220   
index 0000000..67f5d29
 4563         -
-- /dev/null
        6221  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 4564   6222   
@@ -0,0 +1,3 @@
        6223  +
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
        6224  +
Host:example.amazonaws.com
        6225  +
 4565   6226   
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
 4566   6227   
similarity index 99%
 4567   6228   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 4568   6229   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 4569   6230   
index 34e3382..711c162 100644
 4570   6231   
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
 4571   6232   
similarity index 61%
 4572   6233   
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
 4573   6234   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4574   6235   
index 3dc4179..3f0a82a 100644
 4575         -
-- 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
        6236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4576   6237   
@@ -1,3 +1,2 @@
 4577   6238   
POST / HTTP/1.1
 4578   6239   
Host:example.amazonaws.com
 4579         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4580   6240   
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
 4581   6241   
new file mode 100644
 4582   6242   
index 0000000..0468d80
 4583         -
-- /dev/null
        6243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 4584   6244   
@@ -0,0 +1,12 @@
        6245  +
{
        6246  +
    "credentials": {
        6247  +
        "access_key_id": "AKIDEXAMPLE",
        6248  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6249  +
    },
        6250  +
    "expiration_in_seconds": 3600,
        6251  +
    "normalize": true,
        6252  +
    "region": "us-east-1",
        6253  +
    "service": "service",
        6254  +
    "sign_body": false,
        6255  +
    "timestamp": "2015-08-30T12:36:00Z"
        6256  +
}
              \
 No newline at end of file
 4585   6257   
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
 4586   6258   
similarity index 99%
 4587   6259   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 4588   6260   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 4589   6261   
index a8e1727..2883822 100644
 4590   6262   
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
 4591   6263   
new file mode 100644
 4592   6264   
index 0000000..e3c2e6e
 4593         -
-- /dev/null
        6265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 4594   6266   
@@ -0,0 +1 @@
        6267  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 4595   6268   
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
 4596   6269   
new file mode 100644
 4597   6270   
index 0000000..1d6e288
 4598         -
-- /dev/null
        6271  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 4599   6272   
@@ -0,0 +1,7 @@
        6273  +
POST / HTTP/1.1
        6274  +
Host:example.amazonaws.com
        6275  +
My-Header1:value1
        6276  +
X-Amz-Date:20150830T123600Z
        6277  +
X-Amz-Region-Set:us-east-1
        6278  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        6279  +
 4600   6280   
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
 4601   6281   
similarity index 99%
 4602   6282   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 4603   6283   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 4604   6284   
index f6e3e9b..7c5236a 100644
 4605   6285   
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
 4606   6286   
new file mode 100644
 4607   6287   
index 0000000..379dcb2
 4608         -
-- /dev/null
        6288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 4609   6289   
@@ -0,0 +1,4 @@
        6290  +
{
        6291  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6292  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6293  +
}
 4610   6294   
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
 4611   6295   
similarity index 99%
 4612   6296   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 4613   6297   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 4614   6298   
index 0ae73e1..2cf3f29 100644
 4615   6299   
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
 4616   6300   
new file mode 100644
 4617   6301   
index 0000000..2a08401
 4618         -
-- /dev/null
        6302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 4619   6303   
@@ -0,0 +1 @@
        6304  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 4620   6305   
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
 4621   6306   
new file mode 100644
 4622   6307   
index 0000000..8d2343f
 4623         -
-- /dev/null
        6308  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 4624   6309   
@@ -0,0 +1,4 @@
        6310  +
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
        6311  +
Host:example.amazonaws.com
        6312  +
My-Header1:value1
        6313  +
 4625   6314   
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
 4626   6315   
similarity index 99%
 4627   6316   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 4628   6317   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 4629   6318   
index 8cb96bf..2c4db7a 100644
 4630   6319   
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
 4631   6320   
similarity index 69%
 4632   6321   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 4633   6322   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4634   6323   
index 0253f19..917720e 100644
 4635         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        6324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4636   6325   
@@ -1,4 +1,3 @@
 4637   6326   
POST / HTTP/1.1
 4638   6327   
Host:example.amazonaws.com
 4639   6328   
My-Header1:value1
 4640         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4641   6329   
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
 4642   6330   
new file mode 100644
 4643   6331   
index 0000000..0468d80
 4644         -
-- /dev/null
        6332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 4645   6333   
@@ -0,0 +1,12 @@
        6334  +
{
        6335  +
    "credentials": {
        6336  +
        "access_key_id": "AKIDEXAMPLE",
        6337  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6338  +
    },
        6339  +
    "expiration_in_seconds": 3600,
        6340  +
    "normalize": true,
        6341  +
    "region": "us-east-1",
        6342  +
    "service": "service",
        6343  +
    "sign_body": false,
        6344  +
    "timestamp": "2015-08-30T12:36:00Z"
        6345  +
}
              \
 No newline at end of file
 4646   6346   
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
 4647   6347   
similarity index 99%
 4648   6348   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 4649   6349   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 4650   6350   
index 1dc3ef8..164e65c 100644
 4651   6351   
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
 4652   6352   
new file mode 100644
 4653   6353   
index 0000000..7072b0e
 4654         -
-- /dev/null
        6354  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 4655   6355   
@@ -0,0 +1 @@
        6356  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 4656   6357   
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
 4657   6358   
new file mode 100644
 4658   6359   
index 0000000..17f5e3e
 4659         -
-- /dev/null
        6360  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 4660   6361   
@@ -0,0 +1,7 @@
        6362  +
POST / HTTP/1.1
        6363  +
Host:example.amazonaws.com
        6364  +
My-Header1:VALUE1
        6365  +
X-Amz-Date:20150830T123600Z
        6366  +
X-Amz-Region-Set:us-east-1
        6367  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        6368  +
 4661   6369   
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
 4662   6370   
similarity index 99%
 4663   6371   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 4664   6372   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 4665   6373   
index 59c7e45..620f54e 100644
 4666   6374   
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
 4667   6375   
new file mode 100644
 4668   6376   
index 0000000..379dcb2
 4669         -
-- /dev/null
        6377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 4670   6378   
@@ -0,0 +1,4 @@
        6379  +
{
        6380  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6381  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6382  +
}
 4671   6383   
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
 4672   6384   
similarity index 99%
 4673   6385   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 4674   6386   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 4675   6387   
index 377e6f3..23e0da3 100644
 4676   6388   
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
 4677   6389   
new file mode 100644
 4678   6390   
index 0000000..a18acb8
 4679         -
-- /dev/null
        6391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 4680   6392   
@@ -0,0 +1 @@
        6393  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 4681   6394   
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
 4682   6395   
new file mode 100644
 4683   6396   
index 0000000..7cbdcfa
 4684         -
-- /dev/null
        6397  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 4685   6398   
@@ -0,0 +1,4 @@
        6399  +
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
        6400  +
Host:example.amazonaws.com
        6401  +
My-Header1:VALUE1
        6402  +
 4686   6403   
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
 4687   6404   
similarity index 99%
 4688   6405   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 4689   6406   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 4690   6407   
index 84a7afd..0c90627 100644
 4691   6408   
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
 4692   6409   
similarity index 69%
 4693   6410   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 4694   6411   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4695   6412   
index 3f9987a..5f14c91 100644
 4696         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        6413  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4697   6414   
@@ -1,4 +1,3 @@
 4698   6415   
POST / HTTP/1.1
 4699   6416   
Host:example.amazonaws.com
 4700   6417   
My-Header1:VALUE1
 4701         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4702   6418   
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
 4703   6419   
new file mode 100644
 4704   6420   
index 0000000..8f1d5ce
 4705         -
-- /dev/null
        6421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 4706   6422   
@@ -0,0 +1,14 @@
        6423  +
{
        6424  +
    "credentials": {
        6425  +
        "access_key_id": "AKIDEXAMPLE",
        6426  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6427  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6428  +
    },
        6429  +
    "expiration_in_seconds": 3600,
        6430  +
    "normalize": true,
        6431  +
    "region": "us-east-1",
        6432  +
    "service": "service",
        6433  +
    "sign_body": false,
        6434  +
    "timestamp": "2015-08-30T12:36:00Z",
        6435  +
    "omit_session_token": true
        6436  +
}
 4707   6437   
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
 4708   6438   
similarity index 99%
 4709   6439   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 4710   6440   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 4711   6441   
index a6942c1..e881ac7 100644
 4712   6442   
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
 4713   6443   
new file mode 100644
 4714   6444   
index 0000000..9c5ecb9
 4715         -
-- /dev/null
        6445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 4716   6446   
@@ -0,0 +1 @@
        6447  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 4717   6448   
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
 4718   6449   
similarity index 52%
 4719   6450   
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
 4720   6451   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4721   6452   
index 9d91775..61b6527 100644
 4722         -
-- 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
        6453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4723   6454   
@@ -1,4 +1,7 @@
 4724   6455   
POST / HTTP/1.1
 4725   6456   
Host:example.amazonaws.com
 4726         -
X-Amz-Date:20150830T123600Z
 4727   6457   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6458  +
X-Amz-Date:20150830T123600Z
        6459  +
X-Amz-Region-Set:us-east-1
        6460  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        6461  +
 4728   6462   
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
 4729   6463   
similarity index 99%
 4730   6464   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 4731   6465   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 4732   6466   
index d5650cb..f8adf13 100644
 4733   6467   
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
 4734   6468   
new file mode 100644
 4735   6469   
index 0000000..379dcb2
 4736         -
-- /dev/null
        6470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 4737   6471   
@@ -0,0 +1,4 @@
        6472  +
{
        6473  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6474  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6475  +
}
 4738   6476   
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
 4739   6477   
similarity index 99%
 4740   6478   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 4741   6479   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 4742   6480   
index e48ce07..5ea8e3c 100644
 4743   6481   
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
 4744   6482   
new file mode 100644
 4745   6483   
index 0000000..ff8823a
 4746         -
-- /dev/null
        6484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 4747   6485   
@@ -0,0 +1 @@
        6486  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 4748   6487   
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
 4749   6488   
new file mode 100644
 4750   6489   
index 0000000..cfac41b
 4751         -
-- /dev/null
        6490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 4752   6491   
@@ -0,0 +1,3 @@
        6492  +
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
        6493  +
Host:example.amazonaws.com
        6494  +
 4753   6495   
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
 4754   6496   
similarity index 99%
 4755   6497   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 4756   6498   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 4757   6499   
index 34e3382..711c162 100644
 4758   6500   
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
 4759   6501   
similarity index 61%
 4760   6502   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 4761   6503   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4762   6504   
index 3dc4179..3f0a82a 100644
 4763         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        6505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4764   6506   
@@ -1,3 +1,2 @@
 4765   6507   
POST / HTTP/1.1
 4766   6508   
Host:example.amazonaws.com
 4767         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4768   6509   
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
 4769   6510   
new file mode 100644
 4770   6511   
index 0000000..5187392
 4771         -
-- /dev/null
        6512  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 4772   6513   
@@ -0,0 +1,14 @@
        6514  +
{
        6515  +
    "credentials": {
        6516  +
        "access_key_id": "AKIDEXAMPLE",
        6517  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6518  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6519  +
    },
        6520  +
    "expiration_in_seconds": 3600,
        6521  +
    "normalize": true,
        6522  +
    "region": "us-east-1",
        6523  +
    "service": "service",
        6524  +
    "sign_body": false,
        6525  +
    "timestamp": "2015-08-30T12:36:00Z",
        6526  +
    "omit_session_token": false
        6527  +
}
 4773   6528   
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
 4774   6529   
similarity index 99%
 4775   6530   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 4776   6531   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 4777   6532   
index dd408c8..e95924e 100644
 4778   6533   
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
 4779   6534   
new file mode 100644
 4780   6535   
index 0000000..1573f07
 4781         -
-- /dev/null
        6536  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 4782   6537   
@@ -0,0 +1 @@
        6538  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 4783   6539   
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
 4784   6540   
new file mode 100644
 4785   6541   
index 0000000..6ef9a08
 4786         -
-- /dev/null
        6542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 4787   6543   
@@ -0,0 +1,7 @@
        6544  +
POST / HTTP/1.1
        6545  +
Host:example.amazonaws.com
        6546  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6547  +
X-Amz-Date:20150830T123600Z
        6548  +
X-Amz-Region-Set:us-east-1
        6549  +
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
        6550  +
 4788   6551   
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
 4789   6552   
similarity index 99%
 4790   6553   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 4791   6554   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 4792   6555   
index f352b54..3c3235f 100644
 4793   6556   
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
 4794   6557   
new file mode 100644
 4795   6558   
index 0000000..379dcb2
 4796         -
-- /dev/null
        6559  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 4797   6560   
@@ -0,0 +1,4 @@
        6561  +
{
        6562  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6563  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6564  +
}
 4798   6565   
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
 4799   6566   
similarity index 99%
 4800   6567   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 4801   6568   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 4802   6569   
index 832cdc0..63b7de5 100644
 4803   6570   
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
 4804   6571   
new file mode 100644
 4805   6572   
index 0000000..713f57c
 4806         -
-- /dev/null
        6573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 4807   6574   
@@ -0,0 +1 @@
        6575  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 4808   6576   
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
 4809   6577   
new file mode 100644
 4810   6578   
index 0000000..32c3bb3
 4811         -
-- /dev/null
        6579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 4812   6580   
@@ -0,0 +1,3 @@
        6581  +
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
        6582  +
Host:example.amazonaws.com
        6583  +
 4813   6584   
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
 4814   6585   
similarity index 99%
 4815   6586   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 4816   6587   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 4817   6588   
index d7f3668..b46cd8c 100644
 4818   6589   
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
 4819   6590   
similarity index 60%
 4820   6591   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 4821   6592   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4822   6593   
index 8b5efc8..3f0a82a 100644
 4823         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        6594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4824   6595   
@@ -1,3 +1,2 @@
 4825   6596   
POST / HTTP/1.1
 4826   6597   
Host:example.amazonaws.com
 4827         -
X-Amz-Date:20150830T123600Z
 4828   6598   
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
 4829   6599   
new file mode 100644
 4830   6600   
index 0000000..0468d80
 4831         -
-- /dev/null
        6601  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 4832   6602   
@@ -0,0 +1,12 @@
        6603  +
{
        6604  +
    "credentials": {
        6605  +
        "access_key_id": "AKIDEXAMPLE",
        6606  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6607  +
    },
        6608  +
    "expiration_in_seconds": 3600,
        6609  +
    "normalize": true,
        6610  +
    "region": "us-east-1",
        6611  +
    "service": "service",
        6612  +
    "sign_body": false,
        6613  +
    "timestamp": "2015-08-30T12:36:00Z"
        6614  +
}
              \
 No newline at end of file
 4833   6615   
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
 4834   6616   
similarity index 99%
 4835   6617   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 4836   6618   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 4837   6619   
index 02af60f..34b8c11 100644
 4838   6620   
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
 4839   6621   
new file mode 100644
 4840   6622   
index 0000000..aac6427
 4841         -
-- /dev/null
        6623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 4842   6624   
@@ -0,0 +1 @@
        6625  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 4843   6626   
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
 4844   6627   
new file mode 100644
 4845   6628   
index 0000000..a611436
 4846         -
-- /dev/null
        6629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 4847   6630   
@@ -0,0 +1,6 @@
        6631  +
POST /?Param1=value1 HTTP/1.1
        6632  +
Host:example.amazonaws.com
        6633  +
X-Amz-Date:20150830T123600Z
        6634  +
X-Amz-Region-Set:us-east-1
        6635  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        6636  +
 4848   6637   
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
 4849   6638   
similarity index 99%
 4850   6639   
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
 4851   6640   
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
 4852   6641   
index 4256b4f..ad88dff 100644
 4853   6642   
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
 4854   6643   
new file mode 100644
 4855   6644   
index 0000000..379dcb2
 4856         -
-- /dev/null
        6645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 4857   6646   
@@ -0,0 +1,4 @@
        6647  +
{
        6648  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6649  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6650  +
}
 4858   6651   
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
 4859   6652   
similarity index 99%
 4860   6653   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 4861   6654   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 4862   6655   
index fa84bbd..76d5ad6 100644
 4863   6656   
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
 4864   6657   
new file mode 100644
 4865   6658   
index 0000000..4cb1c94
 4866         -
-- /dev/null
        6659  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 4867   6660   
@@ -0,0 +1 @@
        6661  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 4868   6662   
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
 4869   6663   
new file mode 100644
 4870   6664   
index 0000000..bd22b97
 4871         -
-- /dev/null
        6665  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 4872   6666   
@@ -0,0 +1,3 @@
        6667  +
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
        6668  +
Host:example.amazonaws.com
        6669  +
 4873   6670   
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
 4874   6671   
similarity index 99%
 4875   6672   
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
 4876   6673   
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
 4877   6674   
index de270ef..8c9d319 100644
 4878   6675   
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
 4879   6676   
similarity index 67%
 4880   6677   
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
 4881   6678   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 4882   6679   
index 9157bc7..c9d6e5d 100644
 4883         -
-- 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
        6680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 4884   6681   
@@ -1,3 +1,2 @@
 4885   6682   
POST /?Param1=value1 HTTP/1.1
 4886   6683   
Host:example.amazonaws.com
 4887         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4888   6684   
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
 4889   6685   
new file mode 100644
 4890   6686   
index 0000000..0468d80
 4891         -
-- /dev/null
        6687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 4892   6688   
@@ -0,0 +1,12 @@
        6689  +
{
        6690  +
    "credentials": {
        6691  +
        "access_key_id": "AKIDEXAMPLE",
        6692  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6693  +
    },
        6694  +
    "expiration_in_seconds": 3600,
        6695  +
    "normalize": true,
        6696  +
    "region": "us-east-1",
        6697  +
    "service": "service",
        6698  +
    "sign_body": false,
        6699  +
    "timestamp": "2015-08-30T12:36:00Z"
        6700  +
}
              \
 No newline at end of file
 4893   6701   
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
 4894   6702   
similarity index 99%
 4895   6703   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 4896   6704   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 4897   6705   
index 02af60f..34b8c11 100644
 4898   6706   
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
 4899   6707   
new file mode 100644
 4900   6708   
index 0000000..34f75c8
 4901         -
-- /dev/null
        6709  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 4902   6710   
@@ -0,0 +1 @@
        6711  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 4903   6712   
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
 4904   6713   
new file mode 100644
 4905   6714   
index 0000000..c731408
 4906         -
-- /dev/null
        6715  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 4907   6716   
@@ -0,0 +1,6 @@
        6717  +
POST /?Param1=value1 HTTP/1.1
        6718  +
Host:example.amazonaws.com
        6719  +
X-Amz-Date:20150830T123600Z
        6720  +
X-Amz-Region-Set:us-east-1
        6721  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        6722  +
 4908   6723   
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
 4909   6724   
similarity index 99%
 4910   6725   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 4911   6726   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 4912   6727   
index 4256b4f..ad88dff 100644
 4913   6728   
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
 4914   6729   
new file mode 100644
 4915   6730   
index 0000000..379dcb2
 4916         -
-- /dev/null
        6731  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 4917   6732   
@@ -0,0 +1,4 @@
        6733  +
{
        6734  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6735  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6736  +
}
 4918   6737   
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
 4919   6738   
similarity index 99%
 4920   6739   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 4921   6740   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 4922   6741   
index fa84bbd..76d5ad6 100644
 4923   6742   
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
 4924   6743   
new file mode 100644
 4925   6744   
index 0000000..ae000d6
 4926         -
-- /dev/null
        6745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 4927   6746   
@@ -0,0 +1 @@
        6747  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 4928   6748   
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
 4929   6749   
new file mode 100644
 4930   6750   
index 0000000..a868f7d
 4931         -
-- /dev/null
        6751  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 4932   6752   
@@ -0,0 +1,3 @@
        6753  +
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
        6754  +
Host:example.amazonaws.com
        6755  +
 4933   6756   
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
 4934   6757   
similarity index 99%
 4935   6758   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 4936   6759   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 4937   6760   
index de270ef..8c9d319 100644
 4938   6761   
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
 4939   6762   
similarity index 67%
 4940   6763   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 4941   6764   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 4942   6765   
index 9157bc7..c9d6e5d 100644
 4943         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        6766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 4944   6767   
@@ -1,3 +1,2 @@
 4945   6768   
POST /?Param1=value1 HTTP/1.1
 4946   6769   
Host:example.amazonaws.com
 4947         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4948   6770   
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
 4949   6771   
new file mode 100644
 4950   6772   
index 0000000..0468d80
 4951         -
-- /dev/null
        6773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 4952   6774   
@@ -0,0 +1,12 @@
        6775  +
{
        6776  +
    "credentials": {
        6777  +
        "access_key_id": "AKIDEXAMPLE",
        6778  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6779  +
    },
        6780  +
    "expiration_in_seconds": 3600,
        6781  +
    "normalize": true,
        6782  +
    "region": "us-east-1",
        6783  +
    "service": "service",
        6784  +
    "sign_body": false,
        6785  +
    "timestamp": "2015-08-30T12:36:00Z"
        6786  +
}
              \
 No newline at end of file
 4953   6787   
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
 4954   6788   
similarity index 99%
 4955   6789   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 4956   6790   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 4957   6791   
index a6942c1..e881ac7 100644
 4958   6792   
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
 4959   6793   
new file mode 100644
 4960   6794   
index 0000000..7c5e47b
 4961         -
-- /dev/null
        6795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 4962   6796   
@@ -0,0 +1 @@
        6797  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 4963   6798   
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
 4964   6799   
new file mode 100644
 4965   6800   
index 0000000..c0e50a0
 4966         -
-- /dev/null
        6801  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 4967   6802   
@@ -0,0 +1,6 @@
        6803  +
POST / HTTP/1.1
        6804  +
Host:example.amazonaws.com
        6805  +
X-Amz-Date:20150830T123600Z
        6806  +
X-Amz-Region-Set:us-east-1
        6807  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        6808  +
 4968   6809   
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
 4969   6810   
similarity index 99%
 4970   6811   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 4971   6812   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 4972   6813   
index d5650cb..f8adf13 100644
 4973   6814   
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
 4974   6815   
new file mode 100644
 4975   6816   
index 0000000..379dcb2
 4976         -
-- /dev/null
        6817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 4977   6818   
@@ -0,0 +1,4 @@
        6819  +
{
        6820  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6821  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6822  +
}
 4978   6823   
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
 4979   6824   
similarity index 99%
 4980   6825   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 4981   6826   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 4982   6827   
index e48ce07..5ea8e3c 100644
 4983   6828   
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
 4984   6829   
new file mode 100644
 4985   6830   
index 0000000..ea8e3b4
 4986         -
-- /dev/null
        6831  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 4987   6832   
@@ -0,0 +1 @@
        6833  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 4988   6834   
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
 4989   6835   
new file mode 100644
 4990   6836   
index 0000000..616973f
 4991         -
-- /dev/null
        6837  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 4992   6838   
@@ -0,0 +1,3 @@
        6839  +
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
        6840  +
Host:example.amazonaws.com
        6841  +
 4993   6842   
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
 4994   6843   
similarity index 99%
 4995   6844   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 4996   6845   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 4997   6846   
index 34e3382..711c162 100644
 4998   6847   
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
 4999   6848   
new file mode 100644
 5000   6849   
index 0000000..3f0a82a
 5001         -
-- /dev/null
        6850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 5002   6851   
@@ -0,0 +1,2 @@
        6852  +
POST / HTTP/1.1
        6853  +
Host:example.amazonaws.com
 5003   6854   
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
 5004   6855   
new file mode 100644
 5005   6856   
index 0000000..0db1df1
 5006         -
-- /dev/null
        6857  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 5007   6858   
@@ -0,0 +1,12 @@
        6859  +
{
        6860  +
    "credentials": {
        6861  +
        "access_key_id": "AKIDEXAMPLE",
        6862  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6863  +
    },
        6864  +
    "expiration_in_seconds": 3600,
        6865  +
    "normalize": true,
        6866  +
    "region": "us-east-1",
        6867  +
    "service": "service",
        6868  +
    "sign_body": true,
        6869  +
    "timestamp": "2015-08-30T12:36:00Z"
        6870  +
}
              \
 No newline at end of file
 5008   6871   
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
 5009   6872   
similarity index 62%
 5010   6873   
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
 5011   6874   
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
 5012   6875   
index 05ab787..62639b2 100644
 5013         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        6876  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 5014   6877   
@@ -1,12 +1,12 @@
 5015   6878   
POST
 5016   6879   
/
 5017   6880   
 5018   6881   
content-length:13
 5019   6882   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5020   6883   
host:example.amazonaws.com
 5021         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6884  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5022   6885   
x-amz-date:20150830T123600Z
 5023   6886   
x-amz-region-set:us-east-1
 5024   6887   
 5025   6888   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5026         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6889  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5027   6890   
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
 5028   6891   
new file mode 100644
 5029   6892   
index 0000000..006ec2e
 5030         -
-- /dev/null
        6893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 5031   6894   
@@ -0,0 +1 @@
        6895  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 5032   6896   
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
 5033   6897   
new file mode 100644
 5034   6898   
index 0000000..87a11f2
 5035         -
-- /dev/null
        6899  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 5036   6900   
@@ -0,0 +1,10 @@
        6901  +
POST / HTTP/1.1
        6902  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        6903  +
Host:example.amazonaws.com
        6904  +
Content-Length:13
        6905  +
X-Amz-Date:20150830T123600Z
        6906  +
X-Amz-Region-Set:us-east-1
        6907  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        6908  +
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
        6909  +
        6910  +
Param1=value1
              \
 No newline at end of file
 5037   6911   
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
 5038   6912   
new file mode 100644
 5039   6913   
index 0000000..c047afb
 5040         -
-- /dev/null
        6914  +
++ 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
 5041   6915   
@@ -0,0 +1,4 @@
        6916  +
AWS4-ECDSA-P256-SHA256
        6917  +
20150830T123600Z
        6918  +
20150830/service/aws4_request
        6919  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 5042   6920   
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
 5043   6921   
new file mode 100644
 5044   6922   
index 0000000..379dcb2
 5045         -
-- /dev/null
        6923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 5046   6924   
@@ -0,0 +1,4 @@
        6925  +
{
        6926  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6927  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6928  +
}
 5047   6929   
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
 5048   6930   
similarity index 85%
 5049   6931   
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
 5050   6932   
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
 5051   6933   
index fcc454f..6933a8c 100644
 5052         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        6934  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 5053   6935   
@@ -1,9 +1,9 @@
 5054   6936   
POST
 5055   6937   
/
 5056   6938   
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
 5057   6939   
content-length:13
 5058   6940   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5059   6941   
host:example.amazonaws.com
 5060   6942   
 5061   6943   
content-length;content-type;host
 5062         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6944  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5063   6945   
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
 5064   6946   
new file mode 100644
 5065   6947   
index 0000000..34a2e12
 5066         -
-- /dev/null
        6948  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 5067   6949   
@@ -0,0 +1 @@
        6950  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 5068   6951   
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
 5069   6952   
new file mode 100644
 5070   6953   
index 0000000..197b99e
 5071         -
-- /dev/null
        6954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 5072   6955   
@@ -0,0 +1,6 @@
        6956  +
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
        6957  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        6958  +
Host:example.amazonaws.com
        6959  +
Content-Length:13
        6960  +
        6961  +
Param1=value1
              \
 No newline at end of file
 5073   6962   
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
 5074   6963   
new file mode 100644
 5075   6964   
index 0000000..9d2bc74
 5076         -
-- /dev/null
        6965  +
++ 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
 5077   6966   
@@ -0,0 +1,4 @@
        6967  +
AWS4-ECDSA-P256-SHA256
        6968  +
20150830T123600Z
        6969  +
20150830/service/aws4_request
        6970  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 5078   6971   
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
 5079   6972   
similarity index 80%
 5080   6973   
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
 5081   6974   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5082   6975   
index 36015f1..8289eaa 100644
 5083         -
-- 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
        6976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5084   6977   
@@ -1,6 +1,6 @@
 5085   6978   
POST / HTTP/1.1
 5086   6979   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 5087   6980   
Host:example.amazonaws.com
 5088         -
X-Amz-Date:20150830T123600Z
        6981  +
Content-Length:13
 5089   6982   
 5090   6983   
Param1=value1
              \
 No newline at end of file
 5091   6984   
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
 5092   6985   
new file mode 100644
 5093   6986   
index 0000000..0db1df1
 5094         -
-- /dev/null
        6987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 5095   6988   
@@ -0,0 +1,12 @@
        6989  +
{
        6990  +
    "credentials": {
        6991  +
        "access_key_id": "AKIDEXAMPLE",
        6992  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6993  +
    },
        6994  +
    "expiration_in_seconds": 3600,
        6995  +
    "normalize": true,
        6996  +
    "region": "us-east-1",
        6997  +
    "service": "service",
        6998  +
    "sign_body": true,
        6999  +
    "timestamp": "2015-08-30T12:36:00Z"
        7000  +
}
              \
 No newline at end of file
 5096   7001   
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
 5097   7002   
similarity index 61%
 5098   7003   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 5099   7004   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5100   7005   
index 69009dc..797632b 100644
 5101         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        7006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5102   7007   
@@ -1,12 +1,12 @@
 5103   7008   
POST
 5104   7009   
/
 5105   7010   
 5106   7011   
content-length:13
 5107   7012   
content-type:application/x-www-form-urlencoded
 5108   7013   
host:example.amazonaws.com
 5109         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7014  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5110   7015   
x-amz-date:20150830T123600Z
 5111   7016   
x-amz-region-set:us-east-1
 5112   7017   
 5113   7018   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5114         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7019  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5115   7020   
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
 5116   7021   
new file mode 100644
 5117   7022   
index 0000000..f5a641c
 5118         -
-- /dev/null
        7023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 5119   7024   
@@ -0,0 +1 @@
        7025  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 5120   7026   
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
 5121   7027   
new file mode 100644
 5122   7028   
index 0000000..7bd94a7
 5123         -
-- /dev/null
        7029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 5124   7030   
@@ -0,0 +1,10 @@
        7031  +
POST / HTTP/1.1
        7032  +
Content-Type:application/x-www-form-urlencoded
        7033  +
Host:example.amazonaws.com
        7034  +
Content-Length:13
        7035  +
X-Amz-Date:20150830T123600Z
        7036  +
X-Amz-Region-Set:us-east-1
        7037  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7038  +
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
        7039  +
        7040  +
Param1=value1
              \
 No newline at end of file
 5125   7041   
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
 5126   7042   
new file mode 100644
 5127   7043   
index 0000000..8d25ba9
 5128         -
-- /dev/null
        7044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 5129   7045   
@@ -0,0 +1,4 @@
        7046  +
AWS4-ECDSA-P256-SHA256
        7047  +
20150830T123600Z
        7048  +
20150830/service/aws4_request
        7049  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 5130   7050   
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
 5131   7051   
new file mode 100644
 5132   7052   
index 0000000..379dcb2
 5133         -
-- /dev/null
        7053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 5134   7054   
@@ -0,0 +1,4 @@
        7055  +
{
        7056  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7057  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7058  +
}
 5135   7059   
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
 5136   7060   
similarity index 99%
 5137   7061   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 5138   7062   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 5139   7063   
index 9ed065b..563ff58 100644
 5140   7064   
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
 5141   7065   
new file mode 100644
 5142   7066   
index 0000000..0c77daf
 5143         -
-- /dev/null
        7067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 5144   7068   
@@ -0,0 +1 @@
        7069  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 5145   7070   
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
 5146   7071   
new file mode 100644
 5147   7072   
index 0000000..71d6de9
 5148         -
-- /dev/null
        7073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 5149   7074   
@@ -0,0 +1,6 @@
        7075  +
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
        7076  +
Content-Type:application/x-www-form-urlencoded
        7077  +
Host:example.amazonaws.com
        7078  +
Content-Length:13
        7079  +
        7080  +
Param1=value1
              \
 No newline at end of file
 5150   7081   
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
 5151   7082   
similarity index 99%
 5152   7083   
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
 5153   7084   
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
 5154   7085   
index bef3143..cc7a224 100644
 5155   7086   
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
 5156   7087   
new file mode 100644
 5157   7088   
index 0000000..760b2d3
 5158         -
-- /dev/null
        7089  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 5159   7090   
@@ -0,0 +1,6 @@
        7091  +
POST / HTTP/1.1
        7092  +
Content-Type:application/x-www-form-urlencoded
        7093  +
Host:example.amazonaws.com
        7094  +
Content-Length:13
        7095  +
        7096  +
Param1=value1
              \
 No newline at end of file
 5160   7097   
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
 5161   7098   
index 9bd636f..b53f33f 100644
 5162         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        7099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 5163   7100   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 5164   7101   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 5165   7102   
        }
 5166   7103   
 5167   7104   
        if let SignatureValues::QueryParams(values) = values {
 5168   7105   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 5169   7106   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 5170   7107   
 5171   7108   
            #[cfg(feature = "sigv4a")]
 5172   7109   
            if let Some(regions) = values.region_set {
 5173   7110   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 5174   7111   
            }
 5175   7112   
 5176   7113   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 5177   7114   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 5178   7115   
            add_param(
 5179   7116   
                &mut params,
 5180   7117   
                param::X_AMZ_SIGNED_HEADERS,
 5181   7118   
                values.signed_headers.as_str(),
 5182   7119   
            );
 5183   7120   
 5184   7121   
            if let Some(security_token) = values.security_token {
 5185   7122   
                add_param(
 5186   7123   
                    &mut params,
 5187   7124   
                    settings
 5188   7125   
                        .session_token_name_override
 5189   7126   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 5190   7127   
                    security_token,
 5191   7128   
                );
 5192   7129   
            }
 5193   7130   
        }
 5194         -
        // Sort by param name, and then by param value
        7131  +
        7132  +
        // Sort on the _encoded_ key/value pairs
        7133  +
        let mut params: Vec<(String, String)> = params
        7134  +
            .into_iter()
        7135  +
            .map(|x| {
        7136  +
                use aws_smithy_http::query::fmt_string;
        7137  +
                let enc_k = fmt_string(&x.0);
        7138  +
                let enc_v = fmt_string(&x.1);
        7139  +
                (enc_k, enc_v)
        7140  +
            })
        7141  +
            .collect();
        7142  +
 5195   7143   
        params.sort();
 5196   7144   
 5197   7145   
        let mut query = QueryWriter::new(uri);
 5198   7146   
        query.clear_params();
 5199   7147   
        for (key, value) in params {
 5200         -
            query.insert(&key, &value);
        7148  +
            query.insert_encoded(&key, &value);
 5201   7149   
        }
 5202   7150   
 5203   7151   
        let query = query.build_query();
 5204   7152   
        if query.is_empty() {
 5205   7153   
            None
 5206   7154   
        } else {
 5207   7155   
            Some(query)
 5208   7156   
        }
 5209   7157   
    }
 5210   7158   
 5211   7159   
    fn insert_host_header(
 5212   7160   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 5213   7161   
        uri: &Uri,
 5214   7162   
    ) -> HeaderValue {
 5215   7163   
        match canonical_headers.get(&HOST) {
 5216   7164   
            Some(header) => header.clone(),
 5217   7165   
            None => {
 5218   7166   
                let port = uri.port();
 5219   7167   
                let scheme = uri.scheme();
 5220   7168   
                let authority = uri
 5221   7169   
                    .authority()
 5222   7170   
                    .expect("request uri authority must be set for signing")
 5223   7171   
                    .as_str();
 5224   7172   
                let host = uri
 5225   7173   
                    .host()
 5226   7174   
                    .expect("request uri host must be set for signing");
 5227   7175   
 5228   7176   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 5229   7177   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 5230   7178   
                // sent in the Host header (and Hyper strips default ports if they are present)
 5231   7179   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 5232   7180   
            service,
 5233   7181   
            hashed_creq,
 5234   7182   
            signature_version: SignatureVersion::V4a,
 5235   7183   
        }
 5236   7184   
    }
 5237   7185   
}
 5238   7186   
 5239   7187   
impl fmt::Display for StringToSign<'_> {
 5240   7188   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 5241   7189   
        write!(
 5242   7190   
            f,
 5243   7191   
            "{}\n{}\n{}\n{}",
 5244   7192   
            self.algorithm,
 5245   7193   
            format_date_time(self.time),
 5246   7194   
            match self.signature_version {
 5247   7195   
                SignatureVersion::V4 => self.scope.to_string(),
 5248   7196   
                SignatureVersion::V4a => self.scope.v4a_display(),
 5249   7197   
            },
 5250   7198   
            self.hashed_creq
 5251   7199   
        )
 5252   7200   
    }
 5253   7201   
}
 5254   7202   
 5255   7203   
#[cfg(test)]
 5256   7204   
mod tests {
 5257   7205   
    use crate::date_time::test_parsers::parse_date_time;
 5258   7206   
    use crate::http_request::canonical_request::{
 5259   7207   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 5260   7208   
    };
 5261   7209   
    use crate::http_request::test;
        7210  +
    use crate::http_request::test::SigningSuiteTest;
 5262   7211   
    use crate::http_request::{
 5263   7212   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 5264   7213   
        SigningParams, SigningSettings,
 5265   7214   
    };
 5266   7215   
    use crate::sign::v4;
 5267   7216   
    use crate::sign::v4::sha256_hex_string;
 5268   7217   
    use aws_credential_types::Credentials;
 5269   7218   
    use aws_smithy_http::query_writer::QueryWriter;
 5270   7219   
    use aws_smithy_runtime_api::client::identity::Identity;
 5271   7220   
    use http0::{HeaderValue, Uri};
 5272   7221   
    use pretty_assertions::assert_eq;
 5273   7222   
    use proptest::{prelude::*, proptest};
 5274   7223   
    use std::borrow::Cow;
 5275   7224   
    use std::time::Duration;
 5276   7225   
 5277   7226   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 5278   7227   
        v4::signing_params::Builder::default()
 5279   7228   
            .identity(identity)
 5280   7229   
            .region("test-region")
 5281   7230   
            .name("testservicename")
 5282   7231   
            .time(parse_date_time("20210511T154045Z").unwrap())
 5283   7232   
            .settings(settings)
 5284   7233   
            .build()
 5285   7234   
            .unwrap()
 5286   7235   
            .into()
 5287   7236   
    }
 5288   7237   
 5289   7238   
    #[test]
 5290   7239   
    fn test_repeated_header() {
 5291         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7240  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7241  +
        let mut req = test.request();
 5292   7242   
        req.headers.push((
 5293   7243   
            "x-amz-object-attributes".to_string(),
 5294   7244   
            "Checksum".to_string(),
 5295   7245   
        ));
 5296   7246   
        req.headers.push((
 5297   7247   
            "x-amz-object-attributes".to_string(),
 5298   7248   
            "ObjectSize".to_string(),
 5299   7249   
        ));
 5300   7250   
        let req = SignableRequest::from(&req);
 5301   7251   
        let settings = SigningSettings {
 5302   7252   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5303   7253   
            session_token_mode: SessionTokenMode::Exclude,
 5304   7254   
            ..Default::default()
 5305   7255   
        };
 5306   7256   
        let identity = Credentials::for_tests().into();
 5307   7257   
        let signing_params = signing_params(&identity, settings);
 5308   7258   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5309   7259   
 5310   7260   
        assert_eq!(
 5311   7261   
            creq.values.signed_headers().to_string(),
 5312   7262   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 5313   7263   
        );
 5314   7264   
        assert_eq!(
 5315   7265   
            creq.header_values_for("x-amz-object-attributes"),
 5316   7266   
            "Checksum,ObjectSize",
 5317   7267   
        );
 5318   7268   
    }
 5319   7269   
 5320   7270   
    #[test]
 5321   7271   
    fn test_host_header_properly_handles_ports() {
 5322   7272   
        fn host_header_test_setup(endpoint: String) -> String {
 5323         -
            let mut req = test::v4::test_request("get-vanilla");
        7273  +
            let test = SigningSuiteTest::v4("get-vanilla");
        7274  +
            let mut req = test.request();
 5324   7275   
            req.uri = endpoint;
 5325   7276   
            let req = SignableRequest::from(&req);
 5326   7277   
            let settings = SigningSettings {
 5327   7278   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5328   7279   
                session_token_mode: SessionTokenMode::Exclude,
 5329   7280   
                ..Default::default()
 5330   7281   
            };
 5331   7282   
            let identity = Credentials::for_tests().into();
 5332   7283   
            let signing_params = signing_params(&identity, settings);
 5333   7284   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5334   7285   
            creq.header_values_for("host")
 5335   7286   
        }
 5336   7287   
 5337   7288   
        // HTTP request with 80 port should not be signed with that port
 5338   7289   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 5339   7290   
        assert_eq!(http_80_host_header, "localhost",);
 5340   7291   
 5341   7292   
        // HTTP request with non-80 port should be signed with that port
 5342   7293   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 5343   7294   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 5344   7295   
 5345   7296   
        // HTTPS request with 443 port should not be signed with that port
 5346   7297   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 5347   7298   
        assert_eq!(https_443_host_header, "localhost",);
 5348   7299   
 5349   7300   
        // HTTPS request with non-443 port should be signed with that port
 5350   7301   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 5351   7302   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 5352   7303   
    }
 5353   7304   
 5354   7305   
    #[test]
 5355   7306   
    fn test_set_xamz_sha_256() {
 5356         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7307  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7308  +
        let req = test.request();
 5357   7309   
        let req = SignableRequest::from(&req);
 5358   7310   
        let settings = SigningSettings {
 5359   7311   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5360   7312   
            session_token_mode: SessionTokenMode::Exclude,
 5361   7313   
            ..Default::default()
 5362   7314   
        };
 5363   7315   
        let identity = Credentials::for_tests().into();
 5364   7316   
        let mut signing_params = signing_params(&identity, settings);
 5365   7317   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5366   7318   
        assert_eq!(
 5367   7319   
            creq.values.content_sha256(),
 5368   7320   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 5369   7321   
        );
 5370   7322   
        // assert that the sha256 header was added
 5371   7323   
        assert_eq!(
 5372   7324   
            creq.values.signed_headers().as_str(),
 5373   7325   
            "host;x-amz-content-sha256;x-amz-date"
 5374   7326   
        );
 5375   7327   
 5376   7328   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 5377   7329   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5378   7330   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5379   7331   
    }
 5380   7332   
 5381   7333   
    #[test]
 5382   7334   
    fn test_unsigned_payload() {
 5383         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7335  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7336  +
        let mut req = test.request();
 5384   7337   
        req.set_body(SignableBody::UnsignedPayload);
 5385   7338   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 5386   7339   
 5387   7340   
        let settings = SigningSettings {
 5388   7341   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5389   7342   
            ..Default::default()
 5390   7343   
        };
 5391   7344   
        let identity = Credentials::for_tests().into();
 5392   7345   
        let signing_params = signing_params(&identity, settings);
 5393   7346   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5394   7347   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 5395   7348   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 5396   7349   
    }
 5397   7350   
 5398   7351   
    #[test]
 5399   7352   
    fn test_precomputed_payload() {
 5400   7353   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 5401         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7354  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7355  +
        let mut req = test.request();
 5402   7356   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 5403   7357   
        let req = SignableRequest::from(&req);
 5404   7358   
        let settings = SigningSettings {
 5405   7359   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5406   7360   
            ..Default::default()
 5407   7361   
        };
 5408   7362   
        let identity = Credentials::for_tests().into();
 5409   7363   
        let signing_params = signing_params(&identity, settings);
 5410   7364   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5411   7365   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 5412   7366   
        assert!(creq.to_string().ends_with(payload_hash));
 5413   7367   
    }
 5414   7368   
 5415   7369   
    #[test]
 5416   7370   
    fn test_generate_scope() {
 5417   7371   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 5418   7372   
        let scope = SigningScope {
 5419   7373   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5420   7374   
            region: "us-east-1",
 5421   7375   
            service: "iam",
 5422   7376   
        };
 5423   7377   
        assert_eq!(format!("{}\n", scope), expected);
 5424   7378   
    }
 5425   7379   
 5426   7380   
    #[test]
 5427   7381   
    fn test_string_to_sign() {
 5428   7382   
        let time = parse_date_time("20150830T123600Z").unwrap();
 5429         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 5430         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        7383  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7384  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        7385  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 5431   7386   
        let encoded = sha256_hex_string(creq.as_bytes());
 5432   7387   
 5433   7388   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 5434   7389   
        assert_eq!(expected_sts, actual.to_string());
 5435   7390   
    }
 5436   7391   
 5437   7392   
    #[test]
 5438   7393   
    fn test_digest_of_canonical_request() {
 5439         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        7394  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7395  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 5440   7396   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 5441   7397   
        let actual = sha256_hex_string(creq.as_bytes());
 5442   7398   
        assert_eq!(expected, actual);
 5443   7399   
    }
 5444   7400   
 5445   7401   
    #[test]
 5446   7402   
    fn test_double_url_encode_path() {
 5447         -
        let req = test::v4::test_request("double-encode-path");
        7403  +
        let test = SigningSuiteTest::v4("double-encode-path");
        7404  +
        let req = test.request();
 5448   7405   
        let req = SignableRequest::from(&req);
 5449   7406   
        let identity = Credentials::for_tests().into();
 5450   7407   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5451   7408   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5452   7409   
 5453         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        7410  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5454   7411   
        let actual = format!("{}", creq);
 5455   7412   
        assert_eq!(actual, expected);
 5456   7413   
    }
 5457   7414   
 5458   7415   
    #[test]
 5459   7416   
    fn test_double_url_encode() {
 5460         -
        let req = test::v4::test_request("double-url-encode");
        7417  +
        let test = SigningSuiteTest::v4("double-url-encode");
        7418  +
        let req = test.request();
 5461   7419   
        let req = SignableRequest::from(&req);
 5462   7420   
        let identity = Credentials::for_tests().into();
 5463   7421   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5464   7422   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5465         -
 5466         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        7423  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5467   7424   
        let actual = format!("{}", creq);
 5468   7425   
        assert_eq!(actual, expected);
 5469   7426   
    }
 5470   7427   
 5471   7428   
    #[test]
 5472   7429   
    fn test_tilde_in_uri() {
 5473   7430   
        let req = http0::Request::builder()
 5474   7431   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 5475   7432   
        let req = SignableRequest::from(&req);
 5476   7433   
        let identity = Credentials::for_tests().into();
 5477   7434   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5478   7435   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5479   7436   
        assert_eq!(
 5480   7437   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 5481   7438   
            creq.params.as_deref(),
 5482   7439   
        );
 5483   7440   
    }
 5484   7441   
 5485   7442   
    #[test]
 5486   7443   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 5487   7444   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 5488   7445   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 5489   7446   
 5490   7447   
        let mut query_writer = QueryWriter::new(&uri);
 5491   7448   
        query_writer.insert("list-type", "2");
 5492   7449   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 5493   7450   
 5494   7451   
        let req = http0::Request::builder()
 5495   7452   
            .uri(query_writer.build_uri())
 5496   7453   
            .body("")
 5497   7454   
            .unwrap()
 5498   7455   
            .into();
 5499   7456   
        let req = SignableRequest::from(&req);
 5500   7457   
        let identity = Credentials::for_tests().into();
 5501   7458   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5502   7459   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5503   7460   
 5504   7461   
        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~";
 5505   7462   
        let actual = creq.params.unwrap();
 5506   7463   
        assert_eq!(expected, actual);
 5507   7464   
    }
 5508   7465   
 5509   7466   
    #[test]
 5510   7467   
    fn test_omit_session_token() {
 5511         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7468  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7469  +
        let req = test.request();
 5512   7470   
        let req = SignableRequest::from(&req);
 5513   7471   
        let settings = SigningSettings {
 5514   7472   
            session_token_mode: SessionTokenMode::Include,
 5515   7473   
            ..Default::default()
 5516   7474   
        };
 5517   7475   
        let identity = Credentials::for_tests_with_session_token().into();
 5518   7476   
        let mut signing_params = signing_params(&identity, settings);
 5519   7477   
 5520   7478   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5521   7479   
        assert_eq!(
 5522   7480   
            creq.values.signed_headers().as_str(),
 5523   7481   
            "host;x-amz-date;x-amz-security-token"
 5524   7482   
        );
 5525   7483   
        assert_eq!(
 5526   7484   
            creq.headers.get("x-amz-security-token").unwrap(),
 5527   7485   
            "notarealsessiontoken"
 5528   7486   
        );
 5529   7487   
 5530   7488   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 5531   7489   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5532   7490   
        assert_eq!(
 5533   7491   
            creq.headers.get("x-amz-security-token").unwrap(),
 5534   7492   
            "notarealsessiontoken"
 5535   7493   
        );
 5536   7494   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5537   7495   
    }
 5538   7496   
 5539   7497   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 5540   7498   
    #[test]
 5541   7499   
    fn non_presigning_header_exclusion() {
 5542   7500   
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
 5543   7501   
index c4bbbee..30b4743 100644
 5544         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        7502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 5545   7503   
@@ -478,436 +478,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 5546   7504   
        sensitive,
 5547   7505   
    });
 5548   7506   
}
 5549   7507   
 5550   7508   
// add signature to authorization header
 5551   7509   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 5552   7510   
fn build_authorization_header(
 5553   7511   
    access_key: &str,
 5554   7512   
    creq: &CanonicalRequest<'_>,
 5555   7513   
    sts: StringToSign<'_>,
 5556   7514   
    signature: &str,
 5557   7515   
    signature_version: SignatureVersion,
 5558   7516   
) -> String {
 5559   7517   
    let scope = match signature_version {
 5560   7518   
        SignatureVersion::V4 => sts.scope.to_string(),
 5561   7519   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 5562   7520   
    };
 5563   7521   
    format!(
 5564   7522   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 5565   7523   
        sts.algorithm,
 5566   7524   
        access_key,
 5567   7525   
        scope,
 5568   7526   
        creq.values.signed_headers().as_str(),
 5569   7527   
        signature
 5570   7528   
    )
 5571   7529   
}
 5572   7530   
#[cfg(test)]
 5573   7531   
mod tests {
 5574   7532   
    use crate::date_time::test_parsers::parse_date_time;
 5575   7533   
    use crate::http_request::sign::{add_header, SignableRequest};
        7534  +
    use crate::http_request::test::SigningSuiteTest;
 5576   7535   
    use crate::http_request::{
 5577         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        7536  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 5578   7537   
        SigningSettings,
 5579   7538   
    };
 5580   7539   
    use crate::sign::v4;
 5581   7540   
    use aws_credential_types::Credentials;
 5582   7541   
    use http0::{HeaderValue, Request};
 5583   7542   
    use pretty_assertions::assert_eq;
 5584   7543   
    use proptest::proptest;
 5585   7544   
    use std::borrow::Cow;
 5586   7545   
    use std::iter;
 5587         -
    use std::time::Duration;
 5588   7546   
 5589   7547   
    macro_rules! assert_req_eq {
 5590   7548   
        (http: $expected:expr, $actual:expr) => {
 5591   7549   
            let mut expected = ($expected).map(|_b|"body");
 5592   7550   
            let mut actual = ($actual).map(|_b|"body");
 5593   7551   
            make_headers_comparable(&mut expected);
 5594   7552   
            make_headers_comparable(&mut actual);
 5595   7553   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 5596   7554   
        };
 5597   7555   
        ($expected:tt, $actual:tt) => {
 5598   7556   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 5599   7557   
        };
 5600   7558   
    }
 5601   7559   
 5602   7560   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 5603   7561   
        for (_name, value) in request.headers_mut() {
 5604   7562   
            value.set_sensitive(false);
 5605   7563   
        }
 5606   7564   
    }
 5607   7565   
 5608         -
    #[test]
 5609         -
    fn test_sign_vanilla_with_headers() {
 5610         -
        let settings = SigningSettings::default();
 5611         -
        let identity = &Credentials::for_tests().into();
 5612         -
        let params = v4::SigningParams {
 5613         -
            identity,
 5614         -
            region: "us-east-1",
 5615         -
            name: "service",
 5616         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5617         -
            settings,
 5618         -
        }
 5619         -
        .into();
 5620         -
 5621         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5622         -
        let signable = SignableRequest::from(&original);
 5623         -
        let out = sign(signable, &params).unwrap();
 5624         -
        assert_eq!(
 5625         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 5626         -
            out.signature
 5627         -
        );
 5628         -
 5629         -
        let mut signed = original.as_http_request();
 5630         -
        out.output.apply_to_request_http0x(&mut signed);
 5631         -
 5632         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 5633         -
        assert_req_eq!(expected, signed);
 5634         -
    }
 5635         -
        7566  +
    // Sigv4A suite tests
 5636   7567   
    #[cfg(feature = "sigv4a")]
 5637         -
    mod sigv4a_tests {
 5638         -
        use super::*;
 5639         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5640         -
        use crate::http_request::{sign, test, SigningParams};
 5641         -
        use crate::sign::v4a;
 5642         -
        use p256::ecdsa::signature::{Signature, Verifier};
 5643         -
        use p256::ecdsa::{DerSignature, SigningKey};
 5644         -
        use pretty_assertions::assert_eq;
 5645         -
 5646         -
        fn new_v4a_signing_params_from_context(
 5647         -
            test_context: &'_ test::v4a::TestContext,
 5648         -
            signature_location: SignatureLocation,
 5649         -
        ) -> SigningParams<'_> {
 5650         -
            let mut params = v4a::SigningParams::from(test_context);
 5651         -
            params.settings.signature_location = signature_location;
 5652         -
 5653         -
            params.into()
 5654         -
        }
 5655         -
 5656         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 5657         -
            let tc = test::v4a::test_context(test_name);
 5658         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 5659         -
 5660         -
            let req = test::v4a::test_request(test_name);
 5661         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 5662         -
            let signable_req = SignableRequest::from(&req);
 5663         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 5664         -
 5665         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
        7568  +
    mod v4a_suite {
        7569  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 5666   7570   
 5667         -
            let expected_string_to_sign =
 5668         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 5669         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 5670         -
            let actual_string_to_sign = StringToSign::new_v4a(
 5671         -
                *params.time(),
 5672         -
                params.region_set().unwrap(),
 5673         -
                params.name(),
 5674         -
                hashed_creq,
 5675         -
            )
 5676         -
            .to_string();
 5677         -
 5678         -
            assert_eq!(
 5679         -
                expected_string_to_sign, actual_string_to_sign,
 5680         -
                "'string to sign' didn't match"
 5681         -
            );
 5682         -
 5683         -
            let out = sign(signable_req, &params).unwrap();
 5684         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 5685         -
            out.output
 5686         -
                .apply_to_request_http0x(&mut req.as_http_request());
 5687         -
 5688         -
            let creds = params.credentials().unwrap();
 5689         -
            let signing_key =
 5690         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 5691         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 5692         -
            let sig = sig
 5693         -
                .try_into()
 5694         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 5695         -
 5696         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 5697         -
            let peer_public_key = signing_key.verifying_key();
 5698         -
            let sts = actual_string_to_sign.as_bytes();
 5699         -
            peer_public_key.verify(sts, &sig).unwrap();
        7571  +
        #[test]
        7572  +
        fn test_get_header_key_duplicate() {
        7573  +
            run_test_suite_v4a("get-header-key-duplicate")
 5700   7574   
        }
 5701   7575   
 5702   7576   
        #[test]
 5703         -
        fn test_get_header_key_duplicate() {
 5704         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        7577  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7578  +
        fn test_get_header_value_multiline() {
        7579  +
            run_test_suite_v4a("get-header-value-multiline")
 5705   7580   
        }
 5706   7581   
 5707   7582   
        #[test]
 5708   7583   
        fn test_get_header_value_order() {
 5709         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        7584  +
            run_test_suite_v4a("get-header-value-order")
 5710   7585   
        }
 5711   7586   
 5712   7587   
        #[test]
 5713   7588   
        fn test_get_header_value_trim() {
 5714         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        7589  +
            run_test_suite_v4a("get-header-value-trim");
 5715   7590   
        }
 5716   7591   
 5717   7592   
        #[test]
 5718   7593   
        fn test_get_relative_normalized() {
 5719         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        7594  +
            run_test_suite_v4a("get-relative-normalized");
 5720   7595   
        }
 5721   7596   
 5722   7597   
        #[test]
 5723   7598   
        fn test_get_relative_relative_normalized() {
 5724         -
            run_v4a_test_suite(
 5725         -
                "get-relative-relative-normalized",
 5726         -
                SignatureLocation::Headers,
 5727         -
            );
        7599  +
            run_test_suite_v4a("get-relative-relative-normalized");
 5728   7600   
        }
 5729   7601   
 5730   7602   
        #[test]
 5731   7603   
        fn test_get_relative_relative_unnormalized() {
 5732         -
            run_v4a_test_suite(
 5733         -
                "get-relative-relative-unnormalized",
 5734         -
                SignatureLocation::Headers,
 5735         -
            );
        7604  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 5736   7605   
        }
 5737   7606   
 5738   7607   
        #[test]
 5739   7608   
        fn test_get_relative_unnormalized() {
 5740         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        7609  +
            run_test_suite_v4a("get-relative-unnormalized");
 5741   7610   
        }
 5742   7611   
 5743   7612   
        #[test]
 5744   7613   
        fn test_get_slash_dot_slash_normalized() {
 5745         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        7614  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 5746   7615   
        }
 5747   7616   
 5748   7617   
        #[test]
 5749   7618   
        fn test_get_slash_dot_slash_unnormalized() {
 5750         -
            run_v4a_test_suite(
 5751         -
                "get-slash-dot-slash-unnormalized",
 5752         -
                SignatureLocation::Headers,
 5753         -
            );
        7619  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 5754   7620   
        }
 5755   7621   
 5756   7622   
        #[test]
 5757   7623   
        fn test_get_slash_normalized() {
 5758         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        7624  +
            run_test_suite_v4a("get-slash-normalized");
 5759   7625   
        }
 5760   7626   
 5761   7627   
        #[test]
 5762   7628   
        fn test_get_slash_pointless_dot_normalized() {
 5763         -
            run_v4a_test_suite(
 5764         -
                "get-slash-pointless-dot-normalized",
 5765         -
                SignatureLocation::Headers,
 5766         -
            );
        7629  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 5767   7630   
        }
 5768   7631   
 5769   7632   
        #[test]
 5770   7633   
        fn test_get_slash_pointless_dot_unnormalized() {
 5771         -
            run_v4a_test_suite(
 5772         -
                "get-slash-pointless-dot-unnormalized",
 5773         -
                SignatureLocation::Headers,
 5774         -
            );
        7634  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 5775   7635   
        }
 5776   7636   
 5777   7637   
        #[test]
 5778   7638   
        fn test_get_slash_unnormalized() {
 5779         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        7639  +
            run_test_suite_v4a("get-slash-unnormalized");
 5780   7640   
        }
 5781   7641   
 5782   7642   
        #[test]
 5783   7643   
        fn test_get_slashes_normalized() {
 5784         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        7644  +
            run_test_suite_v4a("get-slashes-normalized");
 5785   7645   
        }
 5786   7646   
 5787   7647   
        #[test]
 5788   7648   
        fn test_get_slashes_unnormalized() {
 5789         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        7649  +
            run_test_suite_v4a("get-slashes-unnormalized");
        7650  +
        }
        7651  +
        7652  +
        #[test]
        7653  +
        #[ignore = "relies on single encode of path segments"]
        7654  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7655  +
        // skipped until we add control over double_uri_encode in context.json
        7656  +
        fn test_get_space_normalized() {
        7657  +
            run_test_suite_v4a("get-space-normalized");
        7658  +
        }
        7659  +
        7660  +
        #[test]
        7661  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7662  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7663  +
        fn test_get_space_unnormalized() {
        7664  +
            run_test_suite_v4a("get-space-unnormalized");
 5790   7665   
        }
 5791   7666   
 5792   7667   
        #[test]
 5793   7668   
        fn test_get_unreserved() {
 5794         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        7669  +
            run_test_suite_v4a("get-unreserved");
        7670  +
        }
        7671  +
        7672  +
        #[test]
        7673  +
        #[ignore = "httparse fails on invalid uri character"]
        7674  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7675  +
        fn test_get_utf8() {
        7676  +
            run_test_suite_v4a("get-utf8");
 5795   7677   
        }
 5796   7678   
 5797   7679   
        #[test]
 5798   7680   
        fn test_get_vanilla() {
 5799         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        7681  +
            run_test_suite_v4a("get-vanilla");
 5800   7682   
        }
 5801   7683   
 5802   7684   
        #[test]
 5803   7685   
        fn test_get_vanilla_empty_query_key() {
 5804         -
            run_v4a_test_suite(
 5805         -
                "get-vanilla-empty-query-key",
 5806         -
                SignatureLocation::QueryParams,
 5807         -
            );
        7686  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 5808   7687   
        }
 5809   7688   
 5810   7689   
        #[test]
 5811   7690   
        fn test_get_vanilla_query() {
 5812         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        7691  +
            run_test_suite_v4a("get-vanilla-query");
        7692  +
        }
        7693  +
        7694  +
        #[test]
        7695  +
        fn test_get_vanilla_query_order_encoded() {
        7696  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 5813   7697   
        }
 5814   7698   
 5815   7699   
        #[test]
 5816   7700   
        fn test_get_vanilla_query_order_key_case() {
 5817         -
            run_v4a_test_suite(
 5818         -
                "get-vanilla-query-order-key-case",
 5819         -
                SignatureLocation::QueryParams,
 5820         -
            );
        7701  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 5821   7702   
        }
 5822   7703   
 5823   7704   
        #[test]
 5824   7705   
        fn test_get_vanilla_query_unreserved() {
 5825         -
            run_v4a_test_suite(
 5826         -
                "get-vanilla-query-unreserved",
 5827         -
                SignatureLocation::QueryParams,
 5828         -
            );
        7706  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        7707  +
        }
        7708  +
        7709  +
        #[test]
        7710  +
        #[ignore = "httparse fails on invalid uri character"]
        7711  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7712  +
        fn test_get_vanilla_utf8_query() {
        7713  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 5829   7714   
        }
 5830   7715   
 5831   7716   
        #[test]
 5832   7717   
        fn test_get_vanilla_with_session_token() {
 5833         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        7718  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 5834   7719   
        }
 5835   7720   
 5836   7721   
        #[test]
 5837   7722   
        fn test_post_header_key_case() {
 5838         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        7723  +
            run_test_suite_v4a("post-header-key-case");
 5839   7724   
        }
 5840   7725   
 5841   7726   
        #[test]
 5842   7727   
        fn test_post_header_key_sort() {
 5843         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        7728  +
            run_test_suite_v4a("post-header-key-sort");
 5844   7729   
        }
 5845   7730   
 5846   7731   
        #[test]
 5847   7732   
        fn test_post_header_value_case() {
 5848         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        7733  +
            run_test_suite_v4a("post-header-value-case");
 5849   7734   
        }
 5850   7735   
 5851   7736   
        #[test]
 5852   7737   
        fn test_post_sts_header_after() {
 5853         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        7738  +
            run_test_suite_v4a("post-sts-header-after");
 5854   7739   
        }
 5855   7740   
 5856   7741   
        #[test]
 5857   7742   
        fn test_post_sts_header_before() {
 5858         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        7743  +
            run_test_suite_v4a("post-sts-header-before");
 5859   7744   
        }
 5860   7745   
 5861   7746   
        #[test]
 5862   7747   
        fn test_post_vanilla() {
 5863         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        7748  +
            run_test_suite_v4a("post-vanilla");
 5864   7749   
        }
 5865   7750   
 5866   7751   
        #[test]
 5867   7752   
        fn test_post_vanilla_empty_query_value() {
 5868         -
            run_v4a_test_suite(
 5869         -
                "post-vanilla-empty-query-value",
 5870         -
                SignatureLocation::QueryParams,
 5871         -
            );
        7753  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 5872   7754   
        }
 5873   7755   
 5874   7756   
        #[test]
 5875   7757   
        fn test_post_vanilla_query() {
 5876         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        7758  +
            run_test_suite_v4a("post-vanilla-query");
 5877   7759   
        }
 5878   7760   
 5879   7761   
        #[test]
 5880   7762   
        fn test_post_x_www_form_urlencoded() {
 5881         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        7763  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 5882   7764   
        }
 5883   7765   
 5884   7766   
        #[test]
 5885   7767   
        fn test_post_x_www_form_urlencoded_parameters() {
 5886         -
            run_v4a_test_suite(
 5887         -
                "post-x-www-form-urlencoded-parameters",
 5888         -
                SignatureLocation::QueryParams,
 5889         -
            );
        7768  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 5890   7769   
        }
 5891   7770   
    }
 5892   7771   
 5893   7772   
    #[test]
 5894   7773   
    fn test_sign_url_escape() {
 5895         -
        let test = "double-encode-path";
        7774  +
        let test = SigningSuiteTest::v4("double-encode-path");
 5896   7775   
        let settings = SigningSettings::default();
 5897   7776   
        let identity = &Credentials::for_tests().into();
 5898   7777   
        let params = v4::SigningParams {
 5899   7778   
            identity,
 5900   7779   
            region: "us-east-1",
 5901   7780   
            name: "service",
 5902   7781   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5903   7782   
            settings,
 5904   7783   
        }
 5905   7784   
        .into();
 5906   7785   
 5907         -
        let original = test::v4::test_request(test);
        7786  +
        let original = test.request();
 5908   7787   
        let signable = SignableRequest::from(&original);
 5909   7788   
        let out = sign(signable, &params).unwrap();
 5910   7789   
        assert_eq!(
 5911   7790   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 5912   7791   
            out.signature
 5913   7792   
        );
 5914   7793   
 5915   7794   
        let mut signed = original.as_http_request();
 5916   7795   
        out.output.apply_to_request_http0x(&mut signed);
 5917   7796   
 5918         -
        let expected = test::v4::test_signed_request(test);
 5919         -
        assert_req_eq!(expected, signed);
 5920         -
    }
 5921         -
 5922         -
    #[test]
 5923         -
    fn test_sign_vanilla_with_query_params() {
 5924         -
        let settings = SigningSettings {
 5925         -
            signature_location: SignatureLocation::QueryParams,
 5926         -
            expires_in: Some(Duration::from_secs(35)),
 5927         -
            ..Default::default()
 5928         -
        };
 5929         -
        let identity = &Credentials::for_tests().into();
 5930         -
        let params = v4::SigningParams {
 5931         -
            identity,
 5932         -
            region: "us-east-1",
 5933         -
            name: "service",
 5934         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5935         -
            settings,
 5936         -
        }
 5937         -
        .into();
 5938         -
 5939         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5940         -
        let signable = SignableRequest::from(&original);
 5941         -
        let out = sign(signable, &params).unwrap();
 5942         -
        assert_eq!(
 5943         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 5944         -
            out.signature
 5945         -
        );
 5946         -
 5947         -
        let mut signed = original.as_http_request();
 5948         -
        out.output.apply_to_request_http0x(&mut signed);
 5949         -
 5950         -
        let expected =
 5951         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        7797  +
        let expected = test.signed_request(SignatureLocation::Headers);
 5952   7798   
        assert_req_eq!(expected, signed);
 5953   7799   
    }
 5954   7800   
 5955   7801   
    #[test]
 5956   7802   
    fn test_sign_headers_utf8() {
 5957   7803   
        let settings = SigningSettings::default();
 5958   7804   
        let identity = &Credentials::for_tests().into();
 5959   7805   
        let params = v4::SigningParams {
 5960   7806   
            identity,
 5961   7807   
            region: "us-east-1",
 5962   7808   
            name: "service",
 5963   7809   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5964   7810   
            settings,
 5965   7811   
        }
 5966   7812   
        .into();
 5967   7813   
 5968   7814   
        let original = http0::Request::builder()
 5969   7815   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 5970   7816   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 5971   7817   
            .body("")
 5972   7818   
            .unwrap()
 5973   7819   
            .into();
 5974   7820   
        let signable = SignableRequest::from(&original);
 5975   7821   
        let out = sign(signable, &params).unwrap();
 5976   7822   
        assert_eq!(
 5977   7823   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 5978   7824   
            out.signature
 5979   7825   
        );
 5980   7826   
 5981   7827   
        let mut signed = original.as_http_request();
 5982   7828   
@@ -1138,31 +1026,236 @@ mod tests {
 5983   7829   
        let mut request = http::Request::builder()
 5984   7830   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 5985   7831   
            .body("")
 5986   7832   
            .unwrap();
 5987   7833   
 5988   7834   
        instructions.apply_to_request_http1x(&mut request);
 5989   7835   
 5990   7836   
        assert_eq!(
 5991   7837   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 5992   7838   
            request.uri().path_and_query().unwrap().to_string()
 5993   7839   
        );
 5994   7840   
    }
 5995   7841   
 5996   7842   
    #[test]
 5997   7843   
    fn test_debug_signable_body() {
 5998   7844   
        let sut = SignableBody::Bytes(b"hello signable body");
 5999   7845   
        assert_eq!(
 6000   7846   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 6001   7847   
            format!("{sut:?}")
 6002   7848   
        );
 6003   7849   
 6004   7850   
        let sut = SignableBody::UnsignedPayload;
 6005   7851   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 6006   7852   
 6007   7853   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 6008   7854   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 6009   7855   
 6010   7856   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 6011   7857   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 6012   7858   
    }
        7859  +
        7860  +
    // v4 test suite
        7861  +
    mod v4_suite {
        7862  +
        use crate::http_request::test::run_test_suite_v4;
        7863  +
        7864  +
        #[test]
        7865  +
        fn test_get_header_key_duplicate() {
        7866  +
            run_test_suite_v4("get-header-key-duplicate");
        7867  +
        }
        7868  +
        7869  +
        #[test]
        7870  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7871  +
        fn test_get_header_value_multiline() {
        7872  +
            run_test_suite_v4("get-header-value-multiline");
        7873  +
        }
        7874  +
        7875  +
        #[test]
        7876  +
        fn test_get_header_value_order() {
        7877  +
            run_test_suite_v4("get-header-value-order");
        7878  +
        }
        7879  +
        7880  +
        #[test]
        7881  +
        fn test_get_header_value_trim() {
        7882  +
            run_test_suite_v4("get-header-value-trim");
        7883  +
        }
        7884  +
        7885  +
        #[test]
        7886  +
        fn test_get_relative_normalized() {
        7887  +
            run_test_suite_v4("get-relative-normalized");
        7888  +
        }
        7889  +
        7890  +
        #[test]
        7891  +
        fn test_get_relative_relative_normalized() {
        7892  +
            run_test_suite_v4("get-relative-relative-normalized");
        7893  +
        }
        7894  +
        7895  +
        #[test]
        7896  +
        fn test_get_relative_relative_unnormalized() {
        7897  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        7898  +
        }
        7899  +
        7900  +
        #[test]
        7901  +
        fn test_get_relative_unnormalized() {
        7902  +
            run_test_suite_v4("get-relative-unnormalized");
        7903  +
        }
        7904  +
        7905  +
        #[test]
        7906  +
        fn test_get_slash_dot_slash_normalized() {
        7907  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        7908  +
        }
        7909  +
        7910  +
        #[test]
        7911  +
        fn test_get_slash_dot_slash_unnormalized() {
        7912  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        7913  +
        }
        7914  +
        7915  +
        #[test]
        7916  +
        fn test_get_slash_normalized() {
        7917  +
            run_test_suite_v4("get-slash-normalized");
        7918  +
        }
        7919  +
        7920  +
        #[test]
        7921  +
        fn test_get_slash_pointless_dot_normalized() {
        7922  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        7923  +
        }
        7924  +
        7925  +
        #[test]
        7926  +
        fn test_get_slash_pointless_dot_unnormalized() {
        7927  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        7928  +
        }
        7929  +
        7930  +
        #[test]
        7931  +
        fn test_get_slash_unnormalized() {
        7932  +
            run_test_suite_v4("get-slash-unnormalized");
        7933  +
        }
        7934  +
        7935  +
        #[test]
        7936  +
        fn test_get_slashes_normalized() {
        7937  +
            run_test_suite_v4("get-slashes-normalized");
        7938  +
        }
        7939  +
        7940  +
        #[test]
        7941  +
        fn test_get_slashes_unnormalized() {
        7942  +
            run_test_suite_v4("get-slashes-unnormalized");
        7943  +
        }
        7944  +
        7945  +
        #[test]
        7946  +
        #[ignore = "relies on single encode of path segments"]
        7947  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7948  +
        // skipped until we add control over double_uri_encode in context.json
        7949  +
        fn test_get_space_normalized() {
        7950  +
            run_test_suite_v4("get-space-normalized");
        7951  +
        }
        7952  +
        7953  +
        #[test]
        7954  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7955  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7956  +
        fn test_get_space_unnormalized() {
        7957  +
            run_test_suite_v4("get-space-unnormalized");
        7958  +
        }
        7959  +
        7960  +
        #[test]
        7961  +
        fn test_get_unreserved() {
        7962  +
            run_test_suite_v4("get-unreserved");
        7963  +
        }
        7964  +
        7965  +
        #[test]
        7966  +
        #[ignore = "httparse fails on invalid uri character"]
        7967  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7968  +
        fn test_get_utf8() {
        7969  +
            run_test_suite_v4("get-utf8");
        7970  +
        }
        7971  +
        7972  +
        #[test]
        7973  +
        fn test_get_vanilla() {
        7974  +
            run_test_suite_v4("get-vanilla");
        7975  +
        }
        7976  +
        7977  +
        #[test]
        7978  +
        fn test_get_vanilla_empty_query_key() {
        7979  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        7980  +
        }
        7981  +
        7982  +
        #[test]
        7983  +
        fn test_get_vanilla_query() {
        7984  +
            run_test_suite_v4("get-vanilla-query");
        7985  +
        }
        7986  +
        7987  +
        #[test]
        7988  +
        fn test_get_vanilla_query_order_encoded() {
        7989  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        7990  +
        }
        7991  +
        7992  +
        #[test]
        7993  +
        fn test_get_vanilla_query_order_key_case() {
        7994  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        7995  +
        }
        7996  +
        7997  +
        #[test]
        7998  +
        fn test_get_vanilla_query_unreserved() {
        7999  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        8000  +
        }
        8001  +
        8002  +
        #[test]
        8003  +
        #[ignore = "httparse fails on invalid uri character"]
        8004  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8005  +
        fn test_get_vanilla_utf8_query() {
        8006  +
            run_test_suite_v4("get-vanilla-utf8-query");
        8007  +
        }
        8008  +
        8009  +
        #[test]
        8010  +
        fn test_get_vanilla_with_session_token() {
        8011  +
            run_test_suite_v4("get-vanilla-with-session-token");
        8012  +
        }
        8013  +
        8014  +
        #[test]
        8015  +
        fn test_post_header_key_case() {
        8016  +
            run_test_suite_v4("post-header-key-case");
        8017  +
        }
        8018  +
        8019  +
        #[test]
        8020  +
        fn test_post_header_key_sort() {
        8021  +
            run_test_suite_v4("post-header-key-sort");
        8022  +
        }
        8023  +
        8024  +
        #[test]
        8025  +
        fn test_post_header_value_case() {
        8026  +
            run_test_suite_v4("post-header-value-case");
        8027  +
        }
        8028  +
        8029  +
        #[test]
        8030  +
        fn test_post_sts_header_after() {
        8031  +
            run_test_suite_v4("post-sts-header-after");
        8032  +
        }
        8033  +
        8034  +
        #[test]
        8035  +
        fn test_post_sts_header_before() {
        8036  +
            run_test_suite_v4("post-sts-header-before");
        8037  +
        }
        8038  +
        8039  +
        #[test]
        8040  +
        fn test_post_vanilla() {
        8041  +
            run_test_suite_v4("post-vanilla");
        8042  +
        }
        8043  +
        8044  +
        #[test]
        8045  +
        fn test_post_vanilla_empty_query_value() {
        8046  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        8047  +
        }
        8048  +
        8049  +
        #[test]
        8050  +
        fn test_post_vanilla_query() {
        8051  +
            run_test_suite_v4("post-vanilla-query");
        8052  +
        }
        8053  +
        8054  +
        #[test]
        8055  +
        fn test_post_x_www_form_urlencoded() {
        8056  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        8057  +
        }
        8058  +
        8059  +
        #[test]
        8060  +
        fn test_post_x_www_form_urlencoded_parameters() {
        8061  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        8062  +
        }
        8063  +
    }
 6013   8064   
}
 6014   8065   
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
 6015   8066   
index be6c496..86eec20 100644
 6016         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        8067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 6017   8068   
@@ -1,242 +1,453 @@
 6018   8069   
/*
 6019   8070   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 6020   8071   
 * SPDX-License-Identifier: Apache-2.0
 6021   8072   
 */
 6022   8073   
 6023   8074   
//! Functions shared between the tests of several modules.
 6024   8075   
 6025         -
use crate::http_request::{SignableBody, SignableRequest};
        8076  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        8077  +
use crate::http_request::{
        8078  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        8079  +
    SigningSettings,
        8080  +
};
        8081  +
use aws_credential_types::Credentials;
        8082  +
use aws_smithy_runtime_api::client::identity::Identity;
 6026   8083   
use http0::{Method, Uri};
        8084  +
use std::borrow::Cow;
 6027   8085   
use std::error::Error as StdError;
        8086  +
use std::time::{Duration, SystemTime};
        8087  +
use time::format_description::well_known::Rfc3339;
        8088  +
use time::OffsetDateTime;
        8089  +
        8090  +
/// Common test suite collection
        8091  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        8092  +
enum Collection {
        8093  +
    V4,
        8094  +
    V4A,
        8095  +
}
 6028   8096   
 6029         -
pub(crate) mod v4 {
 6030         -
    use super::*;
        8097  +
/// A test from the common CRT test suite
        8098  +
#[derive(Debug, Clone)]
        8099  +
pub(crate) struct SigningSuiteTest {
        8100  +
    test_name: &'static str,
        8101  +
    collection: Collection,
        8102  +
}
 6031   8103   
 6032         -
    fn path(name: &str, ext: &str) -> String {
 6033         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        8104  +
impl SigningSuiteTest {
        8105  +
    /// Create a new test from the V4 test suite
        8106  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        8107  +
        Self {
        8108  +
            test_name,
        8109  +
            collection: Collection::V4,
 6034   8110   
        }
 6035         -
 6036         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 6037         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 6038         -
        read(&path(name, "creq")).trim().to_string()
 6039   8111   
    }
 6040   8112   
 6041         -
    pub(crate) fn test_sts(name: &str) -> String {
 6042         -
        read(&path(name, "sts"))
        8113  +
    /// Create a new test from the V4a test suite
        8114  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        8115  +
        Self {
        8116  +
            test_name,
        8117  +
            collection: Collection::V4A,
 6043   8118   
        }
 6044         -
 6045         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6046         -
        test_parsed_request(name, "req")
 6047   8119   
    }
 6048   8120   
 6049         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 6050         -
        test_parsed_request(name, "sreq")
        8121  +
    /// Get the path to a file in this test suite directory
        8122  +
    fn path(&self, filename: &str) -> String {
        8123  +
        let dir = match self.collection {
        8124  +
            Collection::V4 => "v4",
        8125  +
            Collection::V4A => "v4a",
        8126  +
        };
        8127  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 6051   8128   
    }
 6052   8129   
 6053         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 6054         -
        test_parsed_request(name, "qpsreq")
        8130  +
    /// Get the HTTP request for the test
        8131  +
    pub(crate) fn request(&self) -> TestRequest {
        8132  +
        test_parsed_request(&self.path("request.txt"))
 6055   8133   
    }
 6056   8134   
 6057         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 6058         -
        let path = path(name, ext);
 6059         -
        match parse_request(read(&path).as_bytes()) {
 6060         -
            Ok(parsed) => parsed,
 6061         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        8135  +
    /// Get the signed HTTP request for the test
        8136  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        8137  +
        match signature_location {
        8138  +
            SignatureLocation::QueryParams => {
        8139  +
                test_parsed_request(&self.path("query-signed-request.txt"))
 6062   8140   
            }
        8141  +
            SignatureLocation::Headers => {
        8142  +
                test_parsed_request(&self.path("header-signed-request.txt"))
 6063   8143   
            }
 6064         -
 6065         -
    #[test]
 6066         -
    fn test_parse() {
 6067         -
        test_request("post-header-key-case");
 6068   8144   
        }
 6069         -
 6070         -
    #[test]
 6071         -
    fn test_read_query_params() {
 6072         -
        test_request("get-vanilla-query-order-key-case");
 6073   8145   
    }
 6074         -
}
 6075         -
 6076         -
#[cfg(feature = "sigv4a")]
 6077         -
pub(crate) mod v4a {
 6078         -
    use super::*;
 6079         -
    use crate::http_request::{
 6080         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 6081         -
    };
 6082         -
    use aws_credential_types::Credentials;
 6083         -
    use aws_smithy_runtime_api::client::identity::Identity;
 6084         -
    use serde_derive::Deserialize;
 6085         -
    use std::time::{Duration, SystemTime};
 6086         -
    use time::format_description::well_known::Rfc3339;
 6087         -
    use time::OffsetDateTime;
 6088   8146   
 6089         -
    fn path(test_name: &str, definition_name: &str) -> String {
 6090         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        8147  +
    /// Get the canonical request for the test
        8148  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        8149  +
        match signature_location {
        8150  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        8151  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
 6091   8152   
        }
 6092         -
 6093         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6094         -
        test_parsed_request(&path(name, "request"))
 6095   8153   
    }
 6096   8154   
 6097         -
    pub(crate) fn test_canonical_request(
 6098         -
        name: &str,
 6099         -
        signature_location: SignatureLocation,
 6100         -
    ) -> String {
        8155  +
    /// Get the string to sign for the test
        8156  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
 6101   8157   
        match signature_location {
 6102         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 6103         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        8158  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        8159  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 6104   8160   
        }
 6105   8161   
    }
 6106   8162   
 6107         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
        8163  +
    /// Get the signature for the test
        8164  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
 6108   8165   
        match signature_location {
 6109         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 6110         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        8166  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        8167  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        8168  +
        }
 6111   8169   
    }
        8170  +
        8171  +
    /// Get the test context for the test
        8172  +
    pub(crate) fn context(&self) -> TestContext {
        8173  +
        let context = read(&self.path("context.json"));
        8174  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        8175  +
        tc_builder.build()
 6112   8176   
    }
        8177  +
}
 6113   8178   
 6114         -
    fn test_parsed_request(path: &str) -> TestRequest {
        8179  +
fn test_parsed_request(path: &str) -> TestRequest {
 6115   8180   
    match parse_request(read(path).as_bytes()) {
 6116   8181   
        Ok(parsed) => parsed,
 6117   8182   
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 6118   8183   
    }
 6119         -
    }
        8184  +
}
 6120   8185   
 6121         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 6122         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 6123         -
        let context = read(&path);
 6124         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 6125         -
        tc_builder.build()
 6126         -
    }
        8186  +
fn new_v4_signing_params_from_context(
        8187  +
    test_context: &'_ TestContext,
        8188  +
    signature_location: SignatureLocation,
        8189  +
) -> crate::http_request::SigningParams<'_> {
        8190  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        8191  +
    params.settings.signature_location = signature_location;
        8192  +
    params.into()
        8193  +
}
        8194  +
        8195  +
/// Run the given test from the v4 suite for both header and query
        8196  +
/// signature locations
        8197  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        8198  +
    run_v4_test(test_name, SignatureLocation::Headers);
        8199  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        8200  +
}
        8201  +
        8202  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        8203  +
    assert_eq!(expected.scheme(), actual.scheme());
        8204  +
    assert_eq!(expected.authority(), actual.authority());
        8205  +
    assert_eq!(expected.path(), actual.path());
        8206  +
        8207  +
    // query params may be out of order
        8208  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8209  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        8210  +
    expected_params.sort();
        8211  +
        8212  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8213  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        8214  +
    actual_params.sort();
        8215  +
        8216  +
    assert_eq!(expected_params, actual_params);
        8217  +
}
 6127   8218   
 6128         -
    pub(crate) struct TestContext {
        8219  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        8220  +
    let expected = expected.as_http_request();
        8221  +
    let actual = actual;
        8222  +
    assert_eq!(expected.method(), actual.method());
        8223  +
    assert_eq!(
        8224  +
        expected.headers().len(),
        8225  +
        actual.headers().len(),
        8226  +
        "extra or missing headers"
        8227  +
    );
        8228  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        8229  +
    assert_uri_eq(expected.uri(), actual.uri());
        8230  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        8231  +
}
        8232  +
        8233  +
/// Run the given test from the v4 suite for the given signature location
        8234  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        8235  +
    let test = SigningSuiteTest::v4(test_name);
        8236  +
    let tc = test.context();
        8237  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        8238  +
        8239  +
    let req = test.request();
        8240  +
    let expected_creq = test.canonical_request(signature_location);
        8241  +
    let signable_req = SignableRequest::from(&req);
        8242  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8243  +
        8244  +
    // check canonical request
        8245  +
    assert_eq!(
        8246  +
        expected_creq,
        8247  +
        actual_creq.to_string(),
        8248  +
        "canonical request didn't match (signature location: {signature_location:?})"
        8249  +
    );
        8250  +
        8251  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        8252  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8253  +
    let actual_string_to_sign = StringToSign::new_v4(
        8254  +
        *params.time(),
        8255  +
        params.region().unwrap(),
        8256  +
        params.name(),
        8257  +
        hashed_creq,
        8258  +
    )
        8259  +
    .to_string();
        8260  +
        8261  +
    // check string to sign
        8262  +
    assert_eq!(
        8263  +
        expected_string_to_sign, actual_string_to_sign,
        8264  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        8265  +
    );
        8266  +
        8267  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        8268  +
    let mut signed = req.as_http_request();
        8269  +
    out.output.apply_to_request_http0x(&mut signed);
        8270  +
        8271  +
    // check signature
        8272  +
    assert_eq!(
        8273  +
        test.signature(signature_location),
        8274  +
        out.signature,
        8275  +
        "signature didn't match (signature location: {signature_location:?})"
        8276  +
    );
        8277  +
        8278  +
    let expected = test.signed_request(signature_location);
        8279  +
    assert_requests_eq(expected, signed);
        8280  +
}
        8281  +
        8282  +
/// Test suite context.json
        8283  +
pub(crate) struct TestContext {
 6129   8284   
    pub(crate) identity: Identity,
 6130   8285   
    pub(crate) expiration_in_seconds: u64,
 6131   8286   
    pub(crate) normalize: bool,
 6132   8287   
    pub(crate) region: String,
 6133   8288   
    pub(crate) service: String,
 6134   8289   
    pub(crate) timestamp: String,
 6135   8290   
    pub(crate) omit_session_token: bool,
 6136   8291   
    pub(crate) sign_body: bool,
 6137         -
    }
 6138         -
 6139         -
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 6140         -
        fn from(tc: &'a TestContext) -> Self {
 6141         -
            crate::sign::v4a::SigningParams {
 6142         -
                identity: &tc.identity,
 6143         -
                region_set: &tc.region,
 6144         -
                name: &tc.service,
 6145         -
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 6146         -
                    .unwrap()
 6147         -
                    .into(),
 6148         -
                settings: SigningSettings {
 6149         -
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6150         -
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 6151         -
                    uri_path_normalization_mode: tc.normalize.into(),
 6152         -
                    session_token_mode: if tc.omit_session_token {
 6153         -
                        SessionTokenMode::Exclude
 6154         -
                    } else {
 6155         -
                        SessionTokenMode::Include
 6156         -
                    },
 6157         -
                    payload_checksum_kind: if tc.sign_body {
 6158         -
                        PayloadChecksumKind::XAmzSha256
 6159         -
                    } else {
 6160         -
                        PayloadChecksumKind::NoHeader
 6161         -
                    },
 6162         -
                    ..Default::default()
 6163         -
                },
 6164         -
            }
 6165         -
        }
 6166         -
    }
        8292  +
}
 6167   8293   
 6168         -
    // Serde has limitations requiring this odd workaround.
 6169         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 6170         -
    fn return_true() -> bool {
        8294  +
// Serde has limitations requiring this odd workaround.
        8295  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        8296  +
fn return_true() -> bool {
 6171   8297   
    true
 6172         -
    }
        8298  +
}
 6173   8299   
 6174         -
    #[derive(Deserialize)]
 6175         -
    pub(crate) struct TestContextBuilder {
        8300  +
#[derive(serde_derive::Deserialize)]
        8301  +
pub(crate) struct TestContextBuilder {
 6176   8302   
    credentials: TestContextCreds,
 6177   8303   
    expiration_in_seconds: u64,
 6178   8304   
    normalize: bool,
 6179   8305   
    region: String,
 6180   8306   
    service: String,
 6181   8307   
    timestamp: String,
 6182   8308   
    #[serde(default)]
 6183   8309   
    omit_session_token: bool,
 6184   8310   
    #[serde(default = "return_true")]
 6185   8311   
    sign_body: bool,
 6186         -
    }
        8312  +
}
 6187   8313   
 6188         -
    impl TestContextBuilder {
        8314  +
impl TestContextBuilder {
 6189   8315   
    pub(crate) fn build(self) -> TestContext {
 6190   8316   
        let identity = Identity::new(
 6191   8317   
            Credentials::from_keys(
 6192   8318   
                &self.credentials.access_key_id,
 6193   8319   
                &self.credentials.secret_access_key,
 6194   8320   
                self.credentials.token.clone(),
 6195   8321   
            ),
 6196   8322   
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 6197   8323   
        );
 6198   8324   
 6199   8325   
        TestContext {
 6200   8326   
            identity,
 6201   8327   
            expiration_in_seconds: self.expiration_in_seconds,
 6202   8328   
            normalize: self.normalize,
 6203   8329   
            region: self.region,
 6204   8330   
            service: self.service,
 6205   8331   
            timestamp: self.timestamp,
 6206   8332   
            omit_session_token: self.omit_session_token,
 6207   8333   
            sign_body: self.sign_body,
 6208   8334   
        }
 6209   8335   
    }
 6210         -
    }
        8336  +
}
 6211   8337   
 6212         -
    #[derive(Deserialize)]
 6213         -
    pub(crate) struct TestContextCreds {
        8338  +
#[derive(serde_derive::Deserialize)]
        8339  +
pub(crate) struct TestContextCreds {
 6214   8340   
    access_key_id: String,
 6215   8341   
    secret_access_key: String,
 6216   8342   
    token: Option<String>,
        8343  +
}
        8344  +
        8345  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        8346  +
    fn from(tc: &'a TestContext) -> Self {
        8347  +
        crate::sign::v4::SigningParams {
        8348  +
            identity: &tc.identity,
        8349  +
            region: &tc.region,
        8350  +
            name: &tc.service,
        8351  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8352  +
                .unwrap()
        8353  +
                .into(),
        8354  +
            settings: SigningSettings {
        8355  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8356  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8357  +
                uri_path_normalization_mode: tc.normalize.into(),
        8358  +
                session_token_mode: if tc.omit_session_token {
        8359  +
                    SessionTokenMode::Exclude
        8360  +
                } else {
        8361  +
                    SessionTokenMode::Include
        8362  +
                },
        8363  +
                payload_checksum_kind: if tc.sign_body {
        8364  +
                    PayloadChecksumKind::XAmzSha256
        8365  +
                } else {
        8366  +
                    PayloadChecksumKind::NoHeader
        8367  +
                },
        8368  +
                ..Default::default()
        8369  +
            },
        8370  +
        }
        8371  +
    }
        8372  +
}
        8373  +
        8374  +
#[cfg(feature = "sigv4a")]
        8375  +
pub(crate) mod v4a {
        8376  +
    use super::*;
        8377  +
    use crate::http_request::{
        8378  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        8379  +
    };
        8380  +
    use crate::sign::v4a;
        8381  +
    use p256::ecdsa::signature::{Signature, Verifier};
        8382  +
    use p256::ecdsa::{DerSignature, SigningKey};
        8383  +
    use std::time::Duration;
        8384  +
    use time::format_description::well_known::Rfc3339;
        8385  +
    use time::OffsetDateTime;
        8386  +
        8387  +
    fn new_v4a_signing_params_from_context(
        8388  +
        test_context: &'_ TestContext,
        8389  +
        signature_location: SignatureLocation,
        8390  +
    ) -> crate::http_request::SigningParams<'_> {
        8391  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        8392  +
        params.settings.signature_location = signature_location;
        8393  +
        params.into()
        8394  +
    }
        8395  +
        8396  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        8397  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        8398  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
        8399  +
    }
        8400  +
        8401  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        8402  +
        let test = SigningSuiteTest::v4a(test_name);
        8403  +
        let tc = test.context();
        8404  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        8405  +
        8406  +
        let req = test.request();
        8407  +
        let expected_creq = test.canonical_request(signature_location);
        8408  +
        let signable_req = SignableRequest::from(&req);
        8409  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8410  +
        8411  +
        assert_eq!(
        8412  +
            expected_creq,
        8413  +
            actual_creq.to_string(),
        8414  +
            "canonical request didn't match (signature location: {signature_location:?})"
        8415  +
        );
        8416  +
        8417  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        8418  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8419  +
        let actual_string_to_sign = StringToSign::new_v4a(
        8420  +
            *params.time(),
        8421  +
            params.region_set().unwrap(),
        8422  +
            params.name(),
        8423  +
            hashed_creq,
        8424  +
        )
        8425  +
        .to_string();
        8426  +
        8427  +
        assert_eq!(
        8428  +
            expected_string_to_sign, actual_string_to_sign,
        8429  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        8430  +
        );
        8431  +
        8432  +
        let out = sign(signable_req, &params).unwrap();
        8433  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        8434  +
        out.output
        8435  +
            .apply_to_request_http0x(&mut req.as_http_request());
        8436  +
        8437  +
        let creds = params.credentials().unwrap();
        8438  +
        let signing_key =
        8439  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        8440  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        8441  +
        let sig = sig
        8442  +
            .try_into()
        8443  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        8444  +
        8445  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        8446  +
        let peer_public_key = signing_key.verifying_key();
        8447  +
        let sts = actual_string_to_sign.as_bytes();
        8448  +
        peer_public_key.verify(sts, &sig).unwrap();
        8449  +
        // TODO(sigv4a) - use public.key.json as verifying key?
        8450  +
    }
        8451  +
        8452  +
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
        8453  +
        fn from(tc: &'a TestContext) -> Self {
        8454  +
            crate::sign::v4a::SigningParams {
        8455  +
                identity: &tc.identity,
        8456  +
                region_set: &tc.region,
        8457  +
                name: &tc.service,
        8458  +
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8459  +
                    .unwrap()
        8460  +
                    .into(),
        8461  +
                settings: SigningSettings {
        8462  +
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8463  +
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8464  +
                    uri_path_normalization_mode: tc.normalize.into(),
        8465  +
                    session_token_mode: if tc.omit_session_token {
        8466  +
                        SessionTokenMode::Exclude
        8467  +
                    } else {
        8468  +
                        SessionTokenMode::Include
        8469  +
                    },
        8470  +
                    payload_checksum_kind: if tc.sign_body {
        8471  +
                        PayloadChecksumKind::XAmzSha256
        8472  +
                    } else {
        8473  +
                        PayloadChecksumKind::NoHeader
        8474  +
                    },
        8475  +
                    ..Default::default()
        8476  +
                },
        8477  +
            }
        8478  +
        }
 6217   8479   
    }
 6218   8480   
 6219   8481   
    #[test]
 6220   8482   
    fn test_parse() {
 6221         -
        let req = test_request("post-header-key-case");
        8483  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 6222   8484   
        assert_eq!(req.method, "POST");
 6223   8485   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6224   8486   
        assert!(req.headers.is_empty());
 6225   8487   
    }
 6226   8488   
 6227   8489   
    #[test]
 6228   8490   
    fn test_read_query_params() {
 6229         -
        let req = test_request("get-header-value-trim");
        8491  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 6230   8492   
        assert_eq!(req.method, "GET");
 6231   8493   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6232   8494   
        assert!(!req.headers.is_empty());
 6233   8495   
    }
 6234   8496   
}
 6235   8497   
 6236   8498   
fn read(path: &str) -> String {
 6237   8499   
    println!("Loading `{}` for test case...", path);
 6238   8500   
    let v = {
 6239   8501   
        match std::fs::read_to_string(path) {
 6240   8502   
            // This replacement is necessary for tests to pass on Windows, as reading the
 6241   8503   
            // test snapshots from the file system results in CRLF line endings being inserted.
 6242   8504   
            Ok(value) => value.replace("\r\n", "\n"),
 6243   8505   
            Err(err) => {
 6244   8506   
                panic!("failed to load test case `{}`: {}", path, err);
 6245   8507   
            }
 6246   8508   
        }
 6247   8509   
    };
 6248   8510   
 6249   8511   
    v.trim().to_string()
 6250   8512   
}
 6251   8513   
 6252   8514   
pub(crate) struct TestRequest {
 6253   8515   
    pub(crate) uri: String,
 6254   8516   
    pub(crate) method: String,
 6255   8517   
    pub(crate) headers: Vec<(String, String)>,
 6256   8518   
    pub(crate) body: TestSignedBody,
 6257   8519   
}
 6258   8520   
 6259   8521   
pub(crate) enum TestSignedBody {
 6260   8522   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 6261   8523   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 6262   8524   
                    )
 6263   8525   
                })
 6264   8526   
                .collect::<Vec<_>>(),
 6265   8527   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 6266   8528   
        }
 6267   8529   
    }
 6268   8530   
}
 6269   8531   
 6270   8532   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 6271   8533   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 6272   8534   
        SignableRequest::new(
 6273   8535   
            &request.method,
 6274   8536   
            &request.uri,
 6275   8537   
            request
 6276   8538   
                .headers
 6277   8539   
                .iter()
 6278   8540   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 6279   8541   
            request.body.as_signable_body(),
 6280   8542   
        )
 6281   8543   
        .expect("URI MUST be valid")
 6282   8544   
    }
 6283   8545   
}
 6284   8546   
 6285   8547   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 6286   8548   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 6287   8549   
    // httparse 1.5 requires two trailing newlines to head the header section.
 6288   8550   
    let mut with_newline = Vec::from(s);
 6289   8551   
    with_newline.push(b'\n');
 6290   8552   
    let mut req = httparse::Request::new(&mut headers);
 6291         -
    let _ = req.parse(&with_newline).unwrap();
        8553  +
    let status = req.parse(&with_newline).unwrap();
        8554  +
        8555  +
    let body = if status.is_complete() {
        8556  +
        let body_offset = status.unwrap();
        8557  +
        // ignore the newline we added, take from original
        8558  +
        &s[body_offset..]
        8559  +
    } else {
        8560  +
        &[]
        8561  +
    };
 6292   8562   
 6293   8563   
    let mut uri_builder = Uri::builder().scheme("https");
 6294   8564   
    if let Some(path) = req.path {
 6295   8565   
        uri_builder = uri_builder.path_and_query(path);
 6296   8566   
    }
 6297   8567   
 6298   8568   
    let mut headers = vec![];
 6299   8569   
    for header in req.headers {
 6300   8570   
        let name = header.name.to_lowercase();
 6301   8571   
        if name == "host" {
 6302   8572   
            uri_builder = uri_builder.authority(header.value);
 6303   8573   
        } else if !name.is_empty() {
 6304   8574   
            headers.push((
 6305   8575   
                header.name.to_string(),
 6306   8576   
                std::str::from_utf8(header.value)?.to_string(),
 6307   8577   
            ));
 6308   8578   
        }
 6309   8579   
    }
 6310   8580   
 6311   8581   
    Ok(TestRequest {
 6312   8582   
        uri: uri_builder.build()?.to_string(),
 6313   8583   
        method: req.method.unwrap().to_string(),
 6314   8584   
        headers,
 6315         -
        body: TestSignedBody::Bytes(vec![]),
        8585  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 6316   8586   
    })
 6317   8587   
}
 6318   8588   
 6319   8589   
#[test]
 6320   8590   
fn test_parse_headers() {
 6321   8591   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 6322   8592   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 6323   8593   
    assert_eq!(
 6324   8594   
        httparse::parse_headers(buf, &mut headers),
 6325   8595   
        Ok(httparse::Status::Complete((
 6326   8596   
            56,
 6327   8597   
            &[
 6328   8598   
                httparse::Header {
 6329   8599   
                    name: "Host",
 6330   8600   
                    value: b"example.amazonaws.com",
 6331   8601   
                },
 6332   8602   
                httparse::Header {
 6333   8603   
                    name: "X-Amz-Date",
 6334   8604   
                    value: b"20150830T123600Z",
 6335   8605   
                }
 6336   8606   
            ][..]
 6337   8607   
        )))
 6338   8608   
    );
 6339   8609   
}
 6340   8610   
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
 6341   8611   
index a208453..fc00249 100644
 6342         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        8612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 6343   8613   
@@ -168,52 +168,54 @@ pub mod signing_params {
 6344   8614   
        );
 6345   8615   
 6346   8616   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 6347   8617   
        /// a required argument was not given.
 6348   8618   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 6349   8619   
            Ok(SigningParams {
 6350   8620   
                identity: self
 6351   8621   
                    .identity
 6352   8622   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 6353   8623   
                region: self
 6354   8624   
                    .region
 6355   8625   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 6356   8626   
                name: self
 6357   8627   
                    .name
 6358   8628   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 6359   8629   
                time: self
 6360   8630   
                    .time
 6361   8631   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 6362   8632   
                settings: self
 6363   8633   
                    .settings
 6364   8634   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 6365   8635   
            })
 6366   8636   
        }
 6367   8637   
    }
 6368   8638   
}
 6369   8639   
 6370   8640   
#[cfg(test)]
 6371   8641   
mod tests {
 6372   8642   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 6373   8643   
    use crate::date_time::test_parsers::parse_date_time;
 6374         -
    use crate::http_request::test;
 6375   8644   
 6376   8645   
    #[test]
 6377   8646   
    fn test_signature_calculation() {
 6378   8647   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 6379         -
        let creq = test::v4::test_canonical_request("iam");
        8648  +
        let creq = r#"AWS4-HMAC-SHA256
        8649  +
20150830T123600Z
        8650  +
20150830/us-east-1/iam/aws4_request
        8651  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 6380   8652   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6381   8653   
 6382   8654   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 6383   8655   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 6384   8656   
 6385   8657   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 6386   8658   
        assert_eq!(expected, &signature);
 6387   8659   
    }
 6388   8660   
 6389   8661   
    #[test]
 6390   8662   
    fn sign_payload_empty_string() {
 6391   8663   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 6392   8664   
        let actual = sha256_hex_string([]);
 6393   8665   
        assert_eq!(expected, actual);
 6394   8666   
    }
 6395   8667   
}
 6396   8668   
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
 6397   8669   
index ce78c38..8c2f591 100644
 6398         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        8670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 6399   8671   
@@ -1,43 +1,43 @@
 6400   8672   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6401   8673   
[package]
 6402   8674   
name = "aws-smithy-checksums"
 6403   8675   
version = "0.63.5"
 6404   8676   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 6405   8677   
description = "Checksum calculation and verification callbacks"
 6406   8678   
edition = "2021"
 6407   8679   
license = "Apache-2.0"
 6408   8680   
repository = "https://github.com/smithy-lang/smithy-rs"
 6409   8681   
[package.metadata.docs.rs]
 6410   8682   
all-features = true
 6411   8683   
targets = ["x86_64-unknown-linux-gnu"]
 6412   8684   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6413   8685   
rustdoc-args = ["--cfg", "docsrs"]
 6414   8686   
 6415   8687   
[dependencies]
 6416   8688   
bytes = "1.10.0"
 6417   8689   
crc-fast = "1.3.0"
 6418   8690   
hex = "0.4.3"
 6419   8691   
http = "0.2.9"
 6420   8692   
http-body = "0.4.5"
 6421   8693   
md-5 = "0.10"
 6422   8694   
pin-project-lite = "0.2.14"
 6423   8695   
sha1 = "0.10"
 6424   8696   
sha2 = "0.10"
 6425   8697   
tracing = "0.1.40"
 6426   8698   
 6427   8699   
[dependencies.aws-smithy-http]
 6428   8700   
path = "../aws-smithy-http"
 6429         -
version = "0.62.2"
        8701  +
version = "0.62.3"
 6430   8702   
 6431   8703   
[dependencies.aws-smithy-types]
 6432   8704   
path = "../aws-smithy-types"
 6433   8705   
version = "1.3.2"
 6434   8706   
 6435   8707   
[dev-dependencies]
 6436   8708   
bytes-utils = "0.1.2"
 6437   8709   
pretty_assertions = "1.3"
 6438   8710   
tracing-test = "0.2.1"
 6439   8711   
 6440   8712   
[dev-dependencies.tokio]
 6441   8713   
version = "1.23.1"
 6442   8714   
features = ["macros", "rt"]
 6443   8715   
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
 6444   8716   
index 970c99e..d3c7a49 100644
 6445         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        8717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 6446   8718   
@@ -1,34 +1,34 @@
 6447   8719   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6448   8720   
[package]
 6449   8721   
name = "aws-smithy-http"
 6450         -
version = "0.62.2"
        8722  +
version = "0.62.3"
 6451   8723   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6452   8724   
description = "Smithy HTTP logic for smithy-rs."
 6453   8725   
edition = "2021"
 6454   8726   
license = "Apache-2.0"
 6455   8727   
repository = "https://github.com/smithy-lang/smithy-rs"
 6456   8728   
[package.metadata.docs.rs]
 6457   8729   
all-features = true
 6458   8730   
targets = ["x86_64-unknown-linux-gnu"]
 6459   8731   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6460   8732   
rustdoc-args = ["--cfg", "docsrs"]
 6461   8733   
 6462   8734   
[features]
 6463   8735   
event-stream = ["aws-smithy-eventstream"]
 6464   8736   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 6465   8737   
 6466   8738   
[dependencies]
 6467   8739   
bytes = "1.10.0"
 6468   8740   
bytes-utils = "0.1"
 6469   8741   
percent-encoding = "2.3.1"
 6470   8742   
pin-project-lite = "0.2.14"
 6471   8743   
pin-utils = "0.1.0"
 6472   8744   
tracing = "0.1.40"
 6473   8745   
futures-core = "0.3.31"
 6474   8746   
 6475   8747   
[dependencies.aws-smithy-eventstream]
 6476   8748   
path = "../aws-smithy-eventstream"
 6477   8749   
optional = true
 6478   8750   
version = "0.60.10"
 6479   8751   
 6480   8752   
[dependencies.aws-smithy-runtime-api]
 6481   8753   
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
 6482   8754   
index 508f7a2..361545e 100644
 6483         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        8755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 6484   8756   
@@ -1,27 +1,27 @@
 6485   8757   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6486   8758   
[[bin]]
 6487   8759   
name = "read_many_from_str"
 6488   8760   
path = "fuzz_targets/read_many_from_str.rs"
 6489   8761   
test = false
 6490   8762   
doc = false
 6491   8763   
 6492   8764   
[package]
 6493   8765   
name = "aws-smithy-http-fuzz"
 6494   8766   
version = "0.0.0"
 6495   8767   
authors = ["Automatically generated"]
 6496   8768   
publish = false
 6497   8769   
edition = "2021"
 6498   8770   
 6499   8771   
[package.metadata]
 6500   8772   
cargo-fuzz = true
 6501   8773   
 6502   8774   
[dependencies]
 6503   8775   
libfuzzer-sys = "=0.4.7"
 6504   8776   
http = "0.2.3"
 6505   8777   
 6506   8778   
[dependencies.aws-smithy-http]
 6507   8779   
path = ".."
 6508         -
version = "0.62.2"
        8780  +
version = "0.62.3"
 6509   8781   
 6510   8782   
[workspace]
 6511   8783   
members = ["."]
 6512   8784   
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
 6513   8785   
index fef41d0..2792229 100644
 6514         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        8786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 6515   8787   
@@ -25,68 +25,74 @@ impl QueryWriter {
 6516   8788   
    pub fn new(uri: &Uri) -> Self {
 6517   8789   
        let new_path_and_query = uri
 6518   8790   
            .path_and_query()
 6519   8791   
            .map(|pq| pq.to_string())
 6520   8792   
            .unwrap_or_default();
 6521   8793   
        let prefix = if uri.query().is_none() {
 6522   8794   
            Some('?')
 6523   8795   
        } else if !uri.query().unwrap_or_default().is_empty() {
 6524   8796   
            Some('&')
 6525   8797   
        } else {
 6526   8798   
            None
 6527   8799   
        };
 6528   8800   
        QueryWriter {
 6529   8801   
            base_uri: uri.clone(),
 6530   8802   
            new_path_and_query,
 6531   8803   
            prefix,
 6532   8804   
        }
 6533   8805   
    }
 6534   8806   
 6535   8807   
    /// Clears all query parameters.
 6536   8808   
    pub fn clear_params(&mut self) {
 6537   8809   
        if let Some(index) = self.new_path_and_query.find('?') {
 6538   8810   
            self.new_path_and_query.truncate(index);
 6539   8811   
            self.prefix = Some('?');
 6540   8812   
        }
 6541   8813   
    }
 6542   8814   
 6543   8815   
    /// Inserts a new query parameter. The key and value are percent encoded
 6544   8816   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 6545   8817   
    pub fn insert(&mut self, k: &str, v: &str) {
        8818  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        8819  +
    }
        8820  +
    
        8821  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        8822  +
    /// as is.
        8823  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 6546   8824   
        if let Some(prefix) = self.prefix {
 6547   8825   
            self.new_path_and_query.push(prefix);
 6548   8826   
        }
 6549   8827   
        self.prefix = Some('&');
 6550         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        8828  +
        self.new_path_and_query.push_str(encoded_k);
 6551   8829   
        self.new_path_and_query.push('=');
        8830  +
        self.new_path_and_query.push_str(encoded_v)
 6552   8831   
        
 6553         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
 6554   8832   
    }
 6555   8833   
 6556   8834   
    /// Returns just the built query string.
 6557   8835   
    pub fn build_query(self) -> String {
 6558   8836   
        self.build_uri().query().unwrap_or_default().to_string()
 6559   8837   
    }
 6560   8838   
 6561   8839   
    /// Returns a full [`Uri`] with the query string updated.
 6562   8840   
    pub fn build_uri(self) -> Uri {
 6563   8841   
        let mut parts = self.base_uri.into_parts();
 6564   8842   
        parts.path_and_query = Some(
 6565   8843   
            self.new_path_and_query
 6566   8844   
                .parse()
 6567   8845   
                .expect("adding query should not invalidate URI"),
 6568   8846   
        );
 6569   8847   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 6570   8848   
    }
 6571   8849   
}
 6572   8850   
 6573   8851   
#[cfg(test)]
 6574   8852   
mod test {
 6575   8853   
    use super::QueryWriter;
 6576   8854   
    use http_02x::Uri;
 6577   8855   
 6578   8856   
    #[test]
 6579   8857   
    fn empty_uri() {
 6580   8858   
        let uri = Uri::from_static("http://www.example.com");
 6581   8859   
        let mut query_writer = QueryWriter::new(&uri);
 6582   8860   
        query_writer.insert("key", "val%ue");
 6583   8861   
        query_writer.insert("another", "value");
 6584   8862   
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
 6585   8863   
index f108978..df7a9fe 100644
 6586         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        8864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 6587   8865   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 6588   8866   
 6589   8867   
[package.metadata.smithy-rs-release-tooling]
 6590   8868   
stable = true
 6591   8869   
[package.metadata.cargo-udeps.ignore]
 6592   8870   
normal = ["aws-smithy-http"]
 6593   8871   
 6594   8872   
[features]
 6595   8873   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 6596   8874   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 6597   8875   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 6598   8876   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 6599   8877   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 6600   8878   
rt-tokio = ["tokio/rt"]
 6601   8879   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 6602   8880   
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"]
 6603   8881   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 6604   8882   
 6605   8883   
[dependencies]
 6606   8884   
bytes = "1.10.0"
 6607   8885   
fastrand = "2.3.0"
 6608   8886   
pin-project-lite = "0.2.14"
 6609   8887   
pin-utils = "0.1.0"
 6610   8888   
tracing = "0.1.40"
 6611   8889   
 6612   8890   
[dependencies.aws-smithy-async]
 6613   8891   
path = "../aws-smithy-async"
 6614   8892   
version = "1.2.5"
 6615   8893   
 6616   8894   
[dependencies.aws-smithy-http]
 6617   8895   
path = "../aws-smithy-http"
 6618         -
version = "0.62.2"
        8896  +
version = "0.62.3"
 6619   8897   
 6620   8898   
[dependencies.aws-smithy-observability]
 6621   8899   
path = "../aws-smithy-observability"
 6622   8900   
version = "0.1.3"
 6623   8901   
 6624   8902   
[dependencies.aws-smithy-runtime-api]
 6625   8903   
path = "../aws-smithy-runtime-api"
 6626   8904   
version = "1.8.5"
 6627   8905   
 6628   8906   
[dependencies.aws-smithy-types]
 6629   8907   
path = "../aws-smithy-types"
 6630   8908   
features = ["http-body-0-4-x"]
 6631   8909   
version = "1.3.2"
 6632   8910   
 6633   8911   
[dependencies.aws-smithy-http-client]
 6634   8912   
path = "../aws-smithy-http-client"
 6635   8913   
optional = true
 6636   8914   
version = "1.0.6"
 6637   8915   
 6638   8916   
[dependencies.http-02x]
 6639   8917   
package = "http"
 6640   8918   
version = "0.2.9"
 6641   8919   
 6642   8920   
[dependencies.http-1x]
 6643   8921   
package = "http"
 6644   8922   
version = "1"
 6645   8923   
 6646   8924   
[dependencies.http-body-04x]
 6647   8925   
package = "http-body"
 6648   8926   
version = "0.4.5"
 6649   8927   
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
 6650   8928   
index 4e050c6..f58eb1c 100644
 6651         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
        8929  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 6652   8930   
@@ -1,33 +1,33 @@
 6653   8931   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6654   8932   
[package]
 6655   8933   
name = "aws-smithy-wasm"
 6656   8934   
version = "0.1.4"
 6657   8935   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 6658   8936   
description = "Smithy WebAssembly configuration for smithy-rs."
 6659   8937   
edition = "2021"
 6660   8938   
license = "Apache-2.0"
 6661   8939   
repository = "https://github.com/awslabs/smithy-rs"
 6662   8940   
[package.metadata.docs.rs]
 6663   8941   
all-features = true
 6664   8942   
targets = ["x86_64-unknown-linux-gnu"]
 6665   8943   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6666   8944   
rustdoc-args = ["--cfg", "docsrs"]
 6667   8945   
 6668   8946   
[dependencies]
 6669   8947   
bytes = "1.10.0"
 6670   8948   
http = "1.0.0"
 6671   8949   
tracing = "0.1.40"
 6672   8950   
wasi = "0.12.1"
 6673   8951   
 6674   8952   
[dependencies.aws-smithy-runtime-api]
 6675   8953   
path = "../aws-smithy-runtime-api"
 6676   8954   
features = ["http-1x"]
 6677   8955   
version = "1.8.5"
 6678   8956   
 6679   8957   
[dependencies.aws-smithy-http]
 6680   8958   
path = "../aws-smithy-http"
 6681         -
version = "0.62.2"
        8959  +
version = "0.62.3"
 6682   8960   
 6683   8961   
[dependencies.aws-smithy-types]
 6684   8962   
path = "../aws-smithy-types"
 6685   8963   
version = "1.3.2"
 6686   8964   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6687   8965   
index a880648..139e808 100644
 6688         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
        8966  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6689   8967   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 6690   8968   
edition = "2021"
 6691   8969   
license = "Apache-2.0"
 6692   8970   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6693   8971   
rust-version = "1.86.0"
 6694   8972   
readme = "README.md"
 6695   8973   
[package.metadata.smithy]
 6696   8974   
codegen-version = "ci"
 6697   8975   
[package.metadata.docs.rs]
 6698   8976   
all-features = true
 6699   8977   
targets = ["x86_64-unknown-linux-gnu"]
 6700   8978   
[dependencies.aws-credential-types]
 6701   8979   
path = "../aws-credential-types"
 6702   8980   
version = "1.2.4"
 6703   8981   
 6704   8982   
[dependencies.aws-runtime]
 6705   8983   
path = "../aws-runtime"
 6706   8984   
features = ["event-stream"]
 6707   8985   
version = "1.5.9"
 6708   8986   
 6709   8987   
[dependencies.aws-smithy-async]
 6710   8988   
path = "../aws-smithy-async"
 6711   8989   
version = "1.2.5"
 6712   8990   
 6713   8991   
[dependencies.aws-smithy-eventstream]
 6714   8992   
path = "../aws-smithy-eventstream"
 6715   8993   
version = "0.60.10"
 6716   8994   
 6717   8995   
[dependencies.aws-smithy-http]
 6718   8996   
path = "../aws-smithy-http"
 6719   8997   
features = ["event-stream"]
 6720         -
version = "0.62.2"
        8998  +
version = "0.62.3"
 6721   8999   
 6722   9000   
[dependencies.aws-smithy-json]
 6723   9001   
path = "../aws-smithy-json"
 6724   9002   
version = "0.61.4"
 6725   9003   
 6726   9004   
[dependencies.aws-smithy-runtime]
 6727   9005   
path = "../aws-smithy-runtime"
 6728   9006   
features = ["client"]
 6729   9007   
version = "1.8.5"
 6730   9008   
 6731   9009   
[dependencies.aws-smithy-runtime-api]
 6732   9010   
path = "../aws-smithy-runtime-api"
 6733   9011   
features = ["client", "http-02x"]
 6734   9012   
version = "1.8.5"
 6735   9013   
 6736   9014   
[dependencies.aws-smithy-types]
 6737   9015   
path = "../aws-smithy-types"
 6738   9016   
version = "1.3.2"
 6739   9017   
 6740   9018   
[dependencies.aws-types]
 6741   9019   
path = "../aws-types"
 6742   9020   
version = "1.3.8"
 6743   9021   
 6744   9022   
[dependencies.bytes]
 6745   9023   
version = "1.4.0"
 6746   9024   
 6747   9025   
[dependencies.fastrand]
 6748   9026   
version = "2.0.0"
 6749   9027   
 6750   9028   
[dependencies.http]
 6751   9029   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6752   9030   
index 415ecc9..667d12b 100644
 6753         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
        9031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6754   9032   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 6755   9033   
edition = "2021"
 6756   9034   
license = "Apache-2.0"
 6757   9035   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6758   9036   
rust-version = "1.86.0"
 6759   9037   
readme = "README.md"
 6760   9038   
[package.metadata.smithy]
 6761   9039   
codegen-version = "ci"
 6762   9040   
[package.metadata.docs.rs]
 6763   9041   
all-features = true
 6764   9042   
targets = ["x86_64-unknown-linux-gnu"]
 6765   9043   
[dependencies.aws-credential-types]
 6766   9044   
path = "../aws-credential-types"
 6767   9045   
version = "1.2.4"
 6768   9046   
 6769   9047   
[dependencies.aws-runtime]
 6770   9048   
path = "../aws-runtime"
 6771   9049   
features = ["event-stream"]
 6772   9050   
version = "1.5.9"
 6773   9051   
 6774   9052   
[dependencies.aws-smithy-async]
 6775   9053   
path = "../aws-smithy-async"
 6776   9054   
version = "1.2.5"
 6777   9055   
 6778   9056   
[dependencies.aws-smithy-eventstream]
 6779   9057   
path = "../aws-smithy-eventstream"
 6780   9058   
version = "0.60.10"
 6781   9059   
 6782   9060   
[dependencies.aws-smithy-http]
 6783   9061   
path = "../aws-smithy-http"
 6784   9062   
features = ["event-stream"]
 6785         -
version = "0.62.2"
        9063  +
version = "0.62.3"
 6786   9064   
 6787   9065   
[dependencies.aws-smithy-json]
 6788   9066   
path = "../aws-smithy-json"
 6789   9067   
version = "0.61.4"
 6790   9068   
 6791   9069   
[dependencies.aws-smithy-runtime]
 6792   9070   
path = "../aws-smithy-runtime"
 6793   9071   
features = ["client"]
 6794   9072   
version = "1.8.5"
 6795   9073   
 6796   9074   
[dependencies.aws-smithy-runtime-api]
 6797   9075   
path = "../aws-smithy-runtime-api"
 6798   9076   
features = ["client", "http-02x"]
 6799   9077   
version = "1.8.5"
 6800   9078   
 6801   9079   
[dependencies.aws-smithy-types]
 6802   9080   
path = "../aws-smithy-types"
 6803   9081   
version = "1.3.2"
 6804   9082   
 6805   9083   
[dependencies.aws-types]
 6806   9084   
path = "../aws-types"
 6807   9085   
version = "1.3.8"
 6808   9086   
 6809   9087   
[dependencies.bytes]
 6810   9088   
version = "1.4.0"
 6811   9089   
 6812   9090   
[dependencies.fastrand]
 6813   9091   
version = "2.0.0"
 6814   9092   
 6815   9093   
[dependencies.http]
 6816   9094   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 6817   9095   
index 8871cab..ed88de6 100644
 6818         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
        9096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 6819   9097   
@@ -1,61 +1,61 @@
 6820   9098   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6821   9099   
[package]
 6822   9100   
name = "aws-sdk-codecatalyst"
 6823   9101   
version = "0.0.0-local"
 6824   9102   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6825   9103   
description = "AWS SDK for Amazon CodeCatalyst"
 6826   9104   
edition = "2021"
 6827   9105   
license = "Apache-2.0"
 6828   9106   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6829   9107   
rust-version = "1.86.0"
 6830   9108   
readme = "README.md"
 6831   9109   
[package.metadata.smithy]
 6832   9110   
codegen-version = "ci"
 6833   9111   
[package.metadata.docs.rs]
 6834   9112   
all-features = true
 6835   9113   
targets = ["x86_64-unknown-linux-gnu"]
 6836   9114   
[dependencies.aws-credential-types]
 6837   9115   
path = "../aws-credential-types"
 6838   9116   
version = "1.2.4"
 6839   9117   
 6840   9118   
[dependencies.aws-runtime]
 6841   9119   
path = "../aws-runtime"
 6842   9120   
version = "1.5.9"
 6843   9121   
 6844   9122   
[dependencies.aws-smithy-async]
 6845   9123   
path = "../aws-smithy-async"
 6846   9124   
version = "1.2.5"
 6847   9125   
 6848   9126   
[dependencies.aws-smithy-http]
 6849   9127   
path = "../aws-smithy-http"
 6850         -
version = "0.62.2"
        9128  +
version = "0.62.3"
 6851   9129   
 6852   9130   
[dependencies.aws-smithy-json]
 6853   9131   
path = "../aws-smithy-json"
 6854   9132   
version = "0.61.4"
 6855   9133   
 6856   9134   
[dependencies.aws-smithy-runtime]
 6857   9135   
path = "../aws-smithy-runtime"
 6858   9136   
features = ["client", "http-auth"]
 6859   9137   
version = "1.8.5"
 6860   9138   
 6861   9139   
[dependencies.aws-smithy-runtime-api]
 6862   9140   
path = "../aws-smithy-runtime-api"
 6863   9141   
features = ["client", "http-02x", "http-auth"]
 6864   9142   
version = "1.8.5"
 6865   9143   
 6866   9144   
[dependencies.aws-smithy-types]
 6867   9145   
path = "../aws-smithy-types"
 6868   9146   
version = "1.3.2"
 6869   9147   
 6870   9148   
[dependencies.aws-types]
 6871   9149   
path = "../aws-types"
 6872   9150   
version = "1.3.8"
 6873   9151   
 6874   9152   
[dependencies.bytes]
 6875   9153   
version = "1.4.0"
 6876   9154   
 6877   9155   
[dependencies.fastrand]
 6878   9156   
version = "2.0.0"
 6879   9157   
 6880   9158   
[dependencies.http]
 6881   9159   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 6882   9160   
index 89573ff..05238af 100644
 6883         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
        9161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 6884   9162   
@@ -1,61 +1,61 @@
 6885   9163   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6886   9164   
[package]
 6887   9165   
name = "aws-sdk-config"
 6888   9166   
version = "0.0.0-local"
 6889   9167   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6890   9168   
description = "AWS SDK for AWS Config"
 6891   9169   
edition = "2021"
 6892   9170   
license = "Apache-2.0"
 6893   9171   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6894   9172   
rust-version = "1.86.0"
 6895   9173   
readme = "README.md"
 6896   9174   
[package.metadata.smithy]
 6897   9175   
codegen-version = "ci"
 6898   9176   
[package.metadata.docs.rs]
 6899   9177   
all-features = true
 6900   9178   
targets = ["x86_64-unknown-linux-gnu"]
 6901   9179   
[dependencies.aws-credential-types]
 6902   9180   
path = "../aws-credential-types"
 6903   9181   
version = "1.2.4"
 6904   9182   
 6905   9183   
[dependencies.aws-runtime]
 6906   9184   
path = "../aws-runtime"
 6907   9185   
version = "1.5.9"
 6908   9186   
 6909   9187   
[dependencies.aws-smithy-async]
 6910   9188   
path = "../aws-smithy-async"
 6911   9189   
version = "1.2.5"
 6912   9190   
 6913   9191   
[dependencies.aws-smithy-http]
 6914   9192   
path = "../aws-smithy-http"
 6915         -
version = "0.62.2"
        9193  +
version = "0.62.3"
 6916   9194   
 6917   9195   
[dependencies.aws-smithy-json]
 6918   9196   
path = "../aws-smithy-json"
 6919   9197   
version = "0.61.4"
 6920   9198   
 6921   9199   
[dependencies.aws-smithy-runtime]
 6922   9200   
path = "../aws-smithy-runtime"
 6923   9201   
features = ["client"]
 6924   9202   
version = "1.8.5"
 6925   9203   
 6926   9204   
[dependencies.aws-smithy-runtime-api]
 6927   9205   
path = "../aws-smithy-runtime-api"
 6928   9206   
features = ["client", "http-02x"]
 6929   9207   
version = "1.8.5"
 6930   9208   
 6931   9209   
[dependencies.aws-smithy-types]
 6932   9210   
path = "../aws-smithy-types"
 6933   9211   
version = "1.3.2"
 6934   9212   
 6935   9213   
[dependencies.aws-types]
 6936   9214   
path = "../aws-types"
 6937   9215   
version = "1.3.8"
 6938   9216   
 6939   9217   
[dependencies.bytes]
 6940   9218   
version = "1.4.0"
 6941   9219   
 6942   9220   
[dependencies.fastrand]
 6943   9221   
version = "2.0.0"
 6944   9222   
 6945   9223   
[dependencies.http]
 6946   9224   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 6947   9225   
index d397c58..2c1062b 100644
 6948         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
        9226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 6949   9227   
@@ -1,61 +1,61 @@
 6950   9228   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6951   9229   
[package]
 6952   9230   
name = "aws-sdk-dynamodb"
 6953   9231   
version = "0.0.0-local"
 6954   9232   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6955   9233   
description = "AWS SDK for Amazon DynamoDB"
 6956   9234   
edition = "2021"
 6957   9235   
license = "Apache-2.0"
 6958   9236   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6959   9237   
rust-version = "1.86.0"
 6960   9238   
readme = "README.md"
 6961   9239   
[package.metadata.smithy]
 6962   9240   
codegen-version = "ci"
 6963   9241   
[package.metadata.docs.rs]
 6964   9242   
all-features = true
 6965   9243   
targets = ["x86_64-unknown-linux-gnu"]
 6966   9244   
[dependencies.aws-credential-types]
 6967   9245   
path = "../aws-credential-types"
 6968   9246   
version = "1.2.4"
 6969   9247   
 6970   9248   
[dependencies.aws-runtime]
 6971   9249   
path = "../aws-runtime"
 6972   9250   
version = "1.5.9"
 6973   9251   
 6974   9252   
[dependencies.aws-smithy-async]
 6975   9253   
path = "../aws-smithy-async"
 6976   9254   
version = "1.2.5"
 6977   9255   
 6978   9256   
[dependencies.aws-smithy-http]
 6979   9257   
path = "../aws-smithy-http"
 6980         -
version = "0.62.2"
        9258  +
version = "0.62.3"
 6981   9259   
 6982   9260   
[dependencies.aws-smithy-json]
 6983   9261   
path = "../aws-smithy-json"
 6984   9262   
version = "0.61.4"
 6985   9263   
 6986   9264   
[dependencies.aws-smithy-runtime]
 6987   9265   
path = "../aws-smithy-runtime"
 6988   9266   
features = ["client"]
 6989   9267   
version = "1.8.5"
 6990   9268   
 6991   9269   
[dependencies.aws-smithy-runtime-api]
 6992   9270   
path = "../aws-smithy-runtime-api"
 6993   9271   
features = ["client", "http-02x"]
 6994   9272   
version = "1.8.5"
 6995   9273   
 6996   9274   
[dependencies.aws-smithy-types]
 6997   9275   
path = "../aws-smithy-types"
 6998   9276   
version = "1.3.2"
 6999   9277   
 7000   9278   
[dependencies.aws-types]
 7001   9279   
path = "../aws-types"
 7002   9280   
version = "1.3.8"
 7003   9281   
 7004   9282   
[dependencies.bytes]
 7005   9283   
version = "1.4.0"
 7006   9284   
 7007   9285   
[dependencies.fastrand]
 7008   9286   
version = "2.0.0"
 7009   9287   
 7010   9288   
[dependencies.http]
 7011   9289   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7012   9290   
index c0ba315..46168af 100644
 7013         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
        9291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7014   9292   
@@ -1,61 +1,61 @@
 7015   9293   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7016   9294   
[package]
 7017   9295   
name = "aws-sdk-ec2"
 7018   9296   
version = "0.0.0-local"
 7019   9297   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7020   9298   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 7021   9299   
edition = "2021"
 7022   9300   
license = "Apache-2.0"
 7023   9301   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7024   9302   
rust-version = "1.86.0"
 7025   9303   
readme = "README.md"
 7026   9304   
[package.metadata.smithy]
 7027   9305   
codegen-version = "ci"
 7028   9306   
[package.metadata.docs.rs]
 7029   9307   
all-features = true
 7030   9308   
targets = ["x86_64-unknown-linux-gnu"]
 7031   9309   
[dependencies.aws-credential-types]
 7032   9310   
path = "../aws-credential-types"
 7033   9311   
version = "1.2.4"
 7034   9312   
 7035   9313   
[dependencies.aws-runtime]
 7036   9314   
path = "../aws-runtime"
 7037   9315   
version = "1.5.9"
 7038   9316   
 7039   9317   
[dependencies.aws-smithy-async]
 7040   9318   
path = "../aws-smithy-async"
 7041   9319   
version = "1.2.5"
 7042   9320   
 7043   9321   
[dependencies.aws-smithy-http]
 7044   9322   
path = "../aws-smithy-http"
 7045         -
version = "0.62.2"
        9323  +
version = "0.62.3"
 7046   9324   
 7047   9325   
[dependencies.aws-smithy-json]
 7048   9326   
path = "../aws-smithy-json"
 7049   9327   
version = "0.61.4"
 7050   9328   
 7051   9329   
[dependencies.aws-smithy-query]
 7052   9330   
path = "../aws-smithy-query"
 7053   9331   
version = "0.60.7"
 7054   9332   
 7055   9333   
[dependencies.aws-smithy-runtime]
 7056   9334   
path = "../aws-smithy-runtime"
 7057   9335   
features = ["client"]
 7058   9336   
version = "1.8.5"
 7059   9337   
 7060   9338   
[dependencies.aws-smithy-runtime-api]
 7061   9339   
path = "../aws-smithy-runtime-api"
 7062   9340   
features = ["client", "http-02x"]
 7063   9341   
version = "1.8.5"
 7064   9342   
 7065   9343   
[dependencies.aws-smithy-types]
 7066   9344   
path = "../aws-smithy-types"
 7067   9345   
version = "1.3.2"
 7068   9346   
 7069   9347   
[dependencies.aws-smithy-xml]
 7070   9348   
path = "../aws-smithy-xml"
 7071   9349   
version = "0.60.10"
 7072   9350   
 7073   9351   
[dependencies.aws-types]
 7074   9352   
path = "../aws-types"
 7075   9353   
version = "1.3.8"
 7076   9354   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7077   9355   
index 4474d17..095d40e 100644
 7078         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
        9356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7079   9357   
@@ -1,61 +1,61 @@
 7080   9358   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7081   9359   
[package]
 7082   9360   
name = "aws-sdk-ecs"
 7083   9361   
version = "0.0.0-local"
 7084   9362   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7085   9363   
description = "AWS SDK for Amazon EC2 Container Service"
 7086   9364   
edition = "2021"
 7087   9365   
license = "Apache-2.0"
 7088   9366   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7089   9367   
rust-version = "1.86.0"
 7090   9368   
readme = "README.md"
 7091   9369   
[package.metadata.smithy]
 7092   9370   
codegen-version = "ci"
 7093   9371   
[package.metadata.docs.rs]
 7094   9372   
all-features = true
 7095   9373   
targets = ["x86_64-unknown-linux-gnu"]
 7096   9374   
[dependencies.aws-credential-types]
 7097   9375   
path = "../aws-credential-types"
 7098   9376   
version = "1.2.4"
 7099   9377   
 7100   9378   
[dependencies.aws-runtime]
 7101   9379   
path = "../aws-runtime"
 7102   9380   
version = "1.5.9"
 7103   9381   
 7104   9382   
[dependencies.aws-smithy-async]
 7105   9383   
path = "../aws-smithy-async"
 7106   9384   
version = "1.2.5"
 7107   9385   
 7108   9386   
[dependencies.aws-smithy-http]
 7109   9387   
path = "../aws-smithy-http"
 7110         -
version = "0.62.2"
        9388  +
version = "0.62.3"
 7111   9389   
 7112   9390   
[dependencies.aws-smithy-json]
 7113   9391   
path = "../aws-smithy-json"
 7114   9392   
version = "0.61.4"
 7115   9393   
 7116   9394   
[dependencies.aws-smithy-runtime]
 7117   9395   
path = "../aws-smithy-runtime"
 7118   9396   
features = ["client"]
 7119   9397   
version = "1.8.5"
 7120   9398   
 7121   9399   
[dependencies.aws-smithy-runtime-api]
 7122   9400   
path = "../aws-smithy-runtime-api"
 7123   9401   
features = ["client", "http-02x"]
 7124   9402   
version = "1.8.5"
 7125   9403   
 7126   9404   
[dependencies.aws-smithy-types]
 7127   9405   
path = "../aws-smithy-types"
 7128   9406   
version = "1.3.2"
 7129   9407   
 7130   9408   
[dependencies.aws-types]
 7131   9409   
path = "../aws-types"
 7132   9410   
version = "1.3.8"
 7133   9411   
 7134   9412   
[dependencies.bytes]
 7135   9413   
version = "1.4.0"
 7136   9414   
 7137   9415   
[dependencies.fastrand]
 7138   9416   
version = "2.0.0"
 7139   9417   
 7140   9418   
[dependencies.http]
 7141   9419   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7142   9420   
index 15b1d77..16d7d89 100644
 7143         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
        9421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7144   9422   
@@ -1,65 +1,65 @@
 7145   9423   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7146   9424   
[package]
 7147   9425   
name = "aws-sdk-glacier"
 7148   9426   
version = "0.0.0-local"
 7149   9427   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7150   9428   
description = "AWS SDK for Amazon Glacier"
 7151   9429   
edition = "2021"
 7152   9430   
license = "Apache-2.0"
 7153   9431   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7154   9432   
rust-version = "1.86.0"
 7155   9433   
readme = "README.md"
 7156   9434   
[package.metadata.smithy]
 7157   9435   
codegen-version = "ci"
 7158   9436   
[package.metadata.docs.rs]
 7159   9437   
all-features = true
 7160   9438   
targets = ["x86_64-unknown-linux-gnu"]
 7161   9439   
[dependencies.aws-credential-types]
 7162   9440   
path = "../aws-credential-types"
 7163   9441   
version = "1.2.4"
 7164   9442   
 7165   9443   
[dependencies.aws-runtime]
 7166   9444   
path = "../aws-runtime"
 7167   9445   
version = "1.5.9"
 7168   9446   
 7169   9447   
[dependencies.aws-sigv4]
 7170   9448   
path = "../aws-sigv4"
 7171         -
version = "1.3.3"
        9449  +
version = "1.3.4"
 7172   9450   
 7173   9451   
[dependencies.aws-smithy-async]
 7174   9452   
path = "../aws-smithy-async"
 7175   9453   
version = "1.2.5"
 7176   9454   
 7177   9455   
[dependencies.aws-smithy-http]
 7178   9456   
path = "../aws-smithy-http"
 7179         -
version = "0.62.2"
        9457  +
version = "0.62.3"
 7180   9458   
 7181   9459   
[dependencies.aws-smithy-json]
 7182   9460   
path = "../aws-smithy-json"
 7183   9461   
version = "0.61.4"
 7184   9462   
 7185   9463   
[dependencies.aws-smithy-runtime]
 7186   9464   
path = "../aws-smithy-runtime"
 7187   9465   
features = ["client"]
 7188   9466   
version = "1.8.5"
 7189   9467   
 7190   9468   
[dependencies.aws-smithy-runtime-api]
 7191   9469   
path = "../aws-smithy-runtime-api"
 7192   9470   
features = ["client", "http-02x"]
 7193   9471   
version = "1.8.5"
 7194   9472   
 7195   9473   
[dependencies.aws-smithy-types]
 7196   9474   
path = "../aws-smithy-types"
 7197   9475   
version = "1.3.2"
 7198   9476   
 7199   9477   
[dependencies.aws-types]
 7200   9478   
path = "../aws-types"
 7201   9479   
version = "1.3.8"
 7202   9480   
 7203   9481   
[dependencies.bytes]
 7204   9482   
version = "1.4.0"
 7205   9483   
 7206   9484   
[dependencies.fastrand]
 7207   9485   
version = "2.0.0"
 7208   9486   
 7209   9487   
[dependencies.hex]
 7210   9488   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7211   9489   
index d718a3a..65e6f24 100644
 7212         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
        9490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7213   9491   
@@ -1,61 +1,61 @@
 7214   9492   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7215   9493   
[package]
 7216   9494   
name = "aws-sdk-iam"
 7217   9495   
version = "0.0.0-local"
 7218   9496   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7219   9497   
description = "AWS SDK for AWS Identity and Access Management"
 7220   9498   
edition = "2021"
 7221   9499   
license = "Apache-2.0"
 7222   9500   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7223   9501   
rust-version = "1.86.0"
 7224   9502   
readme = "README.md"
 7225   9503   
[package.metadata.smithy]
 7226   9504   
codegen-version = "ci"
 7227   9505   
[package.metadata.docs.rs]
 7228   9506   
all-features = true
 7229   9507   
targets = ["x86_64-unknown-linux-gnu"]
 7230   9508   
[dependencies.aws-credential-types]
 7231   9509   
path = "../aws-credential-types"
 7232   9510   
version = "1.2.4"
 7233   9511   
 7234   9512   
[dependencies.aws-runtime]
 7235   9513   
path = "../aws-runtime"
 7236   9514   
version = "1.5.9"
 7237   9515   
 7238   9516   
[dependencies.aws-smithy-async]
 7239   9517   
path = "../aws-smithy-async"
 7240   9518   
version = "1.2.5"
 7241   9519   
 7242   9520   
[dependencies.aws-smithy-http]
 7243   9521   
path = "../aws-smithy-http"
 7244         -
version = "0.62.2"
        9522  +
version = "0.62.3"
 7245   9523   
 7246   9524   
[dependencies.aws-smithy-json]
 7247   9525   
path = "../aws-smithy-json"
 7248   9526   
version = "0.61.4"
 7249   9527   
 7250   9528   
[dependencies.aws-smithy-query]
 7251   9529   
path = "../aws-smithy-query"
 7252   9530   
version = "0.60.7"
 7253   9531   
 7254   9532   
[dependencies.aws-smithy-runtime]
 7255   9533   
path = "../aws-smithy-runtime"
 7256   9534   
features = ["client"]
 7257   9535   
version = "1.8.5"
 7258   9536   
 7259   9537   
[dependencies.aws-smithy-runtime-api]
 7260   9538   
path = "../aws-smithy-runtime-api"
 7261   9539   
features = ["client", "http-02x"]
 7262   9540   
version = "1.8.5"
 7263   9541   
 7264   9542   
[dependencies.aws-smithy-types]
 7265   9543   
path = "../aws-smithy-types"
 7266   9544   
version = "1.3.2"
 7267   9545   
 7268   9546   
[dependencies.aws-smithy-xml]
 7269   9547   
path = "../aws-smithy-xml"
 7270   9548   
version = "0.60.10"
 7271   9549   
 7272   9550   
[dependencies.aws-types]
 7273   9551   
path = "../aws-types"
 7274   9552   
version = "1.3.8"
 7275   9553   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7276   9554   
index 0ed4302..3d828a5 100644
 7277         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
        9555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7278   9556   
@@ -1,61 +1,61 @@
 7279   9557   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7280   9558   
[package]
 7281   9559   
name = "aws-sdk-kms"
 7282   9560   
version = "0.0.0-local"
 7283   9561   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7284   9562   
description = "AWS SDK for AWS Key Management Service"
 7285   9563   
edition = "2021"
 7286   9564   
license = "Apache-2.0"
 7287   9565   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7288   9566   
rust-version = "1.86.0"
 7289   9567   
readme = "README.md"
 7290   9568   
[package.metadata.smithy]
 7291   9569   
codegen-version = "ci"
 7292   9570   
[package.metadata.docs.rs]
 7293   9571   
all-features = true
 7294   9572   
targets = ["x86_64-unknown-linux-gnu"]
 7295   9573   
[dependencies.aws-credential-types]
 7296   9574   
path = "../aws-credential-types"
 7297   9575   
version = "1.2.4"
 7298   9576   
 7299   9577   
[dependencies.aws-runtime]
 7300   9578   
path = "../aws-runtime"
 7301   9579   
version = "1.5.9"
 7302   9580   
 7303   9581   
[dependencies.aws-smithy-async]
 7304   9582   
path = "../aws-smithy-async"
 7305   9583   
version = "1.2.5"
 7306   9584   
 7307   9585   
[dependencies.aws-smithy-http]
 7308   9586   
path = "../aws-smithy-http"
 7309         -
version = "0.62.2"
        9587  +
version = "0.62.3"
 7310   9588   
 7311   9589   
[dependencies.aws-smithy-json]
 7312   9590   
path = "../aws-smithy-json"
 7313   9591   
version = "0.61.4"
 7314   9592   
 7315   9593   
[dependencies.aws-smithy-runtime]
 7316   9594   
path = "../aws-smithy-runtime"
 7317   9595   
features = ["client"]
 7318   9596   
version = "1.8.5"
 7319   9597   
 7320   9598   
[dependencies.aws-smithy-runtime-api]
 7321   9599   
path = "../aws-smithy-runtime-api"
 7322   9600   
features = ["client", "http-02x"]
 7323   9601   
version = "1.8.5"
 7324   9602   
 7325   9603   
[dependencies.aws-smithy-types]
 7326   9604   
path = "../aws-smithy-types"
 7327   9605   
version = "1.3.2"
 7328   9606   
 7329   9607   
[dependencies.aws-types]
 7330   9608   
path = "../aws-types"
 7331   9609   
version = "1.3.8"
 7332   9610   
 7333   9611   
[dependencies.bytes]
 7334   9612   
version = "1.4.0"
 7335   9613   
 7336   9614   
[dependencies.fastrand]
 7337   9615   
version = "2.0.0"
 7338   9616   
 7339   9617   
[dependencies.http]
 7340   9618   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7341   9619   
index 6518dfc..6b94752 100644
 7342         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
        9620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7343   9621   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 7344   9622   
edition = "2021"
 7345   9623   
license = "Apache-2.0"
 7346   9624   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7347   9625   
rust-version = "1.86.0"
 7348   9626   
readme = "README.md"
 7349   9627   
[package.metadata.smithy]
 7350   9628   
codegen-version = "ci"
 7351   9629   
[package.metadata.docs.rs]
 7352   9630   
all-features = true
 7353   9631   
targets = ["x86_64-unknown-linux-gnu"]
 7354   9632   
[dependencies.aws-credential-types]
 7355   9633   
path = "../aws-credential-types"
 7356   9634   
version = "1.2.4"
 7357   9635   
 7358   9636   
[dependencies.aws-runtime]
 7359   9637   
path = "../aws-runtime"
 7360   9638   
features = ["event-stream"]
 7361   9639   
version = "1.5.9"
 7362   9640   
 7363   9641   
[dependencies.aws-smithy-async]
 7364   9642   
path = "../aws-smithy-async"
 7365   9643   
version = "1.2.5"
 7366   9644   
 7367   9645   
[dependencies.aws-smithy-eventstream]
 7368   9646   
path = "../aws-smithy-eventstream"
 7369   9647   
version = "0.60.10"
 7370   9648   
 7371   9649   
[dependencies.aws-smithy-http]
 7372   9650   
path = "../aws-smithy-http"
 7373   9651   
features = ["event-stream"]
 7374         -
version = "0.62.2"
        9652  +
version = "0.62.3"
 7375   9653   
 7376   9654   
[dependencies.aws-smithy-json]
 7377   9655   
path = "../aws-smithy-json"
 7378   9656   
version = "0.61.4"
 7379   9657   
 7380   9658   
[dependencies.aws-smithy-runtime]
 7381   9659   
path = "../aws-smithy-runtime"
 7382   9660   
features = ["client"]
 7383   9661   
version = "1.8.5"
 7384   9662   
 7385   9663   
[dependencies.aws-smithy-runtime-api]
 7386   9664   
path = "../aws-smithy-runtime-api"
 7387   9665   
features = ["client", "http-02x"]
 7388   9666   
version = "1.8.5"
 7389   9667   
 7390   9668   
[dependencies.aws-smithy-types]
 7391   9669   
path = "../aws-smithy-types"
 7392   9670   
version = "1.3.2"
 7393   9671   
 7394   9672   
[dependencies.aws-types]
 7395   9673   
path = "../aws-types"
 7396   9674   
version = "1.3.8"
 7397   9675   
 7398   9676   
[dependencies.bytes]
 7399   9677   
version = "1.4.0"
 7400   9678   
 7401   9679   
[dependencies.fastrand]
 7402   9680   
version = "2.0.0"
 7403   9681   
 7404   9682   
[dependencies.http]
 7405   9683   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7406   9684   
index dabb0e0..34cbc15 100644
 7407         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
        9685  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7408   9686   
@@ -1,65 +1,65 @@
 7409   9687   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7410   9688   
[package]
 7411   9689   
name = "aws-sdk-polly"
 7412   9690   
version = "0.0.0-local"
 7413   9691   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7414   9692   
description = "AWS SDK for Amazon Polly"
 7415   9693   
edition = "2021"
 7416   9694   
license = "Apache-2.0"
 7417   9695   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7418   9696   
rust-version = "1.86.0"
 7419   9697   
readme = "README.md"
 7420   9698   
[package.metadata.smithy]
 7421   9699   
codegen-version = "ci"
 7422   9700   
[package.metadata.docs.rs]
 7423   9701   
all-features = true
 7424   9702   
targets = ["x86_64-unknown-linux-gnu"]
 7425   9703   
[dependencies.aws-credential-types]
 7426   9704   
path = "../aws-credential-types"
 7427   9705   
version = "1.2.4"
 7428   9706   
 7429   9707   
[dependencies.aws-runtime]
 7430   9708   
path = "../aws-runtime"
 7431   9709   
version = "1.5.9"
 7432   9710   
 7433   9711   
[dependencies.aws-sigv4]
 7434   9712   
path = "../aws-sigv4"
 7435         -
version = "1.3.3"
        9713  +
version = "1.3.4"
 7436   9714   
 7437   9715   
[dependencies.aws-smithy-async]
 7438   9716   
path = "../aws-smithy-async"
 7439   9717   
version = "1.2.5"
 7440   9718   
 7441   9719   
[dependencies.aws-smithy-http]
 7442   9720   
path = "../aws-smithy-http"
 7443         -
version = "0.62.2"
        9721  +
version = "0.62.3"
 7444   9722   
 7445   9723   
[dependencies.aws-smithy-json]
 7446   9724   
path = "../aws-smithy-json"
 7447   9725   
version = "0.61.4"
 7448   9726   
 7449   9727   
[dependencies.aws-smithy-runtime]
 7450   9728   
path = "../aws-smithy-runtime"
 7451   9729   
features = ["client"]
 7452   9730   
version = "1.8.5"
 7453   9731   
 7454   9732   
[dependencies.aws-smithy-runtime-api]
 7455   9733   
path = "../aws-smithy-runtime-api"
 7456   9734   
features = ["client", "http-02x"]
 7457   9735   
version = "1.8.5"
 7458   9736   
 7459   9737   
[dependencies.aws-smithy-types]
 7460   9738   
path = "../aws-smithy-types"
 7461   9739   
version = "1.3.2"
 7462   9740   
 7463   9741   
[dependencies.aws-types]
 7464   9742   
path = "../aws-types"
 7465   9743   
version = "1.3.8"
 7466   9744   
 7467   9745   
[dependencies.bytes]
 7468   9746   
version = "1.4.0"
 7469   9747   
 7470   9748   
[dependencies.fastrand]
 7471   9749   
version = "2.0.0"
 7472   9750   
 7473   9751   
[dependencies.http]
 7474   9752   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7475   9753   
index a884716..f3d8713 100644
 7476         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
        9754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7477   9755   
@@ -1,61 +1,61 @@
 7478   9756   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7479   9757   
[package]
 7480   9758   
name = "aws-sdk-qldbsession"
 7481   9759   
version = "0.0.0-local"
 7482   9760   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7483   9761   
description = "AWS SDK for Amazon QLDB Session"
 7484   9762   
edition = "2021"
 7485   9763   
license = "Apache-2.0"
 7486   9764   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7487   9765   
rust-version = "1.86.0"
 7488   9766   
readme = "README.md"
 7489   9767   
[package.metadata.smithy]
 7490   9768   
codegen-version = "ci"
 7491   9769   
[package.metadata.docs.rs]
 7492   9770   
all-features = true
 7493   9771   
targets = ["x86_64-unknown-linux-gnu"]
 7494   9772   
[dependencies.aws-credential-types]
 7495   9773   
path = "../aws-credential-types"
 7496   9774   
version = "1.2.4"
 7497   9775   
 7498   9776   
[dependencies.aws-runtime]
 7499   9777   
path = "../aws-runtime"
 7500   9778   
version = "1.5.9"
 7501   9779   
 7502   9780   
[dependencies.aws-smithy-async]
 7503   9781   
path = "../aws-smithy-async"
 7504   9782   
version = "1.2.5"
 7505   9783   
 7506   9784   
[dependencies.aws-smithy-http]
 7507   9785   
path = "../aws-smithy-http"
 7508         -
version = "0.62.2"
        9786  +
version = "0.62.3"
 7509   9787   
 7510   9788   
[dependencies.aws-smithy-json]
 7511   9789   
path = "../aws-smithy-json"
 7512   9790   
version = "0.61.4"
 7513   9791   
 7514   9792   
[dependencies.aws-smithy-runtime]
 7515   9793   
path = "../aws-smithy-runtime"
 7516   9794   
features = ["client"]
 7517   9795   
version = "1.8.5"
 7518   9796   
 7519   9797   
[dependencies.aws-smithy-runtime-api]
 7520   9798   
path = "../aws-smithy-runtime-api"
 7521   9799   
features = ["client", "http-02x"]
 7522   9800   
version = "1.8.5"
 7523   9801   
 7524   9802   
[dependencies.aws-smithy-types]
 7525   9803   
path = "../aws-smithy-types"
 7526   9804   
version = "1.3.2"
 7527   9805   
 7528   9806   
[dependencies.aws-types]
 7529   9807   
path = "../aws-types"
 7530   9808   
version = "1.3.8"
 7531   9809   
 7532   9810   
[dependencies.bytes]
 7533   9811   
version = "1.4.0"
 7534   9812   
 7535   9813   
[dependencies.fastrand]
 7536   9814   
version = "2.0.0"
 7537   9815   
 7538   9816   
[dependencies.http]
 7539   9817   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7540   9818   
index 32a7dc9..a2c752d 100644
 7541         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
        9819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7542   9820   
@@ -1,61 +1,61 @@
 7543   9821   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7544   9822   
[package]
 7545   9823   
name = "aws-sdk-route53"
 7546   9824   
version = "0.0.0-local"
 7547   9825   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7548   9826   
description = "AWS SDK for Amazon Route 53"
 7549   9827   
edition = "2021"
 7550   9828   
license = "Apache-2.0"
 7551   9829   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7552   9830   
rust-version = "1.86.0"
 7553   9831   
readme = "README.md"
 7554   9832   
[package.metadata.smithy]
 7555   9833   
codegen-version = "ci"
 7556   9834   
[package.metadata.docs.rs]
 7557   9835   
all-features = true
 7558   9836   
targets = ["x86_64-unknown-linux-gnu"]
 7559   9837   
[dependencies.aws-credential-types]
 7560   9838   
path = "../aws-credential-types"
 7561   9839   
version = "1.2.4"
 7562   9840   
 7563   9841   
[dependencies.aws-runtime]
 7564   9842   
path = "../aws-runtime"
 7565   9843   
version = "1.5.9"
 7566   9844   
 7567   9845   
[dependencies.aws-smithy-async]
 7568   9846   
path = "../aws-smithy-async"
 7569   9847   
version = "1.2.5"
 7570   9848   
 7571   9849   
[dependencies.aws-smithy-http]
 7572   9850   
path = "../aws-smithy-http"
 7573         -
version = "0.62.2"
        9851  +
version = "0.62.3"
 7574   9852   
 7575   9853   
[dependencies.aws-smithy-json]
 7576   9854   
path = "../aws-smithy-json"
 7577   9855   
version = "0.61.4"
 7578   9856   
 7579   9857   
[dependencies.aws-smithy-runtime]
 7580   9858   
path = "../aws-smithy-runtime"
 7581   9859   
features = ["client"]
 7582   9860   
version = "1.8.5"
 7583   9861   
 7584   9862   
[dependencies.aws-smithy-runtime-api]
 7585   9863   
path = "../aws-smithy-runtime-api"
 7586   9864   
features = ["client", "http-02x"]
 7587   9865   
version = "1.8.5"
 7588   9866   
 7589   9867   
[dependencies.aws-smithy-types]
 7590   9868   
path = "../aws-smithy-types"
 7591   9869   
version = "1.3.2"
 7592   9870   
 7593   9871   
[dependencies.aws-smithy-xml]
 7594   9872   
path = "../aws-smithy-xml"
 7595   9873   
version = "0.60.10"
 7596   9874   
 7597   9875   
[dependencies.aws-types]
 7598   9876   
path = "../aws-types"
 7599   9877   
version = "1.3.8"
 7600   9878   
 7601   9879   
[dependencies.fastrand]
 7602   9880   
version = "2.0.0"
 7603   9881   
 7604   9882   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7605   9883   
index f65e261..2f6bec0 100644
 7606         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
        9884  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7607   9885   
@@ -1,75 +1,75 @@
 7608   9886   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7609   9887   
[package]
 7610   9888   
name = "aws-sdk-s3"
 7611   9889   
version = "0.0.0-local"
 7612   9890   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7613   9891   
description = "AWS SDK for Amazon Simple Storage Service"
 7614   9892   
edition = "2021"
 7615   9893   
license = "Apache-2.0"
 7616   9894   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7617   9895   
rust-version = "1.86.0"
 7618   9896   
readme = "README.md"
 7619   9897   
[package.metadata.smithy]
 7620   9898   
codegen-version = "ci"
 7621   9899   
[package.metadata.docs.rs]
 7622   9900   
all-features = true
 7623   9901   
targets = ["x86_64-unknown-linux-gnu"]
 7624   9902   
[dependencies.aws-credential-types]
 7625   9903   
path = "../aws-credential-types"
 7626   9904   
version = "1.2.4"
 7627   9905   
 7628   9906   
[dependencies.aws-runtime]
 7629   9907   
path = "../aws-runtime"
 7630   9908   
features = ["event-stream", "http-02x"]
 7631   9909   
version = "1.5.9"
 7632   9910   
 7633   9911   
[dependencies.aws-sigv4]
 7634   9912   
path = "../aws-sigv4"
 7635         -
version = "1.3.3"
        9913  +
version = "1.3.4"
 7636   9914   
 7637   9915   
[dependencies.aws-smithy-async]
 7638   9916   
path = "../aws-smithy-async"
 7639   9917   
version = "1.2.5"
 7640   9918   
 7641   9919   
[dependencies.aws-smithy-checksums]
 7642   9920   
path = "../aws-smithy-checksums"
 7643   9921   
version = "0.63.5"
 7644   9922   
 7645   9923   
[dependencies.aws-smithy-eventstream]
 7646   9924   
path = "../aws-smithy-eventstream"
 7647   9925   
version = "0.60.10"
 7648   9926   
 7649   9927   
[dependencies.aws-smithy-http]
 7650   9928   
path = "../aws-smithy-http"
 7651   9929   
features = ["event-stream"]
 7652         -
version = "0.62.2"
        9930  +
version = "0.62.3"
 7653   9931   
 7654   9932   
[dependencies.aws-smithy-json]
 7655   9933   
path = "../aws-smithy-json"
 7656   9934   
version = "0.61.4"
 7657   9935   
 7658   9936   
[dependencies.aws-smithy-runtime]
 7659   9937   
path = "../aws-smithy-runtime"
 7660   9938   
features = ["client"]
 7661   9939   
version = "1.8.5"
 7662   9940   
 7663   9941   
[dependencies.aws-smithy-runtime-api]
 7664   9942   
path = "../aws-smithy-runtime-api"
 7665   9943   
features = ["client", "http-02x"]
 7666   9944   
version = "1.8.5"
 7667   9945   
 7668   9946   
[dependencies.aws-smithy-types]
 7669   9947   
path = "../aws-smithy-types"
 7670   9948   
version = "1.3.2"
 7671   9949   
 7672   9950   
[dependencies.aws-smithy-xml]
 7673   9951   
path = "../aws-smithy-xml"
 7674   9952   
version = "0.60.10"
 7675   9953   
 7676   9954   
[dependencies.aws-types]
 7677   9955   
path = "../aws-types"
 7678   9956   
version = "1.3.8"
 7679   9957   
 7680   9958   
[dependencies.bytes]
 7681   9959   
version = "1.4.0"
 7682   9960   
 7683   9961   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7684   9962   
index b4d1cdd..861c0cc 100644
 7685         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
        9963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7686   9964   
@@ -1,61 +1,61 @@
 7687   9965   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7688   9966   
[package]
 7689   9967   
name = "aws-sdk-s3control"
 7690   9968   
version = "0.0.0-local"
 7691   9969   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7692   9970   
description = "AWS SDK for AWS S3 Control"
 7693   9971   
edition = "2021"
 7694   9972   
license = "Apache-2.0"
 7695   9973   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7696   9974   
rust-version = "1.86.0"
 7697   9975   
readme = "README.md"
 7698   9976   
[package.metadata.smithy]
 7699   9977   
codegen-version = "ci"
 7700   9978   
[package.metadata.docs.rs]
 7701   9979   
all-features = true
 7702   9980   
targets = ["x86_64-unknown-linux-gnu"]
 7703   9981   
[dependencies.aws-credential-types]
 7704   9982   
path = "../aws-credential-types"
 7705   9983   
version = "1.2.4"
 7706   9984   
 7707   9985   
[dependencies.aws-runtime]
 7708   9986   
path = "../aws-runtime"
 7709   9987   
version = "1.5.9"
 7710   9988   
 7711   9989   
[dependencies.aws-smithy-async]
 7712   9990   
path = "../aws-smithy-async"
 7713   9991   
version = "1.2.5"
 7714   9992   
 7715   9993   
[dependencies.aws-smithy-http]
 7716   9994   
path = "../aws-smithy-http"
 7717         -
version = "0.62.2"
        9995  +
version = "0.62.3"
 7718   9996   
 7719   9997   
[dependencies.aws-smithy-json]
 7720   9998   
path = "../aws-smithy-json"
 7721   9999   
version = "0.61.4"
 7722  10000   
 7723  10001   
[dependencies.aws-smithy-runtime]
 7724  10002   
path = "../aws-smithy-runtime"
 7725  10003   
features = ["client"]
 7726  10004   
version = "1.8.5"
 7727  10005   
 7728  10006   
[dependencies.aws-smithy-runtime-api]
 7729  10007   
path = "../aws-smithy-runtime-api"
 7730  10008   
features = ["client", "http-02x"]
 7731  10009   
version = "1.8.5"
 7732  10010   
 7733  10011   
[dependencies.aws-smithy-types]
 7734  10012   
path = "../aws-smithy-types"
 7735  10013   
version = "1.3.2"
 7736  10014   
 7737  10015   
[dependencies.aws-smithy-xml]
 7738  10016   
path = "../aws-smithy-xml"
 7739  10017   
version = "0.60.10"
 7740  10018   
 7741  10019   
[dependencies.aws-types]
 7742  10020   
path = "../aws-types"
 7743  10021   
version = "1.3.8"
 7744  10022   
 7745  10023   
[dependencies.fastrand]
 7746  10024   
version = "2.0.0"
 7747  10025   
 7748  10026   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7749  10027   
index 2cde182..fc367f4 100644
 7750         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       10028  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7751  10029   
@@ -1,61 +1,61 @@
 7752  10030   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7753  10031   
[package]
 7754  10032   
name = "aws-sdk-sso"
 7755  10033   
version = "0.0.0-local"
 7756  10034   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7757  10035   
description = "AWS SDK for AWS Single Sign-On"
 7758  10036   
edition = "2021"
 7759  10037   
license = "Apache-2.0"
 7760  10038   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7761  10039   
rust-version = "1.86.0"
 7762  10040   
readme = "README.md"
 7763  10041   
[package.metadata.smithy]
 7764  10042   
codegen-version = "ci"
 7765  10043   
[package.metadata.docs.rs]
 7766  10044   
all-features = true
 7767  10045   
targets = ["x86_64-unknown-linux-gnu"]
 7768  10046   
[dependencies.aws-credential-types]
 7769  10047   
path = "../aws-credential-types"
 7770  10048   
version = "1.2.4"
 7771  10049   
 7772  10050   
[dependencies.aws-runtime]
 7773  10051   
path = "../aws-runtime"
 7774  10052   
version = "1.5.9"
 7775  10053   
 7776  10054   
[dependencies.aws-smithy-async]
 7777  10055   
path = "../aws-smithy-async"
 7778  10056   
version = "1.2.5"
 7779  10057   
 7780  10058   
[dependencies.aws-smithy-http]
 7781  10059   
path = "../aws-smithy-http"
 7782         -
version = "0.62.2"
       10060  +
version = "0.62.3"
 7783  10061   
 7784  10062   
[dependencies.aws-smithy-json]
 7785  10063   
path = "../aws-smithy-json"
 7786  10064   
version = "0.61.4"
 7787  10065   
 7788  10066   
[dependencies.aws-smithy-runtime]
 7789  10067   
path = "../aws-smithy-runtime"
 7790  10068   
features = ["client"]
 7791  10069   
version = "1.8.5"
 7792  10070   
 7793  10071   
[dependencies.aws-smithy-runtime-api]
 7794  10072   
path = "../aws-smithy-runtime-api"
 7795  10073   
features = ["client", "http-02x"]
 7796  10074   
version = "1.8.5"
 7797  10075   
 7798  10076   
[dependencies.aws-smithy-types]
 7799  10077   
path = "../aws-smithy-types"
 7800  10078   
version = "1.3.2"
 7801  10079   
 7802  10080   
[dependencies.aws-types]
 7803  10081   
path = "../aws-types"
 7804  10082   
version = "1.3.8"
 7805  10083   
 7806  10084   
[dependencies.bytes]
 7807  10085   
version = "1.4.0"
 7808  10086   
 7809  10087   
[dependencies.fastrand]
 7810  10088   
version = "2.0.0"
 7811  10089   
 7812  10090   
[dependencies.http]
 7813  10091   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 7814  10092   
index 7a34c16..588d0bd 100644
 7815         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       10093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 7816  10094   
@@ -1,61 +1,61 @@
 7817  10095   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7818  10096   
[package]
 7819  10097   
name = "aws-sdk-ssooidc"
 7820  10098   
version = "0.0.0-local"
 7821  10099   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7822  10100   
description = "AWS SDK for AWS SSO OIDC"
 7823  10101   
edition = "2021"
 7824  10102   
license = "Apache-2.0"
 7825  10103   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7826  10104   
rust-version = "1.86.0"
 7827  10105   
readme = "README.md"
 7828  10106   
[package.metadata.smithy]
 7829  10107   
codegen-version = "ci"
 7830  10108   
[package.metadata.docs.rs]
 7831  10109   
all-features = true
 7832  10110   
targets = ["x86_64-unknown-linux-gnu"]
 7833  10111   
[dependencies.aws-credential-types]
 7834  10112   
path = "../aws-credential-types"
 7835  10113   
version = "1.2.4"
 7836  10114   
 7837  10115   
[dependencies.aws-runtime]
 7838  10116   
path = "../aws-runtime"
 7839  10117   
version = "1.5.9"
 7840  10118   
 7841  10119   
[dependencies.aws-smithy-async]
 7842  10120   
path = "../aws-smithy-async"
 7843  10121   
version = "1.2.5"
 7844  10122   
 7845  10123   
[dependencies.aws-smithy-http]
 7846  10124   
path = "../aws-smithy-http"
 7847         -
version = "0.62.2"
       10125  +
version = "0.62.3"
 7848  10126   
 7849  10127   
[dependencies.aws-smithy-json]
 7850  10128   
path = "../aws-smithy-json"
 7851  10129   
version = "0.61.4"
 7852  10130   
 7853  10131   
[dependencies.aws-smithy-runtime]
 7854  10132   
path = "../aws-smithy-runtime"
 7855  10133   
features = ["client"]
 7856  10134   
version = "1.8.5"
 7857  10135   
 7858  10136   
[dependencies.aws-smithy-runtime-api]
 7859  10137   
path = "../aws-smithy-runtime-api"
 7860  10138   
features = ["client", "http-02x"]
 7861  10139   
version = "1.8.5"
 7862  10140   
 7863  10141   
[dependencies.aws-smithy-types]
 7864  10142   
path = "../aws-smithy-types"
 7865  10143   
version = "1.3.2"
 7866  10144   
 7867  10145   
[dependencies.aws-types]
 7868  10146   
path = "../aws-types"
 7869  10147   
version = "1.3.8"
 7870  10148   
 7871  10149   
[dependencies.bytes]
 7872  10150   
version = "1.4.0"
 7873  10151   
 7874  10152   
[dependencies.fastrand]
 7875  10153   
version = "2.0.0"
 7876  10154   
 7877  10155   
[dependencies.http]
 7878  10156   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 7879  10157   
index 895dfb3..f2ce34e 100644
 7880         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       10158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 7881  10159   
@@ -1,61 +1,61 @@
 7882  10160   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7883  10161   
[package]
 7884  10162   
name = "aws-sdk-sts"
 7885  10163   
version = "0.0.0-local"
 7886  10164   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7887  10165   
description = "AWS SDK for AWS Security Token Service"
 7888  10166   
edition = "2021"
 7889  10167   
license = "Apache-2.0"
 7890  10168   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7891  10169   
rust-version = "1.86.0"
 7892  10170   
readme = "README.md"
 7893  10171   
[package.metadata.smithy]
 7894  10172   
codegen-version = "ci"
 7895  10173   
[package.metadata.docs.rs]
 7896  10174   
all-features = true
 7897  10175   
targets = ["x86_64-unknown-linux-gnu"]
 7898  10176   
[dependencies.aws-credential-types]
 7899  10177   
path = "../aws-credential-types"
 7900  10178   
version = "1.2.4"
 7901  10179   
 7902  10180   
[dependencies.aws-runtime]
 7903  10181   
path = "../aws-runtime"
 7904  10182   
version = "1.5.9"
 7905  10183   
 7906  10184   
[dependencies.aws-smithy-async]
 7907  10185   
path = "../aws-smithy-async"
 7908  10186   
version = "1.2.5"
 7909  10187   
 7910  10188   
[dependencies.aws-smithy-http]
 7911  10189   
path = "../aws-smithy-http"
 7912         -
version = "0.62.2"
       10190  +
version = "0.62.3"
 7913  10191   
 7914  10192   
[dependencies.aws-smithy-json]
 7915  10193   
path = "../aws-smithy-json"
 7916  10194   
version = "0.61.4"
 7917  10195   
 7918  10196   
[dependencies.aws-smithy-query]
 7919  10197   
path = "../aws-smithy-query"
 7920  10198   
version = "0.60.7"
 7921  10199   
 7922  10200   
[dependencies.aws-smithy-runtime]
 7923  10201   
path = "../aws-smithy-runtime"
 7924  10202   
features = ["client"]
 7925  10203   
version = "1.8.5"
 7926  10204   
 7927  10205   
[dependencies.aws-smithy-runtime-api]
 7928  10206   
path = "../aws-smithy-runtime-api"
 7929  10207   
features = ["client", "http-02x"]
 7930  10208   
version = "1.8.5"
 7931  10209   
 7932  10210   
[dependencies.aws-smithy-types]
 7933  10211   
path = "../aws-smithy-types"
 7934  10212   
version = "1.3.2"
 7935  10213   
 7936  10214   
[dependencies.aws-smithy-xml]
 7937  10215   
path = "../aws-smithy-xml"
 7938  10216   
version = "0.60.10"
 7939  10217   
 7940  10218   
[dependencies.aws-types]
 7941  10219   
path = "../aws-types"
 7942  10220   
version = "1.3.8"
 7943  10221   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 7944  10222   
index d556561..91178b6 100644
 7945         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       10223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 7946  10224   
@@ -1,61 +1,61 @@
 7947  10225   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7948  10226   
[package]
 7949  10227   
name = "aws-sdk-timestreamquery"
 7950  10228   
version = "0.0.0-local"
 7951  10229   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7952  10230   
description = "AWS SDK for Amazon Timestream Query"
 7953  10231   
edition = "2021"
 7954  10232   
license = "Apache-2.0"
 7955  10233   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7956  10234   
rust-version = "1.86.0"
 7957  10235   
readme = "README.md"
 7958  10236   
[package.metadata.smithy]
 7959  10237   
codegen-version = "ci"
 7960  10238   
[package.metadata.docs.rs]
 7961  10239   
all-features = true
 7962  10240   
targets = ["x86_64-unknown-linux-gnu"]
 7963  10241   
[dependencies.aws-credential-types]
 7964  10242   
path = "../aws-credential-types"
 7965  10243   
version = "1.2.4"
 7966  10244   
 7967  10245   
[dependencies.aws-runtime]
 7968  10246   
path = "../aws-runtime"
 7969  10247   
version = "1.5.9"
 7970  10248   
 7971  10249   
[dependencies.aws-smithy-async]
 7972  10250   
path = "../aws-smithy-async"
 7973  10251   
version = "1.2.5"
 7974  10252   
 7975  10253   
[dependencies.aws-smithy-http]
 7976  10254   
path = "../aws-smithy-http"
 7977         -
version = "0.62.2"
       10255  +
version = "0.62.3"
 7978  10256   
 7979  10257   
[dependencies.aws-smithy-json]
 7980  10258   
path = "../aws-smithy-json"
 7981  10259   
version = "0.61.4"
 7982  10260   
 7983  10261   
[dependencies.aws-smithy-runtime]
 7984  10262   
path = "../aws-smithy-runtime"
 7985  10263   
features = ["client"]
 7986  10264   
version = "1.8.5"
 7987  10265   
 7988  10266   
[dependencies.aws-smithy-runtime-api]
 7989  10267   
path = "../aws-smithy-runtime-api"
 7990  10268   
features = ["client", "http-02x"]
 7991  10269   
version = "1.8.5"
 7992  10270   
 7993  10271   
[dependencies.aws-smithy-types]
 7994  10272   
path = "../aws-smithy-types"
 7995  10273   
version = "1.3.2"
 7996  10274   
 7997  10275   
[dependencies.aws-types]
 7998  10276   
path = "../aws-types"
 7999  10277   
version = "1.3.8"
 8000  10278   
 8001  10279   
[dependencies.bytes]
 8002  10280   
version = "1.4.0"
 8003  10281   
 8004  10282   
[dependencies.fastrand]
 8005  10283   
version = "2.0.0"
 8006  10284   
 8007  10285   
[dependencies.http]
 8008  10286   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8009  10287   
index 0c56e4c..95731e3 100644
 8010         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       10288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8011  10289   
@@ -1,61 +1,61 @@
 8012  10290   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8013  10291   
[package]
 8014  10292   
name = "aws-sdk-timestreamwrite"
 8015  10293   
version = "0.0.0-local"
 8016  10294   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8017  10295   
description = "AWS SDK for Amazon Timestream Write"
 8018  10296   
edition = "2021"
 8019  10297   
license = "Apache-2.0"
 8020  10298   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8021  10299   
rust-version = "1.86.0"
 8022  10300   
readme = "README.md"
 8023  10301   
[package.metadata.smithy]
 8024  10302   
codegen-version = "ci"
 8025  10303   
[package.metadata.docs.rs]
 8026  10304   
all-features = true
 8027  10305   
targets = ["x86_64-unknown-linux-gnu"]
 8028  10306   
[dependencies.aws-credential-types]
 8029  10307   
path = "../aws-credential-types"
 8030  10308   
version = "1.2.4"
 8031  10309   
 8032  10310   
[dependencies.aws-runtime]
 8033  10311   
path = "../aws-runtime"
 8034  10312   
version = "1.5.9"
 8035  10313   
 8036  10314   
[dependencies.aws-smithy-async]
 8037  10315   
path = "../aws-smithy-async"
 8038  10316   
version = "1.2.5"
 8039  10317   
 8040  10318   
[dependencies.aws-smithy-http]
 8041  10319   
path = "../aws-smithy-http"
 8042         -
version = "0.62.2"
       10320  +
version = "0.62.3"
 8043  10321   
 8044  10322   
[dependencies.aws-smithy-json]
 8045  10323   
path = "../aws-smithy-json"
 8046  10324   
version = "0.61.4"
 8047  10325   
 8048  10326   
[dependencies.aws-smithy-runtime]
 8049  10327   
path = "../aws-smithy-runtime"
 8050  10328   
features = ["client"]
 8051  10329   
version = "1.8.5"
 8052  10330   
 8053  10331   
[dependencies.aws-smithy-runtime-api]
 8054  10332   
path = "../aws-smithy-runtime-api"
 8055  10333   
features = ["client", "http-02x"]
 8056  10334   
version = "1.8.5"
 8057  10335   
 8058  10336   
[dependencies.aws-smithy-types]
 8059  10337   
path = "../aws-smithy-types"
 8060  10338   
version = "1.3.2"
 8061  10339   
 8062  10340   
[dependencies.aws-types]
 8063  10341   
path = "../aws-types"
 8064  10342   
version = "1.3.8"
 8065  10343   
 8066  10344   
[dependencies.bytes]
 8067  10345   
version = "1.4.0"
 8068  10346   
 8069  10347   
[dependencies.fastrand]
 8070  10348   
version = "2.0.0"
 8071  10349   
 8072  10350   
[dependencies.http]
 8073  10351   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8074  10352   
index 5b35037..9fb220a 100644
 8075         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       10353  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8076  10354   
@@ -1,71 +1,71 @@
 8077  10355   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8078  10356   
[package]
 8079  10357   
name = "aws-sdk-transcribestreaming"
 8080  10358   
version = "0.0.0-local"
 8081  10359   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8082  10360   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 8083  10361   
edition = "2021"
 8084  10362   
license = "Apache-2.0"
 8085  10363   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8086  10364   
rust-version = "1.86.0"
 8087  10365   
readme = "README.md"
 8088  10366   
[package.metadata.smithy]
 8089  10367   
codegen-version = "ci"
 8090  10368   
[package.metadata.docs.rs]
 8091  10369   
all-features = true
 8092  10370   
targets = ["x86_64-unknown-linux-gnu"]
 8093  10371   
[dependencies.aws-credential-types]
 8094  10372   
path = "../aws-credential-types"
 8095  10373   
version = "1.2.4"
 8096  10374   
 8097  10375   
[dependencies.aws-runtime]
 8098  10376   
path = "../aws-runtime"
 8099  10377   
features = ["event-stream"]
 8100  10378   
version = "1.5.9"
 8101  10379   
 8102  10380   
[dependencies.aws-sigv4]
 8103  10381   
path = "../aws-sigv4"
 8104         -
version = "1.3.3"
       10382  +
version = "1.3.4"
 8105  10383   
 8106  10384   
[dependencies.aws-smithy-async]
 8107  10385   
path = "../aws-smithy-async"
 8108  10386   
version = "1.2.5"
 8109  10387   
 8110  10388   
[dependencies.aws-smithy-eventstream]
 8111  10389   
path = "../aws-smithy-eventstream"
 8112  10390   
version = "0.60.10"
 8113  10391   
 8114  10392   
[dependencies.aws-smithy-http]
 8115  10393   
path = "../aws-smithy-http"
 8116  10394   
features = ["event-stream"]
 8117         -
version = "0.62.2"
       10395  +
version = "0.62.3"
 8118  10396   
 8119  10397   
[dependencies.aws-smithy-json]
 8120  10398   
path = "../aws-smithy-json"
 8121  10399   
version = "0.61.4"
 8122  10400   
 8123  10401   
[dependencies.aws-smithy-runtime]
 8124  10402   
path = "../aws-smithy-runtime"
 8125  10403   
features = ["client"]
 8126  10404   
version = "1.8.5"
 8127  10405