AWS SDK

AWS SDK

rev. 3964b40d6806bc3f52bd311e2c791030c3325f2c

Files changed:

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

@@ -1,0 +4,0 @@
    1         -
GET /example/.. 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-dot-slash/get-slash-dot-slash.authz

@@ -1,0 +9261,11534 @@
    1         -
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
    2      0   
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.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.sreq
    3      1   
deleted file mode 100644
    4      2   
index 23a2b41..0000000
    5         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.sreq
           3  +
++ /dev/null
    6      4   
@@ -1,4 +0,0 @@
    7         -
GET /./ 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=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 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-pointless-dot/get-slash-pointless-dot.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.authz
   12      6   
deleted file mode 100644
   13      7   
index b76ca1e..0000000
   14         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-pointless-dot/get-slash-pointless-dot.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=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 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-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
   18     11   
deleted file mode 100644
   19     12   
index 8096609..0000000
   20         -
-- 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
          13  +
++ /dev/null
   21     14   
@@ -1,4 +0,0 @@
   22         -
GET /./example 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=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 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-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
   27     16   
deleted file mode 100644
   28     17   
index 551c027..0000000
   29         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.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=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 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-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
   33     21   
deleted file mode 100644
   34     22   
index cde31b4..0000000
   35         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq
          23  +
++ /dev/null
   36     24   
@@ -1,4 +0,0 @@
   37         -
GET // 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=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 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-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
   42     26   
deleted file mode 100644
   43     27   
index 307c105..0000000
   44         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.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=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 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-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
   48     31   
deleted file mode 100644
   49     32   
index c84a80d..0000000
   50         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq
          33  +
++ /dev/null
   51     34   
@@ -1,4 +0,0 @@
   52         -
GET //example// 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=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 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/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
   57     36   
deleted file mode 100644
   58     37   
index 832d8a5..0000000
   59         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz
          38  +
++ /dev/null
   60     39   
@@ -1 +0,0 @@
   61         -
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
   62     40   
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
   63     41   
deleted file mode 100644
   64     42   
index eefa20c..0000000
   65         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq
          43  +
++ /dev/null
   66     44   
@@ -1,4 +0,0 @@
   67         -
GET /example space/ HTTP/1.1
   68         -
Host:example.amazonaws.com
   69         -
X-Amz-Date:20150830T123600Z
   70         -
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
   71     45   
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
   72     46   
deleted file mode 100644
   73     47   
index c2fcb27..0000000
   74         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt
          48  +
++ /dev/null
   75     49   
@@ -1,3 +0,0 @@
   76         -
A note about signing requests to Amazon S3:
   77         -

   78         -
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
   79     50   
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
   80     51   
deleted file mode 100644
   81     52   
index 89e572e..0000000
   82         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
          53  +
++ /dev/null
   83     54   
@@ -1 +0,0 @@
   84         -
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
   85     55   
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
   86     56   
deleted file mode 100644
   87     57   
index fcf23ce..0000000
   88         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
          58  +
++ /dev/null
   89     59   
@@ -1,4 +0,0 @@
   90         -
POST / HTTP/1.1
   91         -
Host:example.amazonaws.com
   92         -
X-Amz-Date:20150830T123600Z
   93         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
   94     60   
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
   95     61   
deleted file mode 100644
   96     62   
index a62589f..0000000
   97         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
          63  +
++ /dev/null
   98     64   
@@ -1 +0,0 @@
   99         -
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
  100     65   
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
  101     66   
deleted file mode 100644
  102     67   
index b4b78a1..0000000
  103         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
          68  +
++ /dev/null
  104     69   
@@ -1,5 +0,0 @@
  105         -
POST / HTTP/1.1
  106         -
Host:example.amazonaws.com
  107         -
My-Header1:value1
  108         -
X-Amz-Date:20150830T123600Z
  109         -
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
  110     70   
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
  111     71   
deleted file mode 100644
  112     72   
index d9e52a3..0000000
  113         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
          73  +
++ /dev/null
  114     74   
@@ -1 +0,0 @@
  115         -
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
  116     75   
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
  117     76   
deleted file mode 100644
  118     77   
index 99c3210..0000000
  119         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
          78  +
++ /dev/null
  120     79   
@@ -1,5 +0,0 @@
  121         -
POST / HTTP/1.1
  122         -
Host:example.amazonaws.com
  123         -
My-Header1:VALUE1
  124         -
X-Amz-Date:20150830T123600Z
  125         -
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
  126     80   
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
  127     81   
deleted file mode 100644
  128     82   
index 89e572e..0000000
  129         -
-- 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
          83  +
++ /dev/null
  130     84   
@@ -1 +0,0 @@
  131         -
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
  132     85   
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
  133     86   
deleted file mode 100644
  134     87   
index 64aa046..0000000
  135         -
-- 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
          88  +
++ /dev/null
  136     89   
@@ -1 +0,0 @@
  137         -
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
  138     90   
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
  139     91   
deleted file mode 100644
  140     92   
index cc34282..0000000
  141         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
          93  +
++ /dev/null
  142     94   
@@ -1,15 +0,0 @@
  143         -
A note about using temporary security credentials:
  144         -

  145         -
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).
  146         -

  147         -
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.
  148         -

  149         -
The test suite has 2 examples:
  150         -

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

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

  155         -
The test suite uses this example value for X-Amz-Security-Token:
  156         -

  157         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 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-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
  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-empty-query-value/post-vanilla-empty-query-value.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-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
  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-empty-query-value/post-vanilla-empty-query-value.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-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
  174    106   
deleted file mode 100644
  175    107   
index 44280cd..0000000
  176         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.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=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 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-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
  180    111   
deleted file mode 100644
  181    112   
index 82af150..0000000
  182         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
         113  +
++ /dev/null
  183    114   
@@ -1,4 +0,0 @@
  184         -
POST /?Param1=value1 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=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 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-vanilla/post-vanilla.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
  189    116   
deleted file mode 100644
  190    117   
index 89e572e..0000000
  191         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
         118  +
++ /dev/null
  192    119   
@@ -1 +0,0 @@
  193         -
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
  194    120   
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
  195    121   
deleted file mode 100644
  196    122   
index a5ada0d..0000000
  197         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
         123  +
++ /dev/null
  198    124   
@@ -1,4 +0,0 @@
  199         -
POST / HTTP/1.1
  200         -
Host:example.amazonaws.com
  201         -
X-Amz-Date:20150830T123600Z
  202         -
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
  203    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.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
  204    126   
deleted file mode 100644
  205    127   
index df90ca3..0000000
  206         -
-- 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
         128  +
++ /dev/null
  207    129   
@@ -1 +0,0 @@
  208         -
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
  209    130   
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
  210    131   
deleted file mode 100644
  211    132   
index 457b0d5..0000000
  212         -
-- 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
         133  +
++ /dev/null
  213    134   
@@ -1,9 +0,0 @@
  214         -
POST
  215         -
/
  216         -
Param1=value1
  217         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  218         -
host:example.amazonaws.com
  219         -
x-amz-date:20150830T123600Z
  220         -
  221         -
content-type;host;x-amz-date
  222         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  223    135   
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
  224    136   
deleted file mode 100644
  225    137   
index b8ecb89..0000000
  226         -
-- 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
         138  +
++ /dev/null
  227    139   
@@ -1,7 +0,0 @@
  228         -
POST / HTTP/1.1
  229         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  230         -
Host:example.amazonaws.com
  231         -
X-Amz-Date:20150830T123600Z
  232         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  233         -
  234         -
Param1=value1
              \
 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.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
  236    141   
deleted file mode 100644
  237    142   
index 79077d2..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.authz
         143  +
++ /dev/null
  239    144   
@@ -1 +0,0 @@
  240         -
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
  241    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.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
  242    146   
deleted file mode 100644
  243    147   
index 7852617..0000000
  244         -
-- 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
         148  +
++ /dev/null
  245    149   
@@ -1,4 +0,0 @@
  246         -
POST / HTTP/1.1
  247         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  248         -
Host:example.amazonaws.com
  249         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  250    150   
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
  251    151   
deleted file mode 100644
  252    152   
index 3e2e571..0000000
  253         -
-- 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
         153  +
++ /dev/null
  254    154   
@@ -1,4 +0,0 @@
  255         -
POST / HTTP/1.1
  256         -
Host:example.amazonaws.com
  257         -
X-Amz-Date:20150830T123600Z
  258         -
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
  259    155   
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
  260    156   
deleted file mode 100644
  261    157   
index 89ceae8..0000000
  262         -
-- 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
         158  +
++ /dev/null
  263    159   
@@ -1,4 +0,0 @@
  264         -
AWS4-HMAC-SHA256
  265         -
20150830T123600Z
  266         -
20150830/us-east-1/service/aws4_request
  267         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  268    160   
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
  269    161   
deleted file mode 100755
  270    162   
index d645695..0000000
  271         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
         163  +
++ /dev/null
  272    164   
@@ -1,202 +0,0 @@
  273         -
  274         -
                                 Apache License
  275         -
                           Version 2.0, January 2004
  276         -
                        http://www.apache.org/licenses/
  277         -
  278         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  279         -
  280         -
   1. Definitions.
  281         -
  282         -
      "License" shall mean the terms and conditions for use, reproduction,
  283         -
      and distribution as defined by Sections 1 through 9 of this document.
  284         -
  285         -
      "Licensor" shall mean the copyright owner or entity authorized by
  286         -
      the copyright owner that is granting the License.
  287         -
  288         -
      "Legal Entity" shall mean the union of the acting entity and all
  289         -
      other entities that control, are controlled by, or are under common
  290         -
      control with that entity. For the purposes of this definition,
  291         -
      "control" means (i) the power, direct or indirect, to cause the
  292         -
      direction or management of such entity, whether by contract or
  293         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  294         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  295         -
  296         -
      "You" (or "Your") shall mean an individual or Legal Entity
  297         -
      exercising permissions granted by this License.
  298         -
  299         -
      "Source" form shall mean the preferred form for making modifications,
  300         -
      including but not limited to software source code, documentation
  301         -
      source, and configuration files.
  302         -
  303         -
      "Object" form shall mean any form resulting from mechanical
  304         -
      transformation or translation of a Source form, including but
  305         -
      not limited to compiled object code, generated documentation,
  306         -
      and conversions to other media types.
  307         -
  308         -
      "Work" shall mean the work of authorship, whether in Source or
  309         -
      Object form, made available under the License, as indicated by a
  310         -
      copyright notice that is included in or attached to the work
  311         -
      (an example is provided in the Appendix below).
  312         -
  313         -
      "Derivative Works" shall mean any work, whether in Source or Object
  314         -
      form, that is based on (or derived from) the Work and for which the
  315         -
      editorial revisions, annotations, elaborations, or other modifications
  316         -
      represent, as a whole, an original work of authorship. For the purposes
  317         -
      of this License, Derivative Works shall not include works that remain
  318         -
      separable from, or merely link (or bind by name) to the interfaces of,
  319         -
      the Work and Derivative Works thereof.
  320         -
  321         -
      "Contribution" shall mean any work of authorship, including
  322         -
      the original version of the Work and any modifications or additions
  323         -
      to that Work or Derivative Works thereof, that is intentionally
  324         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  325         -
      or by an individual or Legal Entity authorized to submit on behalf of
  326         -
      the copyright owner. For the purposes of this definition, "submitted"
  327         -
      means any form of electronic, verbal, or written communication sent
  328         -
      to the Licensor or its representatives, including but not limited to
  329         -
      communication on electronic mailing lists, source code control systems,
  330         -
      and issue tracking systems that are managed by, or on behalf of, the
  331         -
      Licensor for the purpose of discussing and improving the Work, but
  332         -
      excluding communication that is conspicuously marked or otherwise
  333         -
      designated in writing by the copyright owner as "Not a Contribution."
  334         -
  335         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  336         -
      on behalf of whom a Contribution has been received by Licensor and
  337         -
      subsequently incorporated within the Work.
  338         -
  339         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  340         -
      this License, each Contributor hereby grants to You a perpetual,
  341         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  342         -
      copyright license to reproduce, prepare Derivative Works of,
  343         -
      publicly display, publicly perform, sublicense, and distribute the
  344         -
      Work and such Derivative Works in Source or Object form.
  345         -
  346         -
   3. Grant of Patent License. Subject to the terms and conditions of
  347         -
      this License, each Contributor hereby grants to You a perpetual,
  348         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  349         -
      (except as stated in this section) patent license to make, have made,
  350         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  351         -
      where such license applies only to those patent claims licensable
  352         -
      by such Contributor that are necessarily infringed by their
  353         -
      Contribution(s) alone or by combination of their Contribution(s)
  354         -
      with the Work to which such Contribution(s) was submitted. If You
  355         -
      institute patent litigation against any entity (including a
  356         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  357         -
      or a Contribution incorporated within the Work constitutes direct
  358         -
      or contributory patent infringement, then any patent licenses
  359         -
      granted to You under this License for that Work shall terminate
  360         -
      as of the date such litigation is filed.
  361         -
  362         -
   4. Redistribution. You may reproduce and distribute copies of the
  363         -
      Work or Derivative Works thereof in any medium, with or without
  364         -
      modifications, and in Source or Object form, provided that You
  365         -
      meet the following conditions:
  366         -
  367         -
      (a) You must give any other recipients of the Work or
  368         -
          Derivative Works a copy of this License; and
  369         -
  370         -
      (b) You must cause any modified files to carry prominent notices
  371         -
          stating that You changed the files; and
  372         -
  373         -
      (c) You must retain, in the Source form of any Derivative Works
  374         -
          that You distribute, all copyright, patent, trademark, and
  375         -
          attribution notices from the Source form of the Work,
  376         -
          excluding those notices that do not pertain to any part of
  377         -
          the Derivative Works; and
  378         -
  379         -
      (d) If the Work includes a "NOTICE" text file as part of its
  380         -
          distribution, then any Derivative Works that You distribute must
  381         -
          include a readable copy of the attribution notices contained
  382         -
          within such NOTICE file, excluding those notices that do not
  383         -
          pertain to any part of the Derivative Works, in at least one
  384         -
          of the following places: within a NOTICE text file distributed
  385         -
          as part of the Derivative Works; within the Source form or
  386         -
          documentation, if provided along with the Derivative Works; or,
  387         -
          within a display generated by the Derivative Works, if and
  388         -
          wherever such third-party notices normally appear. The contents
  389         -
          of the NOTICE file are for informational purposes only and
  390         -
          do not modify the License. You may add Your own attribution
  391         -
          notices within Derivative Works that You distribute, alongside
  392         -
          or as an addendum to the NOTICE text from the Work, provided
  393         -
          that such additional attribution notices cannot be construed
  394         -
          as modifying the License.
  395         -
  396         -
      You may add Your own copyright statement to Your modifications and
  397         -
      may provide additional or different license terms and conditions
  398         -
      for use, reproduction, or distribution of Your modifications, or
  399         -
      for any such Derivative Works as a whole, provided Your use,
  400         -
      reproduction, and distribution of the Work otherwise complies with
  401         -
      the conditions stated in this License.
  402         -
  403         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  404         -
      any Contribution intentionally submitted for inclusion in the Work
  405         -
      by You to the Licensor shall be under the terms and conditions of
  406         -
      this License, without any additional terms or conditions.
  407         -
      Notwithstanding the above, nothing herein shall supersede or modify
  408         -
      the terms of any separate license agreement you may have executed
  409         -
      with Licensor regarding such Contributions.
  410         -
  411         -
   6. Trademarks. This License does not grant permission to use the trade
  412         -
      names, trademarks, service marks, or product names of the Licensor,
  413         -
      except as required for reasonable and customary use in describing the
  414         -
      origin of the Work and reproducing the content of the NOTICE file.
  415         -
  416         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  417         -
      agreed to in writing, Licensor provides the Work (and each
  418         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  419         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  420         -
      implied, including, without limitation, any warranties or conditions
  421         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  422         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  423         -
      appropriateness of using or redistributing the Work and assume any
  424         -
      risks associated with Your exercise of permissions under this License.
  425         -
  426         -
   8. Limitation of Liability. In no event and under no legal theory,
  427         -
      whether in tort (including negligence), contract, or otherwise,
  428         -
      unless required by applicable law (such as deliberate and grossly
  429         -
      negligent acts) or agreed to in writing, shall any Contributor be
  430         -
      liable to You for damages, including any direct, indirect, special,
  431         -
      incidental, or consequential damages of any character arising as a
  432         -
      result of this License or out of the use or inability to use the
  433         -
      Work (including but not limited to damages for loss of goodwill,
  434         -
      work stoppage, computer failure or malfunction, or any and all
  435         -
      other commercial damages or losses), even if such Contributor
  436         -
      has been advised of the possibility of such damages.
  437         -
  438         -
   9. Accepting Warranty or Additional Liability. While redistributing
  439         -
      the Work or Derivative Works thereof, You may choose to offer,
  440         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  441         -
      or other liability obligations and/or rights consistent with this
  442         -
      License. However, in accepting such obligations, You may act only
  443         -
      on Your own behalf and on Your sole responsibility, not on behalf
  444         -
      of any other Contributor, and only if You agree to indemnify,
  445         -
      defend, and hold each Contributor harmless for any liability
  446         -
      incurred by, or claims asserted against, such Contributor by reason
  447         -
      of your accepting any such warranty or additional liability.
  448         -
  449         -
   END OF TERMS AND CONDITIONS
  450         -
  451         -
   APPENDIX: How to apply the Apache License to your work.
  452         -
  453         -
      To apply the Apache License to your work, attach the following
  454         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  455         -
      replaced with your own identifying information. (Don't include
  456         -
      the brackets!)  The text should be enclosed in the appropriate
  457         -
      comment syntax for the file format. We also recommend that a
  458         -
      file or class name and description of purpose be included on the
  459         -
      same "printed page" as the copyright notice for easier
  460         -
      identification within third-party archives.
  461         -
  462         -
   Copyright [yyyy] [name of copyright owner]
  463         -
  464         -
   Licensed under the Apache License, Version 2.0 (the "License");
  465         -
   you may not use this file except in compliance with the License.
  466         -
   You may obtain a copy of the License at
  467         -
  468         -
       http://www.apache.org/licenses/LICENSE-2.0
  469         -
  470         -
   Unless required by applicable law or agreed to in writing, software
  471         -
   distributed under the License is distributed on an "AS IS" BASIS,
  472         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  473         -
   See the License for the specific language governing permissions and
  474         -
   limitations under the License.
  475    165   
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
  476    166   
deleted file mode 100755
  477    167   
index d85f69e..0000000
  478         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         168  +
++ /dev/null
  479    169   
@@ -1,2 +0,0 @@
  480         -
AWS Signature Version 4a Test Suite
  481         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  482    170   
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
  483    171   
deleted file mode 100644
  484    172   
index c716622..0000000
  485         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         173  +
++ /dev/null
  486    174   
@@ -1,24 +0,0 @@
  487         -
Where did the files in this directory come from?
  488         -
================================================
  489         -
  490         -
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.
  491         -
  492         -
Signature Version 4A Test Suite
  493         -
------------------------------
  494         -
  495         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  496         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  497         -
  498         -
Each test group contains several files that you can use to validate most of the tasks described in
  499         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  500         -
  501         -
- context.json - Credentials and signer options to use when signing test requests
  502         -
- request.txt - The web request to be signed.
  503         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  504         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  505         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  506         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  507         -
  508         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  509         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  510         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  511    175   
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
  512    176   
deleted file mode 100644
  513    177   
index 45771c7..0000000
  514         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         178  +
++ /dev/null
  515    179   
@@ -1,12 +0,0 @@
  516         -
{
  517         -
    "credentials": {
  518         -
        "access_key_id": "AKIDEXAMPLE",
  519         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  520         -
    },
  521         -
    "expiration_in_seconds": 3600,
  522         -
    "normalize": true,
  523         -
    "region": "us-east-1",
  524         -
    "service": "service",
  525         -
    "sign_body": false,
  526         -
    "timestamp": "2015-08-30T12:36:00Z"
  527         -
}
  528    180   
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
  529    181   
deleted file mode 100644
  530    182   
index 45771c7..0000000
  531         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         183  +
++ /dev/null
  532    184   
@@ -1,12 +0,0 @@
  533         -
{
  534         -
    "credentials": {
  535         -
        "access_key_id": "AKIDEXAMPLE",
  536         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  537         -
    },
  538         -
    "expiration_in_seconds": 3600,
  539         -
    "normalize": true,
  540         -
    "region": "us-east-1",
  541         -
    "service": "service",
  542         -
    "sign_body": false,
  543         -
    "timestamp": "2015-08-30T12:36:00Z"
  544         -
}
  545    185   
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
  546    186   
deleted file mode 100644
  547    187   
index 45771c7..0000000
  548         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         188  +
++ /dev/null
  549    189   
@@ -1,12 +0,0 @@
  550         -
{
  551         -
    "credentials": {
  552         -
        "access_key_id": "AKIDEXAMPLE",
  553         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  554         -
    },
  555         -
    "expiration_in_seconds": 3600,
  556         -
    "normalize": true,
  557         -
    "region": "us-east-1",
  558         -
    "service": "service",
  559         -
    "sign_body": false,
  560         -
    "timestamp": "2015-08-30T12:36:00Z"
  561         -
}
  562    190   
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
  563    191   
deleted file mode 100644
  564    192   
index 45771c7..0000000
  565         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         193  +
++ /dev/null
  566    194   
@@ -1,12 +0,0 @@
  567         -
{
  568         -
    "credentials": {
  569         -
        "access_key_id": "AKIDEXAMPLE",
  570         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  571         -
    },
  572         -
    "expiration_in_seconds": 3600,
  573         -
    "normalize": true,
  574         -
    "region": "us-east-1",
  575         -
    "service": "service",
  576         -
    "sign_body": false,
  577         -
    "timestamp": "2015-08-30T12:36:00Z"
  578         -
}
  579    195   
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
  580    196   
deleted file mode 100644
  581    197   
index afe367b..0000000
  582         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         198  +
++ /dev/null
  583    199   
@@ -1,12 +0,0 @@
  584         -
{
  585         -
    "credentials": {
  586         -
        "access_key_id": "AKIDEXAMPLE",
  587         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  588         -
    },
  589         -
    "expiration_in_seconds": 3600,
  590         -
    "normalize": false,
  591         -
    "region": "us-east-1",
  592         -
    "service": "service",
  593         -
    "sign_body": false,
  594         -
    "timestamp": "2015-08-30T12:36:00Z"
  595         -
}
  596    200   
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
  597    201   
deleted file mode 100644
  598    202   
index 45771c7..0000000
  599         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         203  +
++ /dev/null
  600    204   
@@ -1,12 +0,0 @@
  601         -
{
  602         -
    "credentials": {
  603         -
        "access_key_id": "AKIDEXAMPLE",
  604         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  605         -
    },
  606         -
    "expiration_in_seconds": 3600,
  607         -
    "normalize": true,
  608         -
    "region": "us-east-1",
  609         -
    "service": "service",
  610         -
    "sign_body": false,
  611         -
    "timestamp": "2015-08-30T12:36:00Z"
  612         -
}
  613    205   
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
  614    206   
deleted file mode 100644
  615    207   
index afe367b..0000000
  616         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         208  +
++ /dev/null
  617    209   
@@ -1,12 +0,0 @@
  618         -
{
  619         -
    "credentials": {
  620         -
        "access_key_id": "AKIDEXAMPLE",
  621         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  622         -
    },
  623         -
    "expiration_in_seconds": 3600,
  624         -
    "normalize": false,
  625         -
    "region": "us-east-1",
  626         -
    "service": "service",
  627         -
    "sign_body": false,
  628         -
    "timestamp": "2015-08-30T12:36:00Z"
  629         -
}
  630    210   
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
  631    211   
deleted file mode 100644
  632    212   
index 45771c7..0000000
  633         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         213  +
++ /dev/null
  634    214   
@@ -1,12 +0,0 @@
  635         -
{
  636         -
    "credentials": {
  637         -
        "access_key_id": "AKIDEXAMPLE",
  638         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  639         -
    },
  640         -
    "expiration_in_seconds": 3600,
  641         -
    "normalize": true,
  642         -
    "region": "us-east-1",
  643         -
    "service": "service",
  644         -
    "sign_body": false,
  645         -
    "timestamp": "2015-08-30T12:36:00Z"
  646         -
}
  647    215   
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
  648    216   
deleted file mode 100644
  649    217   
index 45771c7..0000000
  650         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         218  +
++ /dev/null
  651    219   
@@ -1,12 +0,0 @@
  652         -
{
  653         -
    "credentials": {
  654         -
        "access_key_id": "AKIDEXAMPLE",
  655         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  656         -
    },
  657         -
    "expiration_in_seconds": 3600,
  658         -
    "normalize": true,
  659         -
    "region": "us-east-1",
  660         -
    "service": "service",
  661         -
    "sign_body": false,
  662         -
    "timestamp": "2015-08-30T12:36:00Z"
  663         -
}
  664    220   
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
  665    221   
deleted file mode 100644
  666    222   
index 45771c7..0000000
  667         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         223  +
++ /dev/null
  668    224   
@@ -1,12 +0,0 @@
  669         -
{
  670         -
    "credentials": {
  671         -
        "access_key_id": "AKIDEXAMPLE",
  672         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  673         -
    },
  674         -
    "expiration_in_seconds": 3600,
  675         -
    "normalize": true,
  676         -
    "region": "us-east-1",
  677         -
    "service": "service",
  678         -
    "sign_body": false,
  679         -
    "timestamp": "2015-08-30T12:36:00Z"
  680         -
}
  681    225   
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
  682    226   
deleted file mode 100644
  683    227   
index 45771c7..0000000
  684         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         228  +
++ /dev/null
  685    229   
@@ -1,12 +0,0 @@
  686         -
{
  687         -
    "credentials": {
  688         -
        "access_key_id": "AKIDEXAMPLE",
  689         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  690         -
    },
  691         -
    "expiration_in_seconds": 3600,
  692         -
    "normalize": true,
  693         -
    "region": "us-east-1",
  694         -
    "service": "service",
  695         -
    "sign_body": false,
  696         -
    "timestamp": "2015-08-30T12:36:00Z"
  697         -
}
  698    230   
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
  699    231   
deleted file mode 100644
  700    232   
index 45771c7..0000000
  701         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         233  +
++ /dev/null
  702    234   
@@ -1,12 +0,0 @@
  703         -
{
  704         -
    "credentials": {
  705         -
        "access_key_id": "AKIDEXAMPLE",
  706         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  707         -
    },
  708         -
    "expiration_in_seconds": 3600,
  709         -
    "normalize": true,
  710         -
    "region": "us-east-1",
  711         -
    "service": "service",
  712         -
    "sign_body": false,
  713         -
    "timestamp": "2015-08-30T12:36:00Z"
  714         -
}
  715    235   
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
  716    236   
deleted file mode 100644
  717    237   
index 47e7128..0000000
  718         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         238  +
++ /dev/null
  719    239   
@@ -1,9 +0,0 @@
  720         -
GET
  721         -
/
  722         -
  723         -
host:example.amazonaws.com
  724         -
x-amz-date:20150830T123600Z
  725         -
x-amz-region-set:us-east-1
  726         -
  727         -
host;x-amz-date;x-amz-region-set
  728         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  729    240   
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
  730    241   
deleted file mode 100644
  731    242   
index 95d7219..0000000
  732         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         243  +
++ /dev/null
  733    244   
@@ -1,4 +0,0 @@
  734         -
AWS4-ECDSA-P256-SHA256
  735         -
20150830T123600Z
  736         -
20150830/service/aws4_request
  737         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  738    245   
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
  739    246   
deleted file mode 100644
  740    247   
index a34ea26..0000000
  741         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         248  +
++ /dev/null
  742    249   
@@ -1,7 +0,0 @@
  743         -
GET
  744         -
/
  745         -
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
  746         -
host:example.amazonaws.com
  747         -
  748         -
host
  749         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  750    250   
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
  751    251   
deleted file mode 100644
  752    252   
index 48f855c..0000000
  753         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         253  +
++ /dev/null
  754    254   
@@ -1,4 +0,0 @@
  755         -
AWS4-ECDSA-P256-SHA256
  756         -
20150830T123600Z
  757         -
20150830/service/aws4_request
  758         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  759    255   
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
  760    256   
deleted file mode 100644
  761    257   
index 45771c7..0000000
  762         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         258  +
++ /dev/null
  763    259   
@@ -1,12 +0,0 @@
  764         -
{
  765         -
    "credentials": {
  766         -
        "access_key_id": "AKIDEXAMPLE",
  767         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  768         -
    },
  769         -
    "expiration_in_seconds": 3600,
  770         -
    "normalize": true,
  771         -
    "region": "us-east-1",
  772         -
    "service": "service",
  773         -
    "sign_body": false,
  774         -
    "timestamp": "2015-08-30T12:36:00Z"
  775         -
}
  776    260   
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
  777    261   
deleted file mode 100644
  778    262   
index 47e7128..0000000
  779         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         263  +
++ /dev/null
  780    264   
@@ -1,9 +0,0 @@
  781         -
GET
  782         -
/
  783         -
  784         -
host:example.amazonaws.com
  785         -
x-amz-date:20150830T123600Z
  786         -
x-amz-region-set:us-east-1
  787         -
  788         -
host;x-amz-date;x-amz-region-set
  789         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  790    265   
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
  791    266   
deleted file mode 100644
  792    267   
index 95d7219..0000000
  793         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         268  +
++ /dev/null
  794    269   
@@ -1,4 +0,0 @@
  795         -
AWS4-ECDSA-P256-SHA256
  796         -
20150830T123600Z
  797         -
20150830/service/aws4_request
  798         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  799    270   
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
  800    271   
deleted file mode 100644
  801    272   
index a34ea26..0000000
  802         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         273  +
++ /dev/null
  803    274   
@@ -1,7 +0,0 @@
  804         -
GET
  805         -
/
  806         -
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
  807         -
host:example.amazonaws.com
  808         -
  809         -
host
  810         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  811    275   
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
  812    276   
deleted file mode 100644
  813    277   
index 48f855c..0000000
  814         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         278  +
++ /dev/null
  815    279   
@@ -1,4 +0,0 @@
  816         -
AWS4-ECDSA-P256-SHA256
  817         -
20150830T123600Z
  818         -
20150830/service/aws4_request
  819         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  820    280   
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
  821    281   
deleted file mode 100644
  822    282   
index 45771c7..0000000
  823         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         283  +
++ /dev/null
  824    284   
@@ -1,12 +0,0 @@
  825         -
{
  826         -
    "credentials": {
  827         -
        "access_key_id": "AKIDEXAMPLE",
  828         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  829         -
    },
  830         -
    "expiration_in_seconds": 3600,
  831         -
    "normalize": true,
  832         -
    "region": "us-east-1",
  833         -
    "service": "service",
  834         -
    "sign_body": false,
  835         -
    "timestamp": "2015-08-30T12:36:00Z"
  836         -
}
  837    285   
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
  838    286   
deleted file mode 100644
  839    287   
index 45771c7..0000000
  840         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         288  +
++ /dev/null
  841    289   
@@ -1,12 +0,0 @@
  842         -
{
  843         -
    "credentials": {
  844         -
        "access_key_id": "AKIDEXAMPLE",
  845         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  846         -
    },
  847         -
    "expiration_in_seconds": 3600,
  848         -
    "normalize": true,
  849         -
    "region": "us-east-1",
  850         -
    "service": "service",
  851         -
    "sign_body": false,
  852         -
    "timestamp": "2015-08-30T12:36:00Z"
  853         -
}
  854    290   
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
  855    291   
deleted file mode 100644
  856    292   
index 45771c7..0000000
  857         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         293  +
++ /dev/null
  858    294   
@@ -1,12 +0,0 @@
  859         -
{
  860         -
    "credentials": {
  861         -
        "access_key_id": "AKIDEXAMPLE",
  862         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  863         -
    },
  864         -
    "expiration_in_seconds": 3600,
  865         -
    "normalize": true,
  866         -
    "region": "us-east-1",
  867         -
    "service": "service",
  868         -
    "sign_body": false,
  869         -
    "timestamp": "2015-08-30T12:36:00Z"
  870         -
}
  871    295   
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
  872    296   
deleted file mode 100644
  873    297   
index 45771c7..0000000
  874         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         298  +
++ /dev/null
  875    299   
@@ -1,12 +0,0 @@
  876         -
{
  877         -
    "credentials": {
  878         -
        "access_key_id": "AKIDEXAMPLE",
  879         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  880         -
    },
  881         -
    "expiration_in_seconds": 3600,
  882         -
    "normalize": true,
  883         -
    "region": "us-east-1",
  884         -
    "service": "service",
  885         -
    "sign_body": false,
  886         -
    "timestamp": "2015-08-30T12:36:00Z"
  887         -
}
  888    300   
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
  889    301   
deleted file mode 100644
  890    302   
index 45771c7..0000000
  891         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         303  +
++ /dev/null
  892    304   
@@ -1,12 +0,0 @@
  893         -
{
  894         -
    "credentials": {
  895         -
        "access_key_id": "AKIDEXAMPLE",
  896         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  897         -
    },
  898         -
    "expiration_in_seconds": 3600,
  899         -
    "normalize": true,
  900         -
    "region": "us-east-1",
  901         -
    "service": "service",
  902         -
    "sign_body": false,
  903         -
    "timestamp": "2015-08-30T12:36:00Z"
  904         -
}
  905    305   
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
  906    306   
deleted file mode 100644
  907    307   
index 45771c7..0000000
  908         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         308  +
++ /dev/null
  909    309   
@@ -1,12 +0,0 @@
  910         -
{
  911         -
    "credentials": {
  912         -
        "access_key_id": "AKIDEXAMPLE",
  913         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  914         -
    },
  915         -
    "expiration_in_seconds": 3600,
  916         -
    "normalize": true,
  917         -
    "region": "us-east-1",
  918         -
    "service": "service",
  919         -
    "sign_body": false,
  920         -
    "timestamp": "2015-08-30T12:36:00Z"
  921         -
}
  922    310   
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
  923    311   
deleted file mode 100644
  924    312   
index b6fdecf..0000000
  925         -
-- 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
         313  +
++ /dev/null
  926    314   
@@ -1,4 +0,0 @@
  927         -
AWS4-ECDSA-P256-SHA256
  928         -
20150830T123600Z
  929         -
20150830/service/aws4_request
  930         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  931    315   
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
  932    316   
deleted file mode 100644
  933    317   
index a300bea..0000000
  934         -
-- 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
         318  +
++ /dev/null
  935    319   
@@ -1,4 +0,0 @@
  936         -
AWS4-ECDSA-P256-SHA256
  937         -
20150830T123600Z
  938         -
20150830/service/aws4_request
  939         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
  940    320   
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
  941    321   
deleted file mode 100644
  942    322   
index b6fdecf..0000000
  943         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         323  +
++ /dev/null
  944    324   
@@ -1,4 +0,0 @@
  945         -
AWS4-ECDSA-P256-SHA256
  946         -
20150830T123600Z
  947         -
20150830/service/aws4_request
  948         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
  949    325   
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
  950    326   
new file mode 100644
  951    327   
index 0000000..a674243
  952         -
-- /dev/null
         328  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
  953    329   
@@ -0,0 +1,7 @@
         330  +
# AWS SigV4 and SigV4A Signing Test Suite
         331  +
         332  +
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).
         333  +
         334  +
We added the following changes:
         335  +
         336  +
* 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
  954    337   
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
  955    338   
similarity index 100%
  956    339   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
  957    340   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
  958    341   
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
  959    342   
similarity index 100%
  960    343   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
  961    344   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
  962    345   
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
  963    346   
similarity index 100%
  964    347   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
  965    348   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
  966    349   
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
  967    350   
similarity index 100%
  968    351   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
  969    352   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
  970    353   
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
  971    354   
similarity index 100%
  972    355   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
  973    356   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
  974    357   
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
  975    358   
similarity index 100%
  976    359   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
  977    360   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
  978    361   
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
  979    362   
similarity index 100%
  980    363   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
  981    364   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
  982    365   
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
  983    366   
similarity index 99%
  984    367   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
  985    368   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
  986    369   
index 45771c7..0468d80 100644
  987         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
         370  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
  988    371   
@@ -1,12 +1,12 @@
  989    372   
{
  990    373   
    "credentials": {
  991    374   
        "access_key_id": "AKIDEXAMPLE",
  992    375   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  993    376   
    },
  994    377   
    "expiration_in_seconds": 3600,
  995    378   
    "normalize": true,
  996    379   
    "region": "us-east-1",
  997    380   
    "service": "service",
  998    381   
    "sign_body": false,
  999    382   
    "timestamp": "2015-08-30T12:36:00Z"
 1000         -
}
         383  +
}
              \
 No newline at end of file
 1001    384   
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
 1002    385   
similarity index 100%
 1003    386   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
 1004    387   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1005    388   
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
 1006    389   
new file mode 100644
 1007    390   
index 0000000..7fc5d7a
 1008         -
-- /dev/null
         391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1009    392   
@@ -0,0 +1 @@
         393  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
 1010    394   
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
 1011    395   
new file mode 100644
 1012    396   
index 0000000..36a1205
 1013         -
-- /dev/null
         397  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1014    398   
@@ -0,0 +1,8 @@
         399  +
GET / HTTP/1.1
         400  +
Host:example.amazonaws.com
         401  +
My-Header1:value2
         402  +
My-Header1:value2
         403  +
My-Header1:value1
         404  +
X-Amz-Date:20150830T123600Z
         405  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         406  +
 1015    407   
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
 1016    408   
similarity index 100%
 1017    409   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
 1018    410   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1019    411   
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
 1020    412   
new file mode 100644
 1021    413   
index 0000000..f9f4190
 1022         -
-- /dev/null
         414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1023    415   
@@ -0,0 +1,8 @@
         416  +
GET
         417  +
/
         418  +
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
         419  +
host:example.amazonaws.com
         420  +
my-header1:value2,value2,value1
         421  +
         422  +
host;my-header1
         423  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1024    424   
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
 1025    425   
new file mode 100644
 1026    426   
index 0000000..5d0d87f
 1027         -
-- /dev/null
         427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1028    428   
@@ -0,0 +1 @@
         429  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1029    430   
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
 1030    431   
new file mode 100644
 1031    432   
index 0000000..c1dfcf4
 1032         -
-- /dev/null
         433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1033    434   
@@ -0,0 +1,6 @@
         435  +
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
         436  +
Host:example.amazonaws.com
         437  +
My-Header1:value2
         438  +
My-Header1:value2
         439  +
My-Header1:value1
         440  +
 1034    441   
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
 1035    442   
similarity index 53%
 1036    443   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1037    444   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1038    445   
index 0a3350a..077c1bb 100644
 1039         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1040    447   
@@ -1,4 +1,4 @@
 1041    448   
AWS4-HMAC-SHA256
 1042    449   
20150830T123600Z
 1043    450   
20150830/us-east-1/service/aws4_request
 1044         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         451  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1045    452   
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
 1046    453   
similarity index 100%
 1047    454   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1048    455   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1049    456   
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
 1050    457   
similarity index 99%
 1051    458   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1052    459   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1053    460   
index 45771c7..0468d80 100644
 1054         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
         461  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1055    462   
@@ -1,12 +1,12 @@
 1056    463   
{
 1057    464   
    "credentials": {
 1058    465   
        "access_key_id": "AKIDEXAMPLE",
 1059    466   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1060    467   
    },
 1061    468   
    "expiration_in_seconds": 3600,
 1062    469   
    "normalize": true,
 1063    470   
    "region": "us-east-1",
 1064    471   
    "service": "service",
 1065    472   
    "sign_body": false,
 1066    473   
    "timestamp": "2015-08-30T12:36:00Z"
 1067         -
}
         474  +
}
              \
 No newline at end of file
 1068    475   
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
 1069    476   
similarity index 82%
 1070    477   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1071    478   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1072    479   
index 721a39f..8cb5476 100644
 1073         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         480  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1074    481   
@@ -1,9 +1,9 @@
 1075    482   
GET
 1076    483   
/
 1077    484   
 1078    485   
host:example.amazonaws.com
 1079         -
my-header1:value1,value2,value3
         486  +
my-header1:value1 value2 value3
 1080    487   
x-amz-date:20150830T123600Z
 1081    488   
 1082    489   
host;my-header1;x-amz-date
 1083    490   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1084    491   
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
 1085    492   
new file mode 100644
 1086    493   
index 0000000..e6ff7a9
 1087         -
-- /dev/null
         494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1088    495   
@@ -0,0 +1 @@
         496  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1089    497   
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
 1090    498   
new file mode 100644
 1091    499   
index 0000000..b5ef6a0
 1092         -
-- /dev/null
         500  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1093    501   
@@ -0,0 +1,8 @@
         502  +
GET / HTTP/1.1
         503  +
Host:example.amazonaws.com
         504  +
My-Header1:value1
         505  +
  value2
         506  +
     value3
         507  +
X-Amz-Date:20150830T123600Z
         508  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         509  +
 1094    510   
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
 1095    511   
similarity index 53%
 1096    512   
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
 1097    513   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1098    514   
index fd43a41..97c7430 100644
 1099         -
-- 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
         515  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1100    516   
@@ -1,4 +1,4 @@
 1101    517   
AWS4-HMAC-SHA256
 1102    518   
20150830T123600Z
 1103    519   
20150830/us-east-1/service/aws4_request
 1104         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         520  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1105    521   
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
 1106    522   
new file mode 100644
 1107    523   
index 0000000..aac46de
 1108         -
-- /dev/null
         524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1109    525   
@@ -0,0 +1,8 @@
         526  +
GET
         527  +
/
         528  +
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
         529  +
host:example.amazonaws.com
         530  +
my-header1:value1 value2 value3
         531  +
         532  +
host;my-header1
         533  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1110    534   
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
 1111    535   
new file mode 100644
 1112    536   
index 0000000..205732d
 1113         -
-- /dev/null
         537  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1114    538   
@@ -0,0 +1 @@
         539  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1115    540   
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
 1116    541   
new file mode 100644
 1117    542   
index 0000000..a891b87
 1118         -
-- /dev/null
         543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1119    544   
@@ -0,0 +1,6 @@
         545  +
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
         546  +
Host:example.amazonaws.com
         547  +
My-Header1:value1
         548  +
  value2
         549  +
     value3
         550  +
 1120    551   
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
 1121    552   
similarity index 53%
 1122    553   
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
 1123    554   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1124    555   
index 90e66b8..ec3fe45 100644
 1125         -
-- 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
         556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1126    557   
@@ -1,4 +1,4 @@
 1127    558   
AWS4-HMAC-SHA256
 1128    559   
20150830T123600Z
 1129    560   
20150830/us-east-1/service/aws4_request
 1130         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         561  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1131    562   
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
 1132    563   
similarity index 75%
 1133    564   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1134    565   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1135    566   
index 7caa6ac..b5026cd 100644
 1136         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         567  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1137    568   
@@ -1,6 +1,5 @@
 1138    569   
GET / HTTP/1.1
 1139    570   
Host:example.amazonaws.com
 1140    571   
My-Header1:value1
 1141    572   
  value2
 1142    573   
     value3
 1143         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1144    574   
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
 1145    575   
similarity index 99%
 1146    576   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1147    577   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1148    578   
index 45771c7..0468d80 100644
 1149         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
         579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1150    580   
@@ -1,12 +1,12 @@
 1151    581   
{
 1152    582   
    "credentials": {
 1153    583   
        "access_key_id": "AKIDEXAMPLE",
 1154    584   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1155    585   
    },
 1156    586   
    "expiration_in_seconds": 3600,
 1157    587   
    "normalize": true,
 1158    588   
    "region": "us-east-1",
 1159    589   
    "service": "service",
 1160    590   
    "sign_body": false,
 1161    591   
    "timestamp": "2015-08-30T12:36:00Z"
 1162         -
}
         592  +
}
              \
 No newline at end of file
 1163    593   
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
 1164    594   
similarity index 100%
 1165    595   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1166    596   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1167    597   
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
 1168    598   
new file mode 100644
 1169    599   
index 0000000..8ef0494
 1170         -
-- /dev/null
         600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1171    601   
@@ -0,0 +1 @@
         602  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1172    603   
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
 1173    604   
new file mode 100644
 1174    605   
index 0000000..b786dc9
 1175         -
-- /dev/null
         606  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1176    607   
@@ -0,0 +1,9 @@
         608  +
GET / HTTP/1.1
         609  +
Host:example.amazonaws.com
         610  +
My-Header1:value4
         611  +
My-Header1:value1
         612  +
My-Header1:value3
         613  +
My-Header1:value2
         614  +
X-Amz-Date:20150830T123600Z
         615  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         616  +
 1177    617   
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
 1178    618   
similarity index 100%
 1179    619   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1180    620   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1181    621   
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
 1182    622   
new file mode 100644
 1183    623   
index 0000000..a211cc5
 1184         -
-- /dev/null
         624  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1185    625   
@@ -0,0 +1,8 @@
         626  +
GET
         627  +
/
         628  +
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
         629  +
host:example.amazonaws.com
         630  +
my-header1:value4,value1,value3,value2
         631  +
         632  +
host;my-header1
         633  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1186    634   
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
 1187    635   
new file mode 100644
 1188    636   
index 0000000..417b0fa
 1189         -
-- /dev/null
         637  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1190    638   
@@ -0,0 +1 @@
         639  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1191    640   
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
 1192    641   
new file mode 100644
 1193    642   
index 0000000..b615e5d
 1194         -
-- /dev/null
         643  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1195    644   
@@ -0,0 +1,7 @@
         645  +
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
         646  +
Host:example.amazonaws.com
         647  +
My-Header1:value4
         648  +
My-Header1:value1
         649  +
My-Header1:value3
         650  +
My-Header1:value2
         651  +
 1196    652   
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
 1197    653   
similarity index 53%
 1198    654   
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
 1199    655   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1200    656   
index f7e615e..dcaaa1b 100644
 1201         -
-- 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
         657  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1202    658   
@@ -1,4 +1,4 @@
 1203    659   
AWS4-HMAC-SHA256
 1204    660   
20150830T123600Z
 1205    661   
20150830/us-east-1/service/aws4_request
 1206         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         662  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1207    663   
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
 1208    664   
similarity index 100%
 1209    665   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1210    666   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1211    667   
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
 1212    668   
similarity index 99%
 1213    669   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1214    670   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1215    671   
index 45771c7..0468d80 100644
 1216         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
         672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1217    673   
@@ -1,12 +1,12 @@
 1218    674   
{
 1219    675   
    "credentials": {
 1220    676   
        "access_key_id": "AKIDEXAMPLE",
 1221    677   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1222    678   
    },
 1223    679   
    "expiration_in_seconds": 3600,
 1224    680   
    "normalize": true,
 1225    681   
    "region": "us-east-1",
 1226    682   
    "service": "service",
 1227    683   
    "sign_body": false,
 1228    684   
    "timestamp": "2015-08-30T12:36:00Z"
 1229         -
}
         685  +
}
              \
 No newline at end of file
 1230    686   
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
 1231    687   
similarity index 100%
 1232    688   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1233    689   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1234    690   
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
 1235    691   
new file mode 100644
 1236    692   
index 0000000..36081a9
 1237         -
-- /dev/null
         693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1238    694   
@@ -0,0 +1 @@
         695  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1239    696   
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
 1240    697   
new file mode 100644
 1241    698   
index 0000000..6331d16
 1242         -
-- /dev/null
         699  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1243    700   
@@ -0,0 +1,7 @@
         701  +
GET / HTTP/1.1
         702  +
Host:example.amazonaws.com
         703  +
My-Header1: value1
         704  +
My-Header2: "a   b   c"
         705  +
X-Amz-Date:20150830T123600Z
         706  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         707  +
 1244    708   
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
 1245    709   
similarity index 100%
 1246    710   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1247    711   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1248    712   
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
 1249    713   
new file mode 100644
 1250    714   
index 0000000..125c1f9
 1251         -
-- /dev/null
         715  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1252    716   
@@ -0,0 +1,9 @@
         717  +
GET
         718  +
/
         719  +
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
         720  +
host:example.amazonaws.com
         721  +
my-header1:value1
         722  +
my-header2:"a b c"
         723  +
         724  +
host;my-header1;my-header2
         725  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1253    726   
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
 1254    727   
new file mode 100644
 1255    728   
index 0000000..17007a8
 1256         -
-- /dev/null
         729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1257    730   
@@ -0,0 +1 @@
         731  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1258    732   
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
 1259    733   
new file mode 100644
 1260    734   
index 0000000..e519fd9
 1261         -
-- /dev/null
         735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1262    736   
@@ -0,0 +1,5 @@
         737  +
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
         738  +
Host:example.amazonaws.com
         739  +
My-Header1: value1
         740  +
My-Header2: "a   b   c"
         741  +
 1263    742   
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
 1264    743   
new file mode 100644
 1265    744   
index 0000000..6b4b781
 1266         -
-- /dev/null
         745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1267    746   
@@ -0,0 +1,4 @@
         747  +
AWS4-HMAC-SHA256
         748  +
20150830T123600Z
         749  +
20150830/us-east-1/service/aws4_request
         750  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1268    751   
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
 1269    752   
similarity index 100%
 1270    753   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1271    754   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1272    755   
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
 1273    756   
new file mode 100644
 1274    757   
index 0000000..0468d80
 1275         -
-- /dev/null
         758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1276    759   
@@ -0,0 +1,12 @@
         760  +
{
         761  +
    "credentials": {
         762  +
        "access_key_id": "AKIDEXAMPLE",
         763  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         764  +
    },
         765  +
    "expiration_in_seconds": 3600,
         766  +
    "normalize": true,
         767  +
    "region": "us-east-1",
         768  +
    "service": "service",
         769  +
    "sign_body": false,
         770  +
    "timestamp": "2015-08-30T12:36:00Z"
         771  +
}
              \
 No newline at end of file
 1277    772   
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
 1278    773   
similarity index 100%
 1279    774   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1280    775   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1281    776   
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
 1282    777   
new file mode 100644
 1283    778   
index 0000000..87f295f
 1284         -
-- /dev/null
         779  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1285    780   
@@ -0,0 +1 @@
         781  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1286    782   
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
 1287    783   
new file mode 100644
 1288    784   
index 0000000..0de8327
 1289         -
-- /dev/null
         785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1290    786   
@@ -0,0 +1,5 @@
         787  +
GET /example/.. HTTP/1.1
         788  +
Host:example.amazonaws.com
         789  +
X-Amz-Date:20150830T123600Z
         790  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         791  +
 1291    792   
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
 1292    793   
similarity index 100%
 1293    794   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1294    795   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1295    796   
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
 1296    797   
new file mode 100644
 1297    798   
index 0000000..fb2420d
 1298         -
-- /dev/null
         799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1299    800   
@@ -0,0 +1,7 @@
         801  +
GET
         802  +
/
         803  +
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
         804  +
host:example.amazonaws.com
         805  +
         806  +
host
         807  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1300    808   
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
 1301    809   
new file mode 100644
 1302    810   
index 0000000..da5c905
 1303         -
-- /dev/null
         811  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1304    812   
@@ -0,0 +1 @@
         813  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1305    814   
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
 1306    815   
new file mode 100644
 1307    816   
index 0000000..4329c98
 1308         -
-- /dev/null
         817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1309    818   
@@ -0,0 +1,3 @@
         819  +
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
         820  +
Host:example.amazonaws.com
         821  +
 1310    822   
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
 1311    823   
new file mode 100644
 1312    824   
index 0000000..d837e67
 1313         -
-- /dev/null
         825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1314    826   
@@ -0,0 +1,4 @@
         827  +
AWS4-HMAC-SHA256
         828  +
20150830T123600Z
         829  +
20150830/us-east-1/service/aws4_request
         830  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1315    831   
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
 1316    832   
similarity index 100%
 1317    833   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1318    834   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1319    835   
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
 1320    836   
new file mode 100644
 1321    837   
index 0000000..0468d80
 1322         -
-- /dev/null
         838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1323    839   
@@ -0,0 +1,12 @@
         840  +
{
         841  +
    "credentials": {
         842  +
        "access_key_id": "AKIDEXAMPLE",
         843  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         844  +
    },
         845  +
    "expiration_in_seconds": 3600,
         846  +
    "normalize": true,
         847  +
    "region": "us-east-1",
         848  +
    "service": "service",
         849  +
    "sign_body": false,
         850  +
    "timestamp": "2015-08-30T12:36:00Z"
         851  +
}
              \
 No newline at end of file
 1324    852   
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
 1325    853   
similarity index 100%
 1326    854   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1327    855   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1328    856   
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
 1329    857   
new file mode 100644
 1330    858   
index 0000000..87f295f
 1331         -
-- /dev/null
         859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1332    860   
@@ -0,0 +1 @@
         861  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1333    862   
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
 1334    863   
new file mode 100644
 1335    864   
index 0000000..f9b3815
 1336         -
-- /dev/null
         865  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1337    866   
@@ -0,0 +1,5 @@
         867  +
GET /example1/example2/../.. HTTP/1.1
         868  +
Host:example.amazonaws.com
         869  +
X-Amz-Date:20150830T123600Z
         870  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         871  +
 1338    872   
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
 1339    873   
similarity index 100%
 1340    874   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1341    875   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1342    876   
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
 1343    877   
new file mode 100644
 1344    878   
index 0000000..fb2420d
 1345         -
-- /dev/null
         879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1346    880   
@@ -0,0 +1,7 @@
         881  +
GET
         882  +
/
         883  +
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
         884  +
host:example.amazonaws.com
         885  +
         886  +
host
         887  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1347    888   
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
 1348    889   
new file mode 100644
 1349    890   
index 0000000..da5c905
 1350         -
-- /dev/null
         891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1351    892   
@@ -0,0 +1 @@
         893  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1352    894   
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
 1353    895   
new file mode 100644
 1354    896   
index 0000000..b2988b7
 1355         -
-- /dev/null
         897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1356    898   
@@ -0,0 +1,3 @@
         899  +
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
         900  +
Host:example.amazonaws.com
         901  +
 1357    902   
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
 1358    903   
new file mode 100644
 1359    904   
index 0000000..d837e67
 1360         -
-- /dev/null
         905  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1361    906   
@@ -0,0 +1,4 @@
         907  +
AWS4-HMAC-SHA256
         908  +
20150830T123600Z
         909  +
20150830/us-east-1/service/aws4_request
         910  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1362    911   
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
 1363    912   
similarity index 100%
 1364    913   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1365    914   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1366    915   
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
 1367    916   
similarity index 99%
 1368    917   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1369    918   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1370    919   
index afe367b..7bee5c7 100644
 1371         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
         920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1372    921   
@@ -1,12 +1,12 @@
 1373    922   
{
 1374    923   
    "credentials": {
 1375    924   
        "access_key_id": "AKIDEXAMPLE",
 1376    925   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1377    926   
    },
 1378    927   
    "expiration_in_seconds": 3600,
 1379    928   
    "normalize": false,
 1380    929   
    "region": "us-east-1",
 1381    930   
    "service": "service",
 1382    931   
    "sign_body": false,
 1383    932   
    "timestamp": "2015-08-30T12:36:00Z"
 1384         -
}
         933  +
}
              \
 No newline at end of file
 1385    934   
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
 1386    935   
similarity index 82%
 1387    936   
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
 1388    937   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1389    938   
index 36c3cdf..6919c44 100644
 1390         -
-- 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
         939  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1391    940   
@@ -1,8 +1,8 @@
 1392    941   
GET
 1393         -
/
 1394         -
Param1=Value1&Param1=value2
         942  +
/example1/example2/../..
         943  +
 1395    944   
host:example.amazonaws.com
 1396    945   
x-amz-date:20150830T123600Z
 1397    946   
 1398    947   
host;x-amz-date
 1399    948   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1400    949   
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
 1401    950   
new file mode 100644
 1402    951   
index 0000000..4092d83
 1403         -
-- /dev/null
         952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1404    953   
@@ -0,0 +1 @@
         954  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1405    955   
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
 1406    956   
new file mode 100644
 1407    957   
index 0000000..e731b35
 1408         -
-- /dev/null
         958  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1409    959   
@@ -0,0 +1,5 @@
         960  +
GET /example1/example2/../.. HTTP/1.1
         961  +
Host:example.amazonaws.com
         962  +
X-Amz-Date:20150830T123600Z
         963  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
         964  +
 1410    965   
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
 1411    966   
new file mode 100644
 1412    967   
index 0000000..4f45752
 1413         -
-- /dev/null
         968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1414    969   
@@ -0,0 +1,4 @@
         970  +
AWS4-HMAC-SHA256
         971  +
20150830T123600Z
         972  +
20150830/us-east-1/service/aws4_request
         973  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1415    974   
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
 1416    975   
new file mode 100644
 1417    976   
index 0000000..e1fb07d
 1418         -
-- /dev/null
         977  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1419    978   
@@ -0,0 +1,7 @@
         979  +
GET
         980  +
/example1/example2/../..
         981  +
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
         982  +
host:example.amazonaws.com
         983  +
         984  +
host
         985  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1420    986   
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
 1421    987   
new file mode 100644
 1422    988   
index 0000000..8ac31d7
 1423         -
-- /dev/null
         989  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1424    990   
@@ -0,0 +1 @@
         991  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1425    992   
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
 1426    993   
new file mode 100644
 1427    994   
index 0000000..ac074f9
 1428         -
-- /dev/null
         995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1429    996   
@@ -0,0 +1,3 @@
         997  +
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
         998  +
Host:example.amazonaws.com
         999  +
 1430   1000   
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
 1431   1001   
new file mode 100644
 1432   1002   
index 0000000..8dcb6ff
 1433         -
-- /dev/null
        1003  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1434   1004   
@@ -0,0 +1,4 @@
        1005  +
AWS4-HMAC-SHA256
        1006  +
20150830T123600Z
        1007  +
20150830/us-east-1/service/aws4_request
        1008  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1435   1009   
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
 1436   1010   
similarity index 100%
 1437   1011   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1438   1012   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1439   1013   
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
 1440   1014   
similarity index 99%
 1441   1015   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1442   1016   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1443   1017   
index afe367b..7bee5c7 100644
 1444         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
        1018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1445   1019   
@@ -1,12 +1,12 @@
 1446   1020   
{
 1447   1021   
    "credentials": {
 1448   1022   
        "access_key_id": "AKIDEXAMPLE",
 1449   1023   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1450   1024   
    },
 1451   1025   
    "expiration_in_seconds": 3600,
 1452   1026   
    "normalize": false,
 1453   1027   
    "region": "us-east-1",
 1454   1028   
    "service": "service",
 1455   1029   
    "sign_body": false,
 1456   1030   
    "timestamp": "2015-08-30T12:36:00Z"
 1457         -
}
        1031  +
}
              \
 No newline at end of file
 1458   1032   
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
 1459   1033   
similarity index 82%
 1460   1034   
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
 1461   1035   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1462   1036   
index 26898eb..f640bc2 100644
 1463         -
-- 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
        1037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1464   1038   
@@ -1,8 +1,8 @@
 1465   1039   
GET
 1466         -
/
 1467         -
Param1=value1&Param1=value2
        1040  +
/example/..
        1041  +
 1468   1042   
host:example.amazonaws.com
 1469   1043   
x-amz-date:20150830T123600Z
 1470   1044   
 1471   1045   
host;x-amz-date
 1472   1046   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1473   1047   
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
 1474   1048   
new file mode 100644
 1475   1049   
index 0000000..d957303
 1476         -
-- /dev/null
        1050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1477   1051   
@@ -0,0 +1 @@
        1052  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1478   1053   
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
 1479   1054   
new file mode 100644
 1480   1055   
index 0000000..4f42ffc
 1481         -
-- /dev/null
        1056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1482   1057   
@@ -0,0 +1,5 @@
        1058  +
GET /example/.. HTTP/1.1
        1059  +
Host:example.amazonaws.com
        1060  +
X-Amz-Date:20150830T123600Z
        1061  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
        1062  +
 1483   1063   
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
 1484   1064   
new file mode 100644
 1485   1065   
index 0000000..ca54bda
 1486         -
-- /dev/null
        1066  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1487   1067   
@@ -0,0 +1,4 @@
        1068  +
AWS4-HMAC-SHA256
        1069  +
20150830T123600Z
        1070  +
20150830/us-east-1/service/aws4_request
        1071  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1488   1072   
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
 1489   1073   
new file mode 100644
 1490   1074   
index 0000000..dc80036
 1491         -
-- /dev/null
        1075  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1492   1076   
@@ -0,0 +1,7 @@
        1077  +
GET
        1078  +
/example/..
        1079  +
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
        1080  +
host:example.amazonaws.com
        1081  +
        1082  +
host
        1083  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1493   1084   
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
 1494   1085   
new file mode 100644
 1495   1086   
index 0000000..dfa0437
 1496         -
-- /dev/null
        1087  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1497   1088   
@@ -0,0 +1 @@
        1089  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1498   1090   
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
 1499   1091   
new file mode 100644
 1500   1092   
index 0000000..98367b1
 1501         -
-- /dev/null
        1093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1502   1094   
@@ -0,0 +1,3 @@
        1095  +
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
        1096  +
Host:example.amazonaws.com
        1097  +
 1503   1098   
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
 1504   1099   
new file mode 100644
 1505   1100   
index 0000000..f65dd66
 1506         -
-- /dev/null
        1101  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1507   1102   
@@ -0,0 +1,4 @@
        1103  +
AWS4-HMAC-SHA256
        1104  +
20150830T123600Z
        1105  +
20150830/us-east-1/service/aws4_request
        1106  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1508   1107   
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
 1509   1108   
similarity index 100%
 1510   1109   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1511   1110   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1512   1111   
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
 1513   1112   
new file mode 100644
 1514   1113   
index 0000000..0468d80
 1515         -
-- /dev/null
        1114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1516   1115   
@@ -0,0 +1,12 @@
        1116  +
{
        1117  +
    "credentials": {
        1118  +
        "access_key_id": "AKIDEXAMPLE",
        1119  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1120  +
    },
        1121  +
    "expiration_in_seconds": 3600,
        1122  +
    "normalize": true,
        1123  +
    "region": "us-east-1",
        1124  +
    "service": "service",
        1125  +
    "sign_body": false,
        1126  +
    "timestamp": "2015-08-30T12:36:00Z"
        1127  +
}
              \
 No newline at end of file
 1517   1128   
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
 1518   1129   
similarity index 100%
 1519   1130   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1520   1131   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1521   1132   
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
 1522   1133   
new file mode 100644
 1523   1134   
index 0000000..87f295f
 1524         -
-- /dev/null
        1135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1525   1136   
@@ -0,0 +1 @@
        1137  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1526   1138   
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
 1527   1139   
new file mode 100644
 1528   1140   
index 0000000..99c8eeb
 1529         -
-- /dev/null
        1141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1530   1142   
@@ -0,0 +1,5 @@
        1143  +
GET /./ HTTP/1.1
        1144  +
Host:example.amazonaws.com
        1145  +
X-Amz-Date:20150830T123600Z
        1146  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1147  +
 1531   1148   
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
 1532   1149   
similarity index 100%
 1533   1150   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1534   1151   
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
 1535   1152   
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
 1536   1153   
new file mode 100644
 1537   1154   
index 0000000..fb2420d
 1538         -
-- /dev/null
        1155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1539   1156   
@@ -0,0 +1,7 @@
        1157  +
GET
        1158  +
/
        1159  +
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
        1160  +
host:example.amazonaws.com
        1161  +
        1162  +
host
        1163  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1540   1164   
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
 1541   1165   
new file mode 100644
 1542   1166   
index 0000000..da5c905
 1543         -
-- /dev/null
        1167  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1544   1168   
@@ -0,0 +1 @@
        1169  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1545   1170   
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
 1546   1171   
new file mode 100644
 1547   1172   
index 0000000..2e47f69
 1548         -
-- /dev/null
        1173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1549   1174   
@@ -0,0 +1,3 @@
        1175  +
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
        1176  +
Host:example.amazonaws.com
        1177  +
 1550   1178   
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
 1551   1179   
new file mode 100644
 1552   1180   
index 0000000..d837e67
 1553         -
-- /dev/null
        1181  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1554   1182   
@@ -0,0 +1,4 @@
        1183  +
AWS4-HMAC-SHA256
        1184  +
20150830T123600Z
        1185  +
20150830/us-east-1/service/aws4_request
        1186  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1555   1187   
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
 1556   1188   
similarity index 100%
 1557   1189   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1558   1190   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1559   1191   
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
 1560   1192   
similarity index 99%
 1561   1193   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1562   1194   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1563   1195   
index afe367b..7bee5c7 100644
 1564         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
        1196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1565   1197   
@@ -1,12 +1,12 @@
 1566   1198   
{
 1567   1199   
    "credentials": {
 1568   1200   
        "access_key_id": "AKIDEXAMPLE",
 1569   1201   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1570   1202   
    },
 1571   1203   
    "expiration_in_seconds": 3600,
 1572   1204   
    "normalize": false,
 1573   1205   
    "region": "us-east-1",
 1574   1206   
    "service": "service",
 1575   1207   
    "sign_body": false,
 1576   1208   
    "timestamp": "2015-08-30T12:36:00Z"
 1577         -
}
        1209  +
}
              \
 No newline at end of file
 1578   1210   
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
 1579   1211   
new file mode 100644
 1580   1212   
index 0000000..5159048
 1581         -
-- /dev/null
        1213  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1582   1214   
@@ -0,0 +1,8 @@
        1215  +
GET
        1216  +
/./
        1217  +
        1218  +
host:example.amazonaws.com
        1219  +
x-amz-date:20150830T123600Z
        1220  +
        1221  +
host;x-amz-date
        1222  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1583   1223   
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
 1584   1224   
new file mode 100644
 1585   1225   
index 0000000..b49ff0e
 1586         -
-- /dev/null
        1226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1587   1227   
@@ -0,0 +1 @@
        1228  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1588   1229   
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
 1589   1230   
new file mode 100644
 1590   1231   
index 0000000..aeb1ffa
 1591         -
-- /dev/null
        1232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1592   1233   
@@ -0,0 +1,5 @@
        1234  +
GET /./ HTTP/1.1
        1235  +
Host:example.amazonaws.com
        1236  +
X-Amz-Date:20150830T123600Z
        1237  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1238  +
 1593   1239   
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
 1594   1240   
new file mode 100644
 1595   1241   
index 0000000..b7d8caf
 1596         -
-- /dev/null
        1242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1597   1243   
@@ -0,0 +1,4 @@
        1244  +
AWS4-HMAC-SHA256
        1245  +
20150830T123600Z
        1246  +
20150830/us-east-1/service/aws4_request
        1247  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1598   1248   
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
 1599   1249   
new file mode 100644
 1600   1250   
index 0000000..d4e029e
 1601         -
-- /dev/null
        1251  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1602   1252   
@@ -0,0 +1,7 @@
        1253  +
GET
        1254  +
/./
        1255  +
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
        1256  +
host:example.amazonaws.com
        1257  +
        1258  +
host
        1259  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1603   1260   
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
 1604   1261   
new file mode 100644
 1605   1262   
index 0000000..fe8f4cc
 1606         -
-- /dev/null
        1263  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1607   1264   
@@ -0,0 +1 @@
        1265  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1608   1266   
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
 1609   1267   
new file mode 100644
 1610   1268   
index 0000000..dcc4fc4
 1611         -
-- /dev/null
        1269  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1612   1270   
@@ -0,0 +1,3 @@
        1271  +
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
        1272  +
Host:example.amazonaws.com
        1273  +
 1613   1274   
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
 1614   1275   
new file mode 100644
 1615   1276   
index 0000000..5fb3ada
 1616         -
-- /dev/null
        1277  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1617   1278   
@@ -0,0 +1,4 @@
        1279  +
AWS4-HMAC-SHA256
        1280  +
20150830T123600Z
        1281  +
20150830/us-east-1/service/aws4_request
        1282  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1618   1283   
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
 1619   1284   
similarity index 100%
 1620   1285   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1621   1286   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1622   1287   
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
 1623   1288   
new file mode 100644
 1624   1289   
index 0000000..0468d80
 1625         -
-- /dev/null
        1290  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1626   1291   
@@ -0,0 +1,12 @@
        1292  +
{
        1293  +
    "credentials": {
        1294  +
        "access_key_id": "AKIDEXAMPLE",
        1295  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1296  +
    },
        1297  +
    "expiration_in_seconds": 3600,
        1298  +
    "normalize": true,
        1299  +
    "region": "us-east-1",
        1300  +
    "service": "service",
        1301  +
    "sign_body": false,
        1302  +
    "timestamp": "2015-08-30T12:36:00Z"
        1303  +
}
              \
 No newline at end of file
 1627   1304   
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
 1628   1305   
similarity index 100%
 1629   1306   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1630   1307   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1631   1308   
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
 1632   1309   
new file mode 100644
 1633   1310   
index 0000000..87f295f
 1634         -
-- /dev/null
        1311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1635   1312   
@@ -0,0 +1 @@
        1313  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1636   1314   
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
 1637   1315   
new file mode 100644
 1638   1316   
index 0000000..b91087b
 1639         -
-- /dev/null
        1317  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1640   1318   
@@ -0,0 +1,5 @@
        1319  +
GET // HTTP/1.1
        1320  +
Host:example.amazonaws.com
        1321  +
X-Amz-Date:20150830T123600Z
        1322  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1323  +
 1641   1324   
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
 1642   1325   
similarity index 100%
 1643   1326   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1644   1327   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1645   1328   
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
 1646   1329   
new file mode 100644
 1647   1330   
index 0000000..fb2420d
 1648         -
-- /dev/null
        1331  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1649   1332   
@@ -0,0 +1,7 @@
        1333  +
GET
        1334  +
/
        1335  +
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
        1336  +
host:example.amazonaws.com
        1337  +
        1338  +
host
        1339  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1650   1340   
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
 1651   1341   
new file mode 100644
 1652   1342   
index 0000000..da5c905
 1653         -
-- /dev/null
        1343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1654   1344   
@@ -0,0 +1 @@
        1345  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1655   1346   
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
 1656   1347   
new file mode 100644
 1657   1348   
index 0000000..0290ba4
 1658         -
-- /dev/null
        1349  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1659   1350   
@@ -0,0 +1,3 @@
        1351  +
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
        1352  +
Host:example.amazonaws.com
        1353  +
 1660   1354   
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
 1661   1355   
new file mode 100644
 1662   1356   
index 0000000..d837e67
 1663         -
-- /dev/null
        1357  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1664   1358   
@@ -0,0 +1,4 @@
        1359  +
AWS4-HMAC-SHA256
        1360  +
20150830T123600Z
        1361  +
20150830/us-east-1/service/aws4_request
        1362  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1665   1363   
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
 1666   1364   
similarity index 100%
 1667   1365   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1668   1366   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1669   1367   
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
 1670   1368   
new file mode 100644
 1671   1369   
index 0000000..0468d80
 1672         -
-- /dev/null
        1370  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1673   1371   
@@ -0,0 +1,12 @@
        1372  +
{
        1373  +
    "credentials": {
        1374  +
        "access_key_id": "AKIDEXAMPLE",
        1375  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1376  +
    },
        1377  +
    "expiration_in_seconds": 3600,
        1378  +
    "normalize": true,
        1379  +
    "region": "us-east-1",
        1380  +
    "service": "service",
        1381  +
    "sign_body": false,
        1382  +
    "timestamp": "2015-08-30T12:36:00Z"
        1383  +
}
              \
 No newline at end of file
 1674   1384   
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
 1675   1385   
similarity index 100%
 1676   1386   
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
 1677   1387   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1678   1388   
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
 1679   1389   
new file mode 100644
 1680   1390   
index 0000000..8f892bf
 1681         -
-- /dev/null
        1391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1682   1392   
@@ -0,0 +1 @@
        1393  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1683   1394   
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
 1684   1395   
new file mode 100644
 1685   1396   
index 0000000..2a1895c
 1686         -
-- /dev/null
        1397  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1687   1398   
@@ -0,0 +1,5 @@
        1399  +
GET /./example HTTP/1.1
        1400  +
Host:example.amazonaws.com
        1401  +
X-Amz-Date:20150830T123600Z
        1402  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1403  +
 1688   1404   
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
 1689   1405   
similarity index 100%
 1690   1406   
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
 1691   1407   
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
 1692   1408   
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
 1693   1409   
new file mode 100644
 1694   1410   
index 0000000..99dfc2a
 1695         -
-- /dev/null
        1411  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1696   1412   
@@ -0,0 +1,7 @@
        1413  +
GET
        1414  +
/example
        1415  +
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
        1416  +
host:example.amazonaws.com
        1417  +
        1418  +
host
        1419  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1697   1420   
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
 1698   1421   
new file mode 100644
 1699   1422   
index 0000000..fcd7a17
 1700         -
-- /dev/null
        1423  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1701   1424   
@@ -0,0 +1 @@
        1425  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1702   1426   
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
 1703   1427   
new file mode 100644
 1704   1428   
index 0000000..f671de2
 1705         -
-- /dev/null
        1429  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1706   1430   
@@ -0,0 +1,3 @@
        1431  +
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
        1432  +
Host:example.amazonaws.com
        1433  +
 1707   1434   
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
 1708   1435   
new file mode 100644
 1709   1436   
index 0000000..f8456dc
 1710         -
-- /dev/null
        1437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1711   1438   
@@ -0,0 +1,4 @@
        1439  +
AWS4-HMAC-SHA256
        1440  +
20150830T123600Z
        1441  +
20150830/us-east-1/service/aws4_request
        1442  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1712   1443   
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
 1713   1444   
similarity index 100%
 1714   1445   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1715   1446   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1716   1447   
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
 1717   1448   
similarity index 99%
 1718   1449   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1719   1450   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1720   1451   
index afe367b..7bee5c7 100644
 1721         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
        1452  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1722   1453   
@@ -1,12 +1,12 @@
 1723   1454   
{
 1724   1455   
    "credentials": {
 1725   1456   
        "access_key_id": "AKIDEXAMPLE",
 1726   1457   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1727   1458   
    },
 1728   1459   
    "expiration_in_seconds": 3600,
 1729   1460   
    "normalize": false,
 1730   1461   
    "region": "us-east-1",
 1731   1462   
    "service": "service",
 1732   1463   
    "sign_body": false,
 1733   1464   
    "timestamp": "2015-08-30T12:36:00Z"
 1734         -
}
        1465  +
}
              \
 No newline at end of file
 1735   1466   
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
 1736   1467   
new file mode 100644
 1737   1468   
index 0000000..36698c7
 1738         -
-- /dev/null
        1469  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1739   1470   
@@ -0,0 +1,8 @@
        1471  +
GET
        1472  +
/./example
        1473  +
        1474  +
host:example.amazonaws.com
        1475  +
x-amz-date:20150830T123600Z
        1476  +
        1477  +
host;x-amz-date
        1478  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1740   1479   
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
 1741   1480   
new file mode 100644
 1742   1481   
index 0000000..4a4b8f2
 1743         -
-- /dev/null
        1482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1744   1483   
@@ -0,0 +1 @@
        1484  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1745   1485   
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
 1746   1486   
new file mode 100644
 1747   1487   
index 0000000..d462bcd
 1748         -
-- /dev/null
        1488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1749   1489   
@@ -0,0 +1,5 @@
        1490  +
GET /./example HTTP/1.1
        1491  +
Host:example.amazonaws.com
        1492  +
X-Amz-Date:20150830T123600Z
        1493  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1494  +
 1750   1495   
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
 1751   1496   
new file mode 100644
 1752   1497   
index 0000000..8be78c9
 1753         -
-- /dev/null
        1498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1754   1499   
@@ -0,0 +1,4 @@
        1500  +
AWS4-HMAC-SHA256
        1501  +
20150830T123600Z
        1502  +
20150830/us-east-1/service/aws4_request
        1503  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1755   1504   
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
 1756   1505   
new file mode 100644
 1757   1506   
index 0000000..fe1103c
 1758         -
-- /dev/null
        1507  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1759   1508   
@@ -0,0 +1,7 @@
        1509  +
GET
        1510  +
/./example
        1511  +
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
        1512  +
host:example.amazonaws.com
        1513  +
        1514  +
host
        1515  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1760   1516   
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
 1761   1517   
new file mode 100644
 1762   1518   
index 0000000..ce80762
 1763         -
-- /dev/null
        1519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1764   1520   
@@ -0,0 +1 @@
        1521  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1765   1522   
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
 1766   1523   
new file mode 100644
 1767   1524   
index 0000000..30841a6
 1768         -
-- /dev/null
        1525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1769   1526   
@@ -0,0 +1,3 @@
        1527  +
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
        1528  +
Host:example.amazonaws.com
        1529  +
 1770   1530   
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
 1771   1531   
new file mode 100644
 1772   1532   
index 0000000..5c66509
 1773         -
-- /dev/null
        1533  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1774   1534   
@@ -0,0 +1,4 @@
        1535  +
AWS4-HMAC-SHA256
        1536  +
20150830T123600Z
        1537  +
20150830/us-east-1/service/aws4_request
        1538  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1775   1539   
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
 1776   1540   
similarity index 100%
 1777   1541   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1778   1542   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1779   1543   
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
 1780   1544   
new file mode 100644
 1781   1545   
index 0000000..7bee5c7
 1782         -
-- /dev/null
        1546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1783   1547   
@@ -0,0 +1,12 @@
        1548  +
{
        1549  +
    "credentials": {
        1550  +
        "access_key_id": "AKIDEXAMPLE",
        1551  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1552  +
    },
        1553  +
    "expiration_in_seconds": 3600,
        1554  +
    "normalize": false,
        1555  +
    "region": "us-east-1",
        1556  +
    "service": "service",
        1557  +
    "sign_body": false,
        1558  +
    "timestamp": "2015-08-30T12:36:00Z"
        1559  +
}
              \
 No newline at end of file
 1784   1560   
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
 1785   1561   
new file mode 100644
 1786   1562   
index 0000000..5860c8a
 1787         -
-- /dev/null
        1563  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1788   1564   
@@ -0,0 +1,8 @@
        1565  +
GET
        1566  +
//
        1567  +
        1568  +
host:example.amazonaws.com
        1569  +
x-amz-date:20150830T123600Z
        1570  +
        1571  +
host;x-amz-date
        1572  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1789   1573   
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
 1790   1574   
new file mode 100644
 1791   1575   
index 0000000..8310471
 1792         -
-- /dev/null
        1576  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1793   1577   
@@ -0,0 +1 @@
        1578  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1794   1579   
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
 1795   1580   
new file mode 100644
 1796   1581   
index 0000000..2a7afef
 1797         -
-- /dev/null
        1582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1798   1583   
@@ -0,0 +1,5 @@
        1584  +
GET // HTTP/1.1
        1585  +
Host:example.amazonaws.com
        1586  +
X-Amz-Date:20150830T123600Z
        1587  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1588  +
 1799   1589   
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
 1800   1590   
new file mode 100644
 1801   1591   
index 0000000..06059dd
 1802         -
-- /dev/null
        1592  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1803   1593   
@@ -0,0 +1,4 @@
        1594  +
AWS4-HMAC-SHA256
        1595  +
20150830T123600Z
        1596  +
20150830/us-east-1/service/aws4_request
        1597  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1804   1598   
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
 1805   1599   
new file mode 100644
 1806   1600   
index 0000000..6d63aef
 1807         -
-- /dev/null
        1601  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1808   1602   
@@ -0,0 +1,7 @@
        1603  +
GET
        1604  +
//
        1605  +
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
        1606  +
host:example.amazonaws.com
        1607  +
        1608  +
host
        1609  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1809   1610   
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
 1810   1611   
new file mode 100644
 1811   1612   
index 0000000..e5b7b6c
 1812         -
-- /dev/null
        1613  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1813   1614   
@@ -0,0 +1 @@
        1615  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1814   1616   
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
 1815   1617   
new file mode 100644
 1816   1618   
index 0000000..46fe3fd
 1817         -
-- /dev/null
        1619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1818   1620   
@@ -0,0 +1,3 @@
        1621  +
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
        1622  +
Host:example.amazonaws.com
        1623  +
 1819   1624   
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
 1820   1625   
new file mode 100644
 1821   1626   
index 0000000..ea79940
 1822         -
-- /dev/null
        1627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1823   1628   
@@ -0,0 +1,4 @@
        1629  +
AWS4-HMAC-SHA256
        1630  +
20150830T123600Z
        1631  +
20150830/us-east-1/service/aws4_request
        1632  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1824   1633   
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
 1825   1634   
similarity index 100%
 1826   1635   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1827   1636   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1828   1637   
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
 1829   1638   
new file mode 100644
 1830   1639   
index 0000000..0468d80
 1831         -
-- /dev/null
        1640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1832   1641   
@@ -0,0 +1,12 @@
        1642  +
{
        1643  +
    "credentials": {
        1644  +
        "access_key_id": "AKIDEXAMPLE",
        1645  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1646  +
    },
        1647  +
    "expiration_in_seconds": 3600,
        1648  +
    "normalize": true,
        1649  +
    "region": "us-east-1",
        1650  +
    "service": "service",
        1651  +
    "sign_body": false,
        1652  +
    "timestamp": "2015-08-30T12:36:00Z"
        1653  +
}
              \
 No newline at end of file
 1833   1654   
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
 1834   1655   
similarity index 100%
 1835   1656   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1836   1657   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1837   1658   
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
 1838   1659   
new file mode 100644
 1839   1660   
index 0000000..71c7bac
 1840         -
-- /dev/null
        1661  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1841   1662   
@@ -0,0 +1 @@
        1663  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1842   1664   
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
 1843   1665   
new file mode 100644
 1844   1666   
index 0000000..0add1f1
 1845         -
-- /dev/null
        1667  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1846   1668   
@@ -0,0 +1,5 @@
        1669  +
GET //example// HTTP/1.1
        1670  +
Host:example.amazonaws.com
        1671  +
X-Amz-Date:20150830T123600Z
        1672  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1673  +
 1847   1674   
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
 1848   1675   
similarity index 100%
 1849   1676   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1850   1677   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1851   1678   
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
 1852   1679   
new file mode 100644
 1853   1680   
index 0000000..ce72510
 1854         -
-- /dev/null
        1681  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1855   1682   
@@ -0,0 +1,7 @@
        1683  +
GET
        1684  +
/example/
        1685  +
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
        1686  +
host:example.amazonaws.com
        1687  +
        1688  +
host
        1689  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1856   1690   
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
 1857   1691   
new file mode 100644
 1858   1692   
index 0000000..265f387
 1859         -
-- /dev/null
        1693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1860   1694   
@@ -0,0 +1 @@
        1695  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1861   1696   
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
 1862   1697   
new file mode 100644
 1863   1698   
index 0000000..e1fcb2e
 1864         -
-- /dev/null
        1699  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1865   1700   
@@ -0,0 +1,3 @@
        1701  +
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
        1702  +
Host:example.amazonaws.com
        1703  +
 1866   1704   
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
 1867   1705   
new file mode 100644
 1868   1706   
index 0000000..a14de61
 1869         -
-- /dev/null
        1707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1870   1708   
@@ -0,0 +1,4 @@
        1709  +
AWS4-HMAC-SHA256
        1710  +
20150830T123600Z
        1711  +
20150830/us-east-1/service/aws4_request
        1712  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1871   1713   
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
 1872   1714   
similarity index 100%
 1873   1715   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1874   1716   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1875   1717   
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
 1876   1718   
new file mode 100644
 1877   1719   
index 0000000..7bee5c7
 1878         -
-- /dev/null
        1720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1879   1721   
@@ -0,0 +1,12 @@
        1722  +
{
        1723  +
    "credentials": {
        1724  +
        "access_key_id": "AKIDEXAMPLE",
        1725  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1726  +
    },
        1727  +
    "expiration_in_seconds": 3600,
        1728  +
    "normalize": false,
        1729  +
    "region": "us-east-1",
        1730  +
    "service": "service",
        1731  +
    "sign_body": false,
        1732  +
    "timestamp": "2015-08-30T12:36:00Z"
        1733  +
}
              \
 No newline at end of file
 1880   1734   
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
 1881   1735   
new file mode 100644
 1882   1736   
index 0000000..dfffaaf
 1883         -
-- /dev/null
        1737  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1884   1738   
@@ -0,0 +1,8 @@
        1739  +
GET
        1740  +
//example//
        1741  +
        1742  +
host:example.amazonaws.com
        1743  +
x-amz-date:20150830T123600Z
        1744  +
        1745  +
host;x-amz-date
        1746  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1885   1747   
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
 1886   1748   
new file mode 100644
 1887   1749   
index 0000000..edbcc0d
 1888         -
-- /dev/null
        1750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1889   1751   
@@ -0,0 +1 @@
        1752  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1890   1753   
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
 1891   1754   
new file mode 100644
 1892   1755   
index 0000000..4cc12dd
 1893         -
-- /dev/null
        1756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 1894   1757   
@@ -0,0 +1,5 @@
        1758  +
GET //example// HTTP/1.1
        1759  +
Host:example.amazonaws.com
        1760  +
X-Amz-Date:20150830T123600Z
        1761  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1762  +
 1895   1763   
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
 1896   1764   
new file mode 100644
 1897   1765   
index 0000000..3eba390
 1898         -
-- /dev/null
        1766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 1899   1767   
@@ -0,0 +1,4 @@
        1768  +
AWS4-HMAC-SHA256
        1769  +
20150830T123600Z
        1770  +
20150830/us-east-1/service/aws4_request
        1771  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 1900   1772   
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
 1901   1773   
new file mode 100644
 1902   1774   
index 0000000..f7844e3
 1903         -
-- /dev/null
        1775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 1904   1776   
@@ -0,0 +1,7 @@
        1777  +
GET
        1778  +
//example//
        1779  +
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
        1780  +
host:example.amazonaws.com
        1781  +
        1782  +
host
        1783  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1905   1784   
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
 1906   1785   
new file mode 100644
 1907   1786   
index 0000000..a8d6b96
 1908         -
-- /dev/null
        1787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 1909   1788   
@@ -0,0 +1 @@
        1789  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 1910   1790   
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
 1911   1791   
new file mode 100644
 1912   1792   
index 0000000..a8322c6
 1913         -
-- /dev/null
        1793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 1914   1794   
@@ -0,0 +1,3 @@
        1795  +
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
        1796  +
Host:example.amazonaws.com
        1797  +
 1915   1798   
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
 1916   1799   
new file mode 100644
 1917   1800   
index 0000000..068724d
 1918         -
-- /dev/null
        1801  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 1919   1802   
@@ -0,0 +1,4 @@
        1803  +
AWS4-HMAC-SHA256
        1804  +
20150830T123600Z
        1805  +
20150830/us-east-1/service/aws4_request
        1806  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 1920   1807   
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
 1921   1808   
similarity index 100%
 1922   1809   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 1923   1810   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 1924   1811   
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
 1925   1812   
new file mode 100644
 1926   1813   
index 0000000..0468d80
 1927         -
-- /dev/null
        1814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 1928   1815   
@@ -0,0 +1,12 @@
        1816  +
{
        1817  +
    "credentials": {
        1818  +
        "access_key_id": "AKIDEXAMPLE",
        1819  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1820  +
    },
        1821  +
    "expiration_in_seconds": 3600,
        1822  +
    "normalize": true,
        1823  +
    "region": "us-east-1",
        1824  +
    "service": "service",
        1825  +
    "sign_body": false,
        1826  +
    "timestamp": "2015-08-30T12:36:00Z"
        1827  +
}
              \
 No newline at end of file
 1929   1828   
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
 1930   1829   
similarity index 100%
 1931   1830   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 1932   1831   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 1933   1832   
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
 1934   1833   
new file mode 100644
 1935   1834   
index 0000000..f63892b
 1936         -
-- /dev/null
        1835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 1937   1836   
@@ -0,0 +1 @@
        1837  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1938   1838   
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
 1939   1839   
new file mode 100644
 1940   1840   
index 0000000..19cd5cb
 1941         -
-- /dev/null
        1841  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 1942   1842   
@@ -0,0 +1,5 @@
        1843  +
GET /example space/ HTTP/1.1
        1844  +
Host:example.amazonaws.com
        1845  +
X-Amz-Date:20150830T123600Z
        1846  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1847  +
 1943   1848   
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
 1944   1849   
similarity index 100%
 1945   1850   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 1946   1851   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 1947   1852   
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
 1948   1853   
new file mode 100644
 1949   1854   
index 0000000..fa3d3e2
 1950         -
-- /dev/null
        1855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 1951   1856   
@@ -0,0 +1,7 @@
        1857  +
GET
        1858  +
/example%20space/
        1859  +
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
        1860  +
host:example.amazonaws.com
        1861  +
        1862  +
host
        1863  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1952   1864   
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
 1953   1865   
new file mode 100644
 1954   1866   
index 0000000..5b2e204
 1955         -
-- /dev/null
        1867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 1956   1868   
@@ -0,0 +1 @@
        1869  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1957   1870   
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
 1958   1871   
new file mode 100644
 1959   1872   
index 0000000..93ca1d0
 1960         -
-- /dev/null
        1873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 1961   1874   
@@ -0,0 +1,3 @@
        1875  +
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
        1876  +
Host:example.amazonaws.com
        1877  +
 1962   1878   
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
 1963   1879   
new file mode 100644
 1964   1880   
index 0000000..b4cb789
 1965         -
-- /dev/null
        1881  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 1966   1882   
@@ -0,0 +1,4 @@
        1883  +
AWS4-HMAC-SHA256
        1884  +
20150830T123600Z
        1885  +
20150830/us-east-1/service/aws4_request
        1886  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1967   1887   
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
 1968   1888   
new file mode 100644
 1969   1889   
index 0000000..860a277
 1970         -
-- /dev/null
        1890  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 1971   1891   
@@ -0,0 +1,2 @@
        1892  +
GET /example%20space/ HTTP/1.1
        1893  +
Host:example.amazonaws.com
 1972   1894   
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
 1973   1895   
new file mode 100644
 1974   1896   
index 0000000..7bee5c7
 1975         -
-- /dev/null
        1897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 1976   1898   
@@ -0,0 +1,12 @@
        1899  +
{
        1900  +
    "credentials": {
        1901  +
        "access_key_id": "AKIDEXAMPLE",
        1902  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1903  +
    },
        1904  +
    "expiration_in_seconds": 3600,
        1905  +
    "normalize": false,
        1906  +
    "region": "us-east-1",
        1907  +
    "service": "service",
        1908  +
    "sign_body": false,
        1909  +
    "timestamp": "2015-08-30T12:36:00Z"
        1910  +
}
              \
 No newline at end of file
 1977   1911   
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
 1978   1912   
similarity index 66%
 1979   1913   
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
 1980   1914   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1981   1915   
index 71dc981..124a709 100644
 1982         -
-- 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
        1916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1983   1917   
@@ -1,9 +1,8 @@
 1984         -
POST
 1985         -
/
        1918  +
GET
        1919  +
/example%20space/
 1986   1920   
 1987         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 1988   1921   
host:example.amazonaws.com
 1989   1922   
x-amz-date:20150830T123600Z
 1990   1923   
 1991   1924   
host;x-amz-date
 1992   1925   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1993   1926   
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
 1994   1927   
new file mode 100644
 1995   1928   
index 0000000..f63892b
 1996         -
-- /dev/null
        1929  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 1997   1930   
@@ -0,0 +1 @@
        1931  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1998   1932   
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
 1999   1933   
new file mode 100644
 2000   1934   
index 0000000..19cd5cb
 2001         -
-- /dev/null
        1935  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 2002   1936   
@@ -0,0 +1,5 @@
        1937  +
GET /example space/ HTTP/1.1
        1938  +
Host:example.amazonaws.com
        1939  +
X-Amz-Date:20150830T123600Z
        1940  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1941  +
 2003   1942   
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
 2004   1943   
new file mode 100644
 2005   1944   
index 0000000..a633f0c
 2006         -
-- /dev/null
        1945  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 2007   1946   
@@ -0,0 +1,4 @@
        1947  +
AWS4-HMAC-SHA256
        1948  +
20150830T123600Z
        1949  +
20150830/us-east-1/service/aws4_request
        1950  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 2008   1951   
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
 2009   1952   
new file mode 100644
 2010   1953   
index 0000000..fa3d3e2
 2011         -
-- /dev/null
        1954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 2012   1955   
@@ -0,0 +1,7 @@
        1956  +
GET
        1957  +
/example%20space/
        1958  +
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
        1959  +
host:example.amazonaws.com
        1960  +
        1961  +
host
        1962  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2013   1963   
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
 2014   1964   
new file mode 100644
 2015   1965   
index 0000000..5b2e204
 2016         -
-- /dev/null
        1966  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 2017   1967   
@@ -0,0 +1 @@
        1968  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2018   1969   
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
 2019   1970   
new file mode 100644
 2020   1971   
index 0000000..93ca1d0
 2021         -
-- /dev/null
        1972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 2022   1973   
@@ -0,0 +1,3 @@
        1974  +
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
        1975  +
Host:example.amazonaws.com
        1976  +
 2023   1977   
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
 2024   1978   
new file mode 100644
 2025   1979   
index 0000000..b4cb789
 2026         -
-- /dev/null
        1980  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 2027   1981   
@@ -0,0 +1,4 @@
        1982  +
AWS4-HMAC-SHA256
        1983  +
20150830T123600Z
        1984  +
20150830/us-east-1/service/aws4_request
        1985  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2028   1986   
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
 2029   1987   
similarity index 67%
 2030   1988   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 2031   1989   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2032   1990   
index b7d5e8b..ab509ab 100644
 2033         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        1991  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2034   1992   
@@ -1,3 +1,2 @@
 2035   1993   
GET /example space/ HTTP/1.1
 2036   1994   
Host:example.amazonaws.com
 2037         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2038   1995   
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
 2039   1996   
new file mode 100644
 2040   1997   
index 0000000..0468d80
 2041         -
-- /dev/null
        1998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 2042   1999   
@@ -0,0 +1,12 @@
        2000  +
{
        2001  +
    "credentials": {
        2002  +
        "access_key_id": "AKIDEXAMPLE",
        2003  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2004  +
    },
        2005  +
    "expiration_in_seconds": 3600,
        2006  +
    "normalize": true,
        2007  +
    "region": "us-east-1",
        2008  +
    "service": "service",
        2009  +
    "sign_body": false,
        2010  +
    "timestamp": "2015-08-30T12:36:00Z"
        2011  +
}
              \
 No newline at end of file
 2043   2012   
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
 2044   2013   
similarity index 100%
 2045   2014   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 2046   2015   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2047   2016   
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
 2048   2017   
new file mode 100644
 2049   2018   
index 0000000..e503354
 2050         -
-- /dev/null
        2019  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2051   2020   
@@ -0,0 +1 @@
        2021  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 2052   2022   
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
 2053   2023   
new file mode 100644
 2054   2024   
index 0000000..4367892
 2055         -
-- /dev/null
        2025  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2056   2026   
@@ -0,0 +1,5 @@
        2027  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        2028  +
Host:example.amazonaws.com
        2029  +
X-Amz-Date:20150830T123600Z
        2030  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        2031  +
 2057   2032   
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
 2058   2033   
similarity index 100%
 2059   2034   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 2060   2035   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2061   2036   
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
 2062   2037   
new file mode 100644
 2063   2038   
index 0000000..d7f0696
 2064         -
-- /dev/null
        2039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2065   2040   
@@ -0,0 +1,7 @@
        2041  +
GET
        2042  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        2043  +
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
        2044  +
host:example.amazonaws.com
        2045  +
        2046  +
host
        2047  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2066   2048   
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
 2067   2049   
new file mode 100644
 2068   2050   
index 0000000..509e972
 2069         -
-- /dev/null
        2051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2070   2052   
@@ -0,0 +1 @@
        2053  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 2071   2054   
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
 2072   2055   
new file mode 100644
 2073   2056   
index 0000000..79aad36
 2074         -
-- /dev/null
        2057  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2075   2058   
@@ -0,0 +1,3 @@
        2059  +
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
        2060  +
Host:example.amazonaws.com
        2061  +
 2076   2062   
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
 2077   2063   
new file mode 100644
 2078   2064   
index 0000000..e8068b3
 2079         -
-- /dev/null
        2065  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2080   2066   
@@ -0,0 +1,4 @@
        2067  +
AWS4-HMAC-SHA256
        2068  +
20150830T123600Z
        2069  +
20150830/us-east-1/service/aws4_request
        2070  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 2081   2071   
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
 2082   2072   
similarity index 100%
 2083   2073   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 2084   2074   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2085   2075   
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
 2086   2076   
new file mode 100644
 2087   2077   
index 0000000..0468d80
 2088         -
-- /dev/null
        2078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2089   2079   
@@ -0,0 +1,12 @@
        2080  +
{
        2081  +
    "credentials": {
        2082  +
        "access_key_id": "AKIDEXAMPLE",
        2083  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2084  +
    },
        2085  +
    "expiration_in_seconds": 3600,
        2086  +
    "normalize": true,
        2087  +
    "region": "us-east-1",
        2088  +
    "service": "service",
        2089  +
    "sign_body": false,
        2090  +
    "timestamp": "2015-08-30T12:36:00Z"
        2091  +
}
              \
 No newline at end of file
 2090   2092   
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
 2091   2093   
similarity index 100%
 2092   2094   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 2093   2095   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2094   2096   
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
 2095   2097   
new file mode 100644
 2096   2098   
index 0000000..9a13676
 2097         -
-- /dev/null
        2099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2098   2100   
@@ -0,0 +1 @@
        2101  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 2099   2102   
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
 2100   2103   
new file mode 100644
 2101   2104   
index 0000000..5aaf47c
 2102         -
-- /dev/null
        2105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2103   2106   
@@ -0,0 +1,5 @@
        2107  +
GET /ሴ HTTP/1.1
        2108  +
Host:example.amazonaws.com
        2109  +
X-Amz-Date:20150830T123600Z
        2110  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2111  +
 2104   2112   
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
 2105   2113   
similarity index 100%
 2106   2114   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 2107   2115   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2108   2116   
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
 2109   2117   
new file mode 100644
 2110   2118   
index 0000000..bdb77c9
 2111         -
-- /dev/null
        2119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2112   2120   
@@ -0,0 +1,7 @@
        2121  +
GET
        2122  +
/%E1%88%B4
        2123  +
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
        2124  +
host:example.amazonaws.com
        2125  +
        2126  +
host
        2127  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2113   2128   
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
 2114   2129   
new file mode 100644
 2115   2130   
index 0000000..21342b3
 2116         -
-- /dev/null
        2131  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2117   2132   
@@ -0,0 +1 @@
        2133  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2118   2134   
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
 2119   2135   
new file mode 100644
 2120   2136   
index 0000000..368c2ff
 2121         -
-- /dev/null
        2137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2122   2138   
@@ -0,0 +1,3 @@
        2139  +
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
        2140  +
Host:example.amazonaws.com
        2141  +
 2123   2142   
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
 2124   2143   
new file mode 100644
 2125   2144   
index 0000000..56b8fbf
 2126         -
-- /dev/null
        2145  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2127   2146   
@@ -0,0 +1,4 @@
        2147  +
AWS4-HMAC-SHA256
        2148  +
20150830T123600Z
        2149  +
20150830/us-east-1/service/aws4_request
        2150  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2128   2151   
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
 2129   2152   
similarity index 62%
 2130   2153   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2131   2154   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2132   2155   
index da4808d..9e273f6 100644
 2133         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2156  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2134   2157   
@@ -1,3 +1,2 @@
 2135   2158   
GET /ሴ HTTP/1.1
 2136   2159   
Host:example.amazonaws.com
 2137         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2138   2160   
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
 2139   2161   
new file mode 100644
 2140   2162   
index 0000000..0468d80
 2141         -
-- /dev/null
        2163  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2142   2164   
@@ -0,0 +1,12 @@
        2165  +
{
        2166  +
    "credentials": {
        2167  +
        "access_key_id": "AKIDEXAMPLE",
        2168  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2169  +
    },
        2170  +
    "expiration_in_seconds": 3600,
        2171  +
    "normalize": true,
        2172  +
    "region": "us-east-1",
        2173  +
    "service": "service",
        2174  +
    "sign_body": false,
        2175  +
    "timestamp": "2015-08-30T12:36:00Z"
        2176  +
}
              \
 No newline at end of file
 2143   2177   
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
 2144   2178   
similarity index 100%
 2145   2179   
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
 2146   2180   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2147   2181   
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
 2148   2182   
new file mode 100644
 2149   2183   
index 0000000..d7f1c1c
 2150         -
-- /dev/null
        2184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2151   2185   
@@ -0,0 +1 @@
        2186  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2152   2187   
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
 2153   2188   
new file mode 100644
 2154   2189   
index 0000000..1c60790
 2155         -
-- /dev/null
        2190  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2156   2191   
@@ -0,0 +1,5 @@
        2192  +
GET /?Param1=value1 HTTP/1.1
        2193  +
Host:example.amazonaws.com
        2194  +
X-Amz-Date:20150830T123600Z
        2195  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2196  +
 2157   2197   
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
 2158   2198   
similarity index 100%
 2159   2199   
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
 2160   2200   
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
 2161   2201   
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
 2162   2202   
new file mode 100644
 2163   2203   
index 0000000..6a823ed
 2164         -
-- /dev/null
        2204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2165   2205   
@@ -0,0 +1,7 @@
        2206  +
GET
        2207  +
/
        2208  +
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
        2209  +
host:example.amazonaws.com
        2210  +
        2211  +
host
        2212  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2166   2213   
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
 2167   2214   
new file mode 100644
 2168   2215   
index 0000000..8c77136
 2169         -
-- /dev/null
        2216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2170   2217   
@@ -0,0 +1 @@
        2218  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2171   2219   
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
 2172   2220   
new file mode 100644
 2173   2221   
index 0000000..2d337d8
 2174         -
-- /dev/null
        2222  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2175   2223   
@@ -0,0 +1,3 @@
        2224  +
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
        2225  +
Host:example.amazonaws.com
        2226  +
 2176   2227   
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
 2177   2228   
new file mode 100644
 2178   2229   
index 0000000..191a484
 2179         -
-- /dev/null
        2230  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2180   2231   
@@ -0,0 +1,4 @@
        2232  +
AWS4-HMAC-SHA256
        2233  +
20150830T123600Z
        2234  +
20150830/us-east-1/service/aws4_request
        2235  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2181   2236   
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
 2182   2237   
similarity index 100%
 2183   2238   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2184   2239   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2185   2240   
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
 2186   2241   
new file mode 100644
 2187   2242   
index 0000000..0468d80
 2188         -
-- /dev/null
        2243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2189   2244   
@@ -0,0 +1,12 @@
        2245  +
{
        2246  +
    "credentials": {
        2247  +
        "access_key_id": "AKIDEXAMPLE",
        2248  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2249  +
    },
        2250  +
    "expiration_in_seconds": 3600,
        2251  +
    "normalize": true,
        2252  +
    "region": "us-east-1",
        2253  +
    "service": "service",
        2254  +
    "sign_body": false,
        2255  +
    "timestamp": "2015-08-30T12:36:00Z"
        2256  +
}
              \
 No newline at end of file
 2190   2257   
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
 2191   2258   
new file mode 100644
 2192   2259   
index 0000000..0c8ba21
 2193         -
-- /dev/null
        2260  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2194   2261   
@@ -0,0 +1,8 @@
        2262  +
GET
        2263  +
/
        2264  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2265  +
host:example.amazonaws.com
        2266  +
x-amz-date:20150830T123600Z
        2267  +
        2268  +
host;x-amz-date
        2269  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2195   2270   
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
 2196   2271   
new file mode 100644
 2197   2272   
index 0000000..9ab65ed
 2198         -
-- /dev/null
        2273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2199   2274   
@@ -0,0 +1 @@
        2275  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2200   2276   
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
 2201   2277   
new file mode 100644
 2202   2278   
index 0000000..0bcdf98
 2203         -
-- /dev/null
        2279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2204   2280   
@@ -0,0 +1,5 @@
        2281  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2282  +
Host:example.amazonaws.com
        2283  +
X-Amz-Date:20150830T123600Z
        2284  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2285  +
 2205   2286   
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
 2206   2287   
new file mode 100644
 2207   2288   
index 0000000..bf674ad
 2208         -
-- /dev/null
        2289  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2209   2290   
@@ -0,0 +1,4 @@
        2291  +
AWS4-HMAC-SHA256
        2292  +
20150830T123600Z
        2293  +
20150830/us-east-1/service/aws4_request
        2294  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2210   2295   
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
 2211   2296   
new file mode 100644
 2212   2297   
index 0000000..3f590a4
 2213         -
-- /dev/null
        2298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2214   2299   
@@ -0,0 +1,7 @@
        2300  +
GET
        2301  +
/
        2302  +
%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
        2303  +
host:example.amazonaws.com
        2304  +
        2305  +
host
        2306  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2215   2307   
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
 2216   2308   
new file mode 100644
 2217   2309   
index 0000000..e225eab
 2218         -
-- /dev/null
        2310  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2219   2311   
@@ -0,0 +1 @@
        2312  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2220   2313   
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
 2221   2314   
new file mode 100644
 2222   2315   
index 0000000..6206719
 2223         -
-- /dev/null
        2316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2224   2317   
@@ -0,0 +1,3 @@
        2318  +
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
        2319  +
Host:example.amazonaws.com
        2320  +
 2225   2321   
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
 2226   2322   
new file mode 100644
 2227   2323   
index 0000000..81a4210
 2228         -
-- /dev/null
        2324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2229   2325   
@@ -0,0 +1,4 @@
        2326  +
AWS4-HMAC-SHA256
        2327  +
20150830T123600Z
        2328  +
20150830/us-east-1/service/aws4_request
        2329  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2230   2330   
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
 2231   2331   
new file mode 100644
 2232   2332   
index 0000000..368c6e3
 2233         -
-- /dev/null
        2333  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2234   2334   
@@ -0,0 +1,2 @@
        2335  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2336  +
Host:example.amazonaws.com
 2235   2337   
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
 2236   2338   
new file mode 100644
 2237   2339   
index 0000000..0468d80
 2238         -
-- /dev/null
        2340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2239   2341   
@@ -0,0 +1,12 @@
        2342  +
{
        2343  +
    "credentials": {
        2344  +
        "access_key_id": "AKIDEXAMPLE",
        2345  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2346  +
    },
        2347  +
    "expiration_in_seconds": 3600,
        2348  +
    "normalize": true,
        2349  +
    "region": "us-east-1",
        2350  +
    "service": "service",
        2351  +
    "sign_body": false,
        2352  +
    "timestamp": "2015-08-30T12:36:00Z"
        2353  +
}
              \
 No newline at end of file
 2240   2354   
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
 2241   2355   
similarity index 100%
 2242   2356   
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
 2243   2357   
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
 2244   2358   
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
 2245   2359   
new file mode 100644
 2246   2360   
index 0000000..6a8cb9d
 2247         -
-- /dev/null
        2361  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2248   2362   
@@ -0,0 +1 @@
        2363  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2249   2364   
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
 2250   2365   
new file mode 100644
 2251   2366   
index 0000000..f78a9d2
 2252         -
-- /dev/null
        2367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2253   2368   
@@ -0,0 +1,5 @@
        2369  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2370  +
Host:example.amazonaws.com
        2371  +
X-Amz-Date:20150830T123600Z
        2372  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2373  +
 2254   2374   
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
 2255   2375   
similarity index 100%
 2256   2376   
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
 2257   2377   
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
 2258   2378   
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
 2259   2379   
new file mode 100644
 2260   2380   
index 0000000..a6e1bc7
 2261         -
-- /dev/null
        2381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2262   2382   
@@ -0,0 +1,7 @@
        2383  +
GET
        2384  +
/
        2385  +
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
        2386  +
host:example.amazonaws.com
        2387  +
        2388  +
host
        2389  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2263   2390   
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
 2264   2391   
new file mode 100644
 2265   2392   
index 0000000..d6e6a88
 2266         -
-- /dev/null
        2393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2267   2394   
@@ -0,0 +1 @@
        2395  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2268   2396   
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
 2269   2397   
new file mode 100644
 2270   2398   
index 0000000..538e2f0
 2271         -
-- /dev/null
        2399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2272   2400   
@@ -0,0 +1,3 @@
        2401  +
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
        2402  +
Host:example.amazonaws.com
        2403  +
 2273   2404   
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
 2274   2405   
new file mode 100644
 2275   2406   
index 0000000..e696085
 2276         -
-- /dev/null
        2407  +
++ 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
 2277   2408   
@@ -0,0 +1,4 @@
        2409  +
AWS4-HMAC-SHA256
        2410  +
20150830T123600Z
        2411  +
20150830/us-east-1/service/aws4_request
        2412  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2278   2413   
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
 2279   2414   
similarity index 100%
 2280   2415   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2281   2416   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2282   2417   
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
 2283   2418   
new file mode 100644
 2284   2419   
index 0000000..0468d80
 2285         -
-- /dev/null
        2420  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2286   2421   
@@ -0,0 +1,12 @@
        2422  +
{
        2423  +
    "credentials": {
        2424  +
        "access_key_id": "AKIDEXAMPLE",
        2425  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2426  +
    },
        2427  +
    "expiration_in_seconds": 3600,
        2428  +
    "normalize": true,
        2429  +
    "region": "us-east-1",
        2430  +
    "service": "service",
        2431  +
    "sign_body": false,
        2432  +
    "timestamp": "2015-08-30T12:36:00Z"
        2433  +
}
              \
 No newline at end of file
 2287   2434   
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
 2288   2435   
similarity index 100%
 2289   2436   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2290   2437   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2291   2438   
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
 2292   2439   
new file mode 100644
 2293   2440   
index 0000000..876a64b
 2294         -
-- /dev/null
        2441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2295   2442   
@@ -0,0 +1 @@
        2443  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2296   2444   
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
 2297   2445   
similarity index 50%
 2298   2446   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2299   2447   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2300   2448   
index ba1ef40..9d0d993 100644
 2301         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2449  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2302   2450   
@@ -1,4 +1,5 @@
 2303   2451   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2304   2452   
Host:example.amazonaws.com
 2305   2453   
X-Amz-Date:20150830T123600Z
 2306         -
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
        2454  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2455  +
 2307   2456   
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
 2308   2457   
similarity index 100%
 2309   2458   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2310   2459   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2311   2460   
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
 2312   2461   
new file mode 100644
 2313   2462   
index 0000000..a1bac59
 2314         -
-- /dev/null
        2463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2315   2464   
@@ -0,0 +1,7 @@
        2465  +
GET
        2466  +
/
        2467  +
-._~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
        2468  +
host:example.amazonaws.com
        2469  +
        2470  +
host
        2471  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2316   2472   
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
 2317   2473   
new file mode 100644
 2318   2474   
index 0000000..41881e9
 2319         -
-- /dev/null
        2475  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2320   2476   
@@ -0,0 +1 @@
        2477  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2321   2478   
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
 2322   2479   
new file mode 100644
 2323   2480   
index 0000000..3179076
 2324         -
-- /dev/null
        2481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2325   2482   
@@ -0,0 +1,3 @@
        2483  +
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
        2484  +
Host:example.amazonaws.com
        2485  +
 2326   2486   
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
 2327   2487   
new file mode 100644
 2328   2488   
index 0000000..6d675fc
 2329         -
-- /dev/null
        2489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2330   2490   
@@ -0,0 +1,4 @@
        2491  +
AWS4-HMAC-SHA256
        2492  +
20150830T123600Z
        2493  +
20150830/us-east-1/service/aws4_request
        2494  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2331   2495   
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
 2332   2496   
similarity index 100%
 2333   2497   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2334   2498   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2335   2499   
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
 2336   2500   
new file mode 100644
 2337   2501   
index 0000000..0468d80
 2338         -
-- /dev/null
        2502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2339   2503   
@@ -0,0 +1,12 @@
        2504  +
{
        2505  +
    "credentials": {
        2506  +
        "access_key_id": "AKIDEXAMPLE",
        2507  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2508  +
    },
        2509  +
    "expiration_in_seconds": 3600,
        2510  +
    "normalize": true,
        2511  +
    "region": "us-east-1",
        2512  +
    "service": "service",
        2513  +
    "sign_body": false,
        2514  +
    "timestamp": "2015-08-30T12:36:00Z"
        2515  +
}
              \
 No newline at end of file
 2340   2516   
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
 2341   2517   
similarity index 100%
 2342   2518   
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
 2343   2519   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2344   2520   
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
 2345   2521   
new file mode 100644
 2346   2522   
index 0000000..87f295f
 2347         -
-- /dev/null
        2523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2348   2524   
@@ -0,0 +1 @@
        2525  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2349   2526   
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
 2350   2527   
new file mode 100644
 2351   2528   
index 0000000..36b86e7
 2352         -
-- /dev/null
        2529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2353   2530   
@@ -0,0 +1,5 @@
        2531  +
GET / HTTP/1.1
        2532  +
Host:example.amazonaws.com
        2533  +
X-Amz-Date:20150830T123600Z
        2534  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2535  +
 2354   2536   
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
 2355   2537   
similarity index 100%
 2356   2538   
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
 2357   2539   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2358   2540   
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
 2359   2541   
new file mode 100644
 2360   2542   
index 0000000..fb2420d
 2361         -
-- /dev/null
        2543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2362   2544   
@@ -0,0 +1,7 @@
        2545  +
GET
        2546  +
/
        2547  +
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
        2548  +
host:example.amazonaws.com
        2549  +
        2550  +
host
        2551  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2363   2552   
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
 2364   2553   
new file mode 100644
 2365   2554   
index 0000000..da5c905
 2366         -
-- /dev/null
        2555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2367   2556   
@@ -0,0 +1 @@
        2557  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2368   2558   
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
 2369   2559   
new file mode 100644
 2370   2560   
index 0000000..eeb7a8f
 2371         -
-- /dev/null
        2561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2372   2562   
@@ -0,0 +1,3 @@
        2563  +
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
        2564  +
Host:example.amazonaws.com
        2565  +
 2373   2566   
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
 2374   2567   
new file mode 100644
 2375   2568   
index 0000000..d837e67
 2376         -
-- /dev/null
        2569  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2377   2570   
@@ -0,0 +1,4 @@
        2571  +
AWS4-HMAC-SHA256
        2572  +
20150830T123600Z
        2573  +
20150830/us-east-1/service/aws4_request
        2574  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2378   2575   
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
 2379   2576   
similarity index 100%
 2380   2577   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2381   2578   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2382   2579   
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
 2383   2580   
new file mode 100644
 2384   2581   
index 0000000..0468d80
 2385         -
-- /dev/null
        2582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2386   2583   
@@ -0,0 +1,12 @@
        2584  +
{
        2585  +
    "credentials": {
        2586  +
        "access_key_id": "AKIDEXAMPLE",
        2587  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2588  +
    },
        2589  +
    "expiration_in_seconds": 3600,
        2590  +
    "normalize": true,
        2591  +
    "region": "us-east-1",
        2592  +
    "service": "service",
        2593  +
    "sign_body": false,
        2594  +
    "timestamp": "2015-08-30T12:36:00Z"
        2595  +
}
              \
 No newline at end of file
 2387   2596   
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
 2388   2597   
similarity index 100%
 2389   2598   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2390   2599   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2391   2600   
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
 2392   2601   
new file mode 100644
 2393   2602   
index 0000000..19a2cc9
 2394         -
-- /dev/null
        2603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2395   2604   
@@ -0,0 +1 @@
        2605  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2396   2606   
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
 2397   2607   
new file mode 100644
 2398   2608   
index 0000000..acb13ee
 2399         -
-- /dev/null
        2609  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2400   2610   
@@ -0,0 +1,5 @@
        2611  +
GET /?ሴ=bar HTTP/1.1
        2612  +
Host:example.amazonaws.com
        2613  +
X-Amz-Date:20150830T123600Z
        2614  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2615  +
 2401   2616   
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
 2402   2617   
similarity index 100%
 2403   2618   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2404   2619   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2405   2620   
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
 2406   2621   
new file mode 100644
 2407   2622   
index 0000000..92cee62
 2408         -
-- /dev/null
        2623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2409   2624   
@@ -0,0 +1,7 @@
        2625  +
GET
        2626  +
/
        2627  +
%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
        2628  +
host:example.amazonaws.com
        2629  +
        2630  +
host
        2631  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2410   2632   
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
 2411   2633   
new file mode 100644
 2412   2634   
index 0000000..c9e49de
 2413         -
-- /dev/null
        2635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2414   2636   
@@ -0,0 +1 @@
        2637  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2415   2638   
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
 2416   2639   
new file mode 100644
 2417   2640   
index 0000000..8f4d8d0
 2418         -
-- /dev/null
        2641  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2419   2642   
@@ -0,0 +1,3 @@
        2643  +
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
        2644  +
Host:example.amazonaws.com
        2645  +
 2420   2646   
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
 2421   2647   
new file mode 100644
 2422   2648   
index 0000000..a6181dc
 2423         -
-- /dev/null
        2649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2424   2650   
@@ -0,0 +1,4 @@
        2651  +
AWS4-HMAC-SHA256
        2652  +
20150830T123600Z
        2653  +
20150830/us-east-1/service/aws4_request
        2654  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2425   2655   
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
 2426   2656   
similarity index 64%
 2427   2657   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2428   2658   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2429   2659   
index cc2757e..aff333a 100644
 2430         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2431   2661   
@@ -1,3 +1,2 @@
 2432   2662   
GET /?ሴ=bar HTTP/1.1
 2433   2663   
Host:example.amazonaws.com
 2434         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2435   2664   
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
 2436   2665   
similarity index 99%
 2437   2666   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2438   2667   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2439   2668   
index a457c8a..a334e18 100644
 2440         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
        2669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2441   2670   
@@ -1,13 +1,13 @@
 2442   2671   
{
 2443   2672   
    "credentials": {
 2444   2673   
        "access_key_id": "AKIDEXAMPLE",
 2445   2674   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
 2446   2675   
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
 2447   2676   
    },
 2448   2677   
    "expiration_in_seconds": 3600,
 2449   2678   
    "normalize": true,
 2450   2679   
    "region": "us-east-1",
 2451   2680   
    "service": "service",
 2452   2681   
    "sign_body": false,
 2453   2682   
    "timestamp": "2015-08-30T12:36:00Z"
 2454         -
}
        2683  +
}
              \
 No newline at end of file
 2455   2684   
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
 2456   2685   
new file mode 100644
 2457   2686   
index 0000000..ccacdeb
 2458         -
-- /dev/null
        2687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2459   2688   
@@ -0,0 +1,9 @@
        2689  +
GET
        2690  +
/
        2691  +
        2692  +
host:example.amazonaws.com
        2693  +
x-amz-date:20150830T123600Z
        2694  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2695  +
        2696  +
host;x-amz-date;x-amz-security-token
        2697  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2460   2698   
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
 2461   2699   
new file mode 100644
 2462   2700   
index 0000000..083e30d
 2463         -
-- /dev/null
        2701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2464   2702   
@@ -0,0 +1 @@
        2703  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2465   2704   
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
 2466   2705   
new file mode 100644
 2467   2706   
index 0000000..5287932
 2468         -
-- /dev/null
        2707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2469   2708   
@@ -0,0 +1,6 @@
        2709  +
GET / HTTP/1.1
        2710  +
Host:example.amazonaws.com
        2711  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2712  +
X-Amz-Date:20150830T123600Z
        2713  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2714  +
 2470   2715   
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
 2471   2716   
new file mode 100644
 2472   2717   
index 0000000..742b880
 2473         -
-- /dev/null
        2718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2474   2719   
@@ -0,0 +1,4 @@
        2720  +
AWS4-HMAC-SHA256
        2721  +
20150830T123600Z
        2722  +
20150830/us-east-1/service/aws4_request
        2723  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2475   2724   
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
 2476   2725   
new file mode 100644
 2477   2726   
index 0000000..5e75179
 2478         -
-- /dev/null
        2727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2479   2728   
@@ -0,0 +1,7 @@
        2729  +
GET
        2730  +
/
        2731  +
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
        2732  +
host:example.amazonaws.com
        2733  +
        2734  +
host
        2735  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2480   2736   
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
 2481   2737   
new file mode 100644
 2482   2738   
index 0000000..50b947f
 2483         -
-- /dev/null
        2739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2484   2740   
@@ -0,0 +1 @@
        2741  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2485   2742   
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
 2486   2743   
new file mode 100644
 2487   2744   
index 0000000..aee910b
 2488         -
-- /dev/null
        2745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2489   2746   
@@ -0,0 +1,3 @@
        2747  +
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
        2748  +
Host:example.amazonaws.com
        2749  +
 2490   2750   
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
 2491   2751   
new file mode 100644
 2492   2752   
index 0000000..04a6c17
 2493         -
-- /dev/null
        2753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2494   2754   
@@ -0,0 +1,4 @@
        2755  +
AWS4-HMAC-SHA256
        2756  +
20150830T123600Z
        2757  +
20150830/us-east-1/service/aws4_request
        2758  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2495   2759   
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
 2496   2760   
similarity index 100%
 2497   2761   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2498   2762   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2499   2763   
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
 2500   2764   
new file mode 100644
 2501   2765   
index 0000000..0468d80
 2502         -
-- /dev/null
        2766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2503   2767   
@@ -0,0 +1,12 @@
        2768  +
{
        2769  +
    "credentials": {
        2770  +
        "access_key_id": "AKIDEXAMPLE",
        2771  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2772  +
    },
        2773  +
    "expiration_in_seconds": 3600,
        2774  +
    "normalize": true,
        2775  +
    "region": "us-east-1",
        2776  +
    "service": "service",
        2777  +
    "sign_body": false,
        2778  +
    "timestamp": "2015-08-30T12:36:00Z"
        2779  +
}
              \
 No newline at end of file
 2504   2780   
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
 2505   2781   
similarity index 100%
 2506   2782   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2507   2783   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2508   2784   
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
 2509   2785   
new file mode 100644
 2510   2786   
index 0000000..87f295f
 2511         -
-- /dev/null
        2787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2512   2788   
@@ -0,0 +1 @@
        2789  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2513   2790   
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
 2514   2791   
new file mode 100644
 2515   2792   
index 0000000..36b86e7
 2516         -
-- /dev/null
        2793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2517   2794   
@@ -0,0 +1,5 @@
        2795  +
GET / HTTP/1.1
        2796  +
Host:example.amazonaws.com
        2797  +
X-Amz-Date:20150830T123600Z
        2798  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2799  +
 2518   2800   
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
 2519   2801   
similarity index 100%
 2520   2802   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2521   2803   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2522   2804   
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
 2523   2805   
new file mode 100644
 2524   2806   
index 0000000..fb2420d
 2525         -
-- /dev/null
        2807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2526   2808   
@@ -0,0 +1,7 @@
        2809  +
GET
        2810  +
/
        2811  +
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
        2812  +
host:example.amazonaws.com
        2813  +
        2814  +
host
        2815  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2527   2816   
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
 2528   2817   
new file mode 100644
 2529   2818   
index 0000000..da5c905
 2530         -
-- /dev/null
        2819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2531   2820   
@@ -0,0 +1 @@
        2821  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2532   2822   
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
 2533   2823   
new file mode 100644
 2534   2824   
index 0000000..eeb7a8f
 2535         -
-- /dev/null
        2825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2536   2826   
@@ -0,0 +1,3 @@
        2827  +
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
        2828  +
Host:example.amazonaws.com
        2829  +
 2537   2830   
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
 2538   2831   
new file mode 100644
 2539   2832   
index 0000000..d837e67
 2540         -
-- /dev/null
        2833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2541   2834   
@@ -0,0 +1,4 @@
        2835  +
AWS4-HMAC-SHA256
        2836  +
20150830T123600Z
        2837  +
20150830/us-east-1/service/aws4_request
        2838  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2542   2839   
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
 2543   2840   
similarity index 100%
 2544   2841   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2545   2842   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2546   2843   
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
 2547   2844   
new file mode 100644
 2548   2845   
index 0000000..0468d80
 2549         -
-- /dev/null
        2846  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2550   2847   
@@ -0,0 +1,12 @@
        2848  +
{
        2849  +
    "credentials": {
        2850  +
        "access_key_id": "AKIDEXAMPLE",
        2851  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2852  +
    },
        2853  +
    "expiration_in_seconds": 3600,
        2854  +
    "normalize": true,
        2855  +
    "region": "us-east-1",
        2856  +
    "service": "service",
        2857  +
    "sign_body": false,
        2858  +
    "timestamp": "2015-08-30T12:36:00Z"
        2859  +
}
              \
 No newline at end of file
 2551   2860   
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
 2552   2861   
similarity index 100%
 2553   2862   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2554   2863   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2555   2864   
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
 2556   2865   
new file mode 100644
 2557   2866   
index 0000000..629487f
 2558         -
-- /dev/null
        2867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2559   2868   
@@ -0,0 +1 @@
        2869  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2560   2870   
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
 2561   2871   
new file mode 100644
 2562   2872   
index 0000000..0d99b1c
 2563         -
-- /dev/null
        2873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2564   2874   
@@ -0,0 +1,5 @@
        2875  +
POST / HTTP/1.1
        2876  +
Host:example.amazonaws.com
        2877  +
X-Amz-Date:20150830T123600Z
        2878  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2879  +
 2565   2880   
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
 2566   2881   
similarity index 100%
 2567   2882   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2568   2883   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2569   2884   
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
 2570   2885   
new file mode 100644
 2571   2886   
index 0000000..d3341e7
 2572         -
-- /dev/null
        2887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2573   2888   
@@ -0,0 +1,7 @@
        2889  +
POST
        2890  +
/
        2891  +
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
        2892  +
host:example.amazonaws.com
        2893  +
        2894  +
host
        2895  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2574   2896   
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
 2575   2897   
new file mode 100644
 2576   2898   
index 0000000..79f7e0d
 2577         -
-- /dev/null
        2899  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2578   2900   
@@ -0,0 +1 @@
        2901  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2579   2902   
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
 2580   2903   
new file mode 100644
 2581   2904   
index 0000000..94f1b21
 2582         -
-- /dev/null
        2905  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2583   2906   
@@ -0,0 +1,3 @@
        2907  +
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
        2908  +
Host:example.amazonaws.com
        2909  +
 2584   2910   
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
 2585   2911   
new file mode 100644
 2586   2912   
index 0000000..e8f335b
 2587         -
-- /dev/null
        2913  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2588   2914   
@@ -0,0 +1,4 @@
        2915  +
AWS4-HMAC-SHA256
        2916  +
20150830T123600Z
        2917  +
20150830/us-east-1/service/aws4_request
        2918  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2589   2919   
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
 2590   2920   
similarity index 100%
 2591   2921   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2592   2922   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2593   2923   
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
 2594   2924   
new file mode 100644
 2595   2925   
index 0000000..0468d80
 2596         -
-- /dev/null
        2926  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2597   2927   
@@ -0,0 +1,12 @@
        2928  +
{
        2929  +
    "credentials": {
        2930  +
        "access_key_id": "AKIDEXAMPLE",
        2931  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2932  +
    },
        2933  +
    "expiration_in_seconds": 3600,
        2934  +
    "normalize": true,
        2935  +
    "region": "us-east-1",
        2936  +
    "service": "service",
        2937  +
    "sign_body": false,
        2938  +
    "timestamp": "2015-08-30T12:36:00Z"
        2939  +
}
              \
 No newline at end of file
 2598   2940   
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
 2599   2941   
similarity index 100%
 2600   2942   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2601   2943   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2602   2944   
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
 2603   2945   
new file mode 100644
 2604   2946   
index 0000000..e4e6428
 2605         -
-- /dev/null
        2947  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2606   2948   
@@ -0,0 +1 @@
        2949  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2607   2950   
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
 2608   2951   
new file mode 100644
 2609   2952   
index 0000000..e3778f5
 2610         -
-- /dev/null
        2953  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2611   2954   
@@ -0,0 +1,6 @@
        2955  +
POST / HTTP/1.1
        2956  +
Host:example.amazonaws.com
        2957  +
My-Header1:value1
        2958  +
X-Amz-Date:20150830T123600Z
        2959  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2960  +
 2612   2961   
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
 2613   2962   
similarity index 100%
 2614   2963   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2615   2964   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2616   2965   
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
 2617   2966   
new file mode 100644
 2618   2967   
index 0000000..bd7c937
 2619         -
-- /dev/null
        2968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2620   2969   
@@ -0,0 +1,8 @@
        2970  +
POST
        2971  +
/
        2972  +
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
        2973  +
host:example.amazonaws.com
        2974  +
my-header1:value1
        2975  +
        2976  +
host;my-header1
        2977  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2621   2978   
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
 2622   2979   
new file mode 100644
 2623   2980   
index 0000000..0416f13
 2624         -
-- /dev/null
        2981  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2625   2982   
@@ -0,0 +1 @@
        2983  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2626   2984   
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
 2627   2985   
new file mode 100644
 2628   2986   
index 0000000..5e6522f
 2629         -
-- /dev/null
        2987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2630   2988   
@@ -0,0 +1,4 @@
        2989  +
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
        2990  +
Host:example.amazonaws.com
        2991  +
My-Header1:value1
        2992  +
 2631   2993   
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
 2632   2994   
new file mode 100644
 2633   2995   
index 0000000..d06d1df
 2634         -
-- /dev/null
        2996  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2635   2997   
@@ -0,0 +1,4 @@
        2998  +
AWS4-HMAC-SHA256
        2999  +
20150830T123600Z
        3000  +
20150830/us-east-1/service/aws4_request
        3001  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2636   3002   
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
 2637   3003   
similarity index 100%
 2638   3004   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2639   3005   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2640   3006   
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
 2641   3007   
new file mode 100644
 2642   3008   
index 0000000..0468d80
 2643         -
-- /dev/null
        3009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2644   3010   
@@ -0,0 +1,12 @@
        3011  +
{
        3012  +
    "credentials": {
        3013  +
        "access_key_id": "AKIDEXAMPLE",
        3014  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3015  +
    },
        3016  +
    "expiration_in_seconds": 3600,
        3017  +
    "normalize": true,
        3018  +
    "region": "us-east-1",
        3019  +
    "service": "service",
        3020  +
    "sign_body": false,
        3021  +
    "timestamp": "2015-08-30T12:36:00Z"
        3022  +
}
              \
 No newline at end of file
 2645   3023   
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
 2646   3024   
similarity index 100%
 2647   3025   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2648   3026   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2649   3027   
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
 2650   3028   
new file mode 100644
 2651   3029   
index 0000000..bb3809c
 2652         -
-- /dev/null
        3030  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2653   3031   
@@ -0,0 +1 @@
        3032  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2654   3033   
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
 2655   3034   
new file mode 100644
 2656   3035   
index 0000000..10f6761
 2657         -
-- /dev/null
        3036  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2658   3037   
@@ -0,0 +1,6 @@
        3038  +
POST / HTTP/1.1
        3039  +
Host:example.amazonaws.com
        3040  +
My-Header1:VALUE1
        3041  +
X-Amz-Date:20150830T123600Z
        3042  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        3043  +
 2659   3044   
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
 2660   3045   
similarity index 100%
 2661   3046   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2662   3047   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2663   3048   
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
 2664   3049   
new file mode 100644
 2665   3050   
index 0000000..f84856f
 2666         -
-- /dev/null
        3051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2667   3052   
@@ -0,0 +1,8 @@
        3053  +
POST
        3054  +
/
        3055  +
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
        3056  +
host:example.amazonaws.com
        3057  +
my-header1:VALUE1
        3058  +
        3059  +
host;my-header1
        3060  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2668   3061   
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
 2669   3062   
new file mode 100644
 2670   3063   
index 0000000..a9d3cac
 2671         -
-- /dev/null
        3064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2672   3065   
@@ -0,0 +1 @@
        3066  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2673   3067   
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
 2674   3068   
new file mode 100644
 2675   3069   
index 0000000..cf96c7c
 2676         -
-- /dev/null
        3070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2677   3071   
@@ -0,0 +1,4 @@
        3072  +
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
        3073  +
Host:example.amazonaws.com
        3074  +
My-Header1:VALUE1
        3075  +
 2678   3076   
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
 2679   3077   
new file mode 100644
 2680   3078   
index 0000000..47ef566
 2681         -
-- /dev/null
        3079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2682   3080   
@@ -0,0 +1,4 @@
        3081  +
AWS4-HMAC-SHA256
        3082  +
20150830T123600Z
        3083  +
20150830/us-east-1/service/aws4_request
        3084  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2683   3085   
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
 2684   3086   
similarity index 100%
 2685   3087   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2686   3088   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2687   3089   
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
 2688   3090   
similarity index 100%
 2689   3091   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2690   3092   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2691   3093   
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
 2692   3094   
similarity index 100%
 2693   3095   
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
 2694   3096   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2695   3097   
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
 2696   3098   
new file mode 100644
 2697   3099   
index 0000000..629487f
 2698         -
-- /dev/null
        3100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2699   3101   
@@ -0,0 +1 @@
        3102  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2700   3103   
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
 2701   3104   
similarity index 67%
 2702   3105   
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
 2703   3106   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2704   3107   
index 291ed07..f96ff9e 100644
 2705         -
-- 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
        3108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2706   3109   
@@ -1,5 +1,6 @@
 2707   3110   
POST / HTTP/1.1
 2708   3111   
Host:example.amazonaws.com
 2709         -
X-Amz-Date:20150830T123600Z
 2710   3112   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2711         -
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
        3113  +
X-Amz-Date:20150830T123600Z
        3114  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3115  +
 2712   3116   
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
 2713   3117   
similarity index 100%
 2714   3118   
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
 2715   3119   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2716   3120   
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
 2717   3121   
new file mode 100644
 2718   3122   
index 0000000..d3341e7
 2719         -
-- /dev/null
        3123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2720   3124   
@@ -0,0 +1,7 @@
        3125  +
POST
        3126  +
/
        3127  +
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
        3128  +
host:example.amazonaws.com
        3129  +
        3130  +
host
        3131  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2721   3132   
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
 2722   3133   
new file mode 100644
 2723   3134   
index 0000000..79f7e0d
 2724         -
-- /dev/null
        3135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2725   3136   
@@ -0,0 +1 @@
        3137  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2726   3138   
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
 2727   3139   
new file mode 100644
 2728   3140   
index 0000000..4983268
 2729         -
-- /dev/null
        3141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2730   3142   
@@ -0,0 +1,3 @@
        3143  +
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
        3144  +
Host:example.amazonaws.com
        3145  +
 2731   3146   
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
 2732   3147   
new file mode 100644
 2733   3148   
index 0000000..e8f335b
 2734         -
-- /dev/null
        3149  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2735   3150   
@@ -0,0 +1,4 @@
        3151  +
AWS4-HMAC-SHA256
        3152  +
20150830T123600Z
        3153  +
20150830/us-east-1/service/aws4_request
        3154  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2736   3155   
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
 2737   3156   
similarity index 100%
 2738   3157   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2739   3158   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2740   3159   
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
 2741   3160   
similarity index 100%
 2742   3161   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2743   3162   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2744   3163   
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
 2745   3164   
similarity index 100%
 2746   3165   
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
 2747   3166   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2748   3167   
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
 2749   3168   
new file mode 100644
 2750   3169   
index 0000000..85a7c29
 2751         -
-- /dev/null
        3170  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2752   3171   
@@ -0,0 +1 @@
        3172  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2753   3173   
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
 2754   3174   
similarity index 65%
 2755   3175   
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
 2756   3176   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2757   3177   
index 37b2f04..4d0b143 100644
 2758         -
-- 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
        3178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2759   3179   
@@ -1,5 +1,6 @@
 2760   3180   
POST / HTTP/1.1
 2761   3181   
Host:example.amazonaws.com
 2762         -
X-Amz-Date:20150830T123600Z
 2763   3182   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2764         -
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
        3183  +
X-Amz-Date:20150830T123600Z
        3184  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3185  +
 2765   3186   
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
 2766   3187   
similarity index 100%
 2767   3188   
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
 2768   3189   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2769   3190   
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
 2770   3191   
new file mode 100644
 2771   3192   
index 0000000..57a7bc3
 2772         -
-- /dev/null
        3193  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2773   3194   
@@ -0,0 +1,7 @@
        3195  +
POST
        3196  +
/
        3197  +
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
        3198  +
host:example.amazonaws.com
        3199  +
        3200  +
host
        3201  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2774   3202   
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
 2775   3203   
new file mode 100644
 2776   3204   
index 0000000..eb905d2
 2777         -
-- /dev/null
        3205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2778   3206   
@@ -0,0 +1 @@
        3207  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2779   3208   
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
 2780   3209   
new file mode 100644
 2781   3210   
index 0000000..1d80ec0
 2782         -
-- /dev/null
        3211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2783   3212   
@@ -0,0 +1,3 @@
        3213  +
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
        3214  +
Host:example.amazonaws.com
        3215  +
 2784   3216   
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
 2785   3217   
new file mode 100644
 2786   3218   
index 0000000..bd0239a
 2787         -
-- /dev/null
        3219  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2788   3220   
@@ -0,0 +1,4 @@
        3221  +
AWS4-HMAC-SHA256
        3222  +
20150830T123600Z
        3223  +
20150830/us-east-1/service/aws4_request
        3224  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2789   3225   
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
 2790   3226   
similarity index 100%
 2791   3227   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2792   3228   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2793   3229   
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
 2794   3230   
new file mode 100644
 2795   3231   
index 0000000..0468d80
 2796         -
-- /dev/null
        3232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2797   3233   
@@ -0,0 +1,12 @@
        3234  +
{
        3235  +
    "credentials": {
        3236  +
        "access_key_id": "AKIDEXAMPLE",
        3237  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3238  +
    },
        3239  +
    "expiration_in_seconds": 3600,
        3240  +
    "normalize": true,
        3241  +
    "region": "us-east-1",
        3242  +
    "service": "service",
        3243  +
    "sign_body": false,
        3244  +
    "timestamp": "2015-08-30T12:36:00Z"
        3245  +
}
              \
 No newline at end of file
 2798   3246   
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
 2799   3247   
similarity index 100%
 2800   3248   
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
 2801   3249   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2802   3250   
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
 2803   3251   
new file mode 100644
 2804   3252   
index 0000000..80ed433
 2805         -
-- /dev/null
        3253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2806   3254   
@@ -0,0 +1 @@
        3255  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2807   3256   
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
 2808   3257   
new file mode 100644
 2809   3258   
index 0000000..4e614f8
 2810         -
-- /dev/null
        3259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2811   3260   
@@ -0,0 +1,5 @@
        3261  +
POST /?Param1=value1 HTTP/1.1
        3262  +
Host:example.amazonaws.com
        3263  +
X-Amz-Date:20150830T123600Z
        3264  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3265  +
 2812   3266   
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
 2813   3267   
similarity index 100%
 2814   3268   
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
 2815   3269   
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
 2816   3270   
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
 2817   3271   
new file mode 100644
 2818   3272   
index 0000000..be66403
 2819         -
-- /dev/null
        3273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2820   3274   
@@ -0,0 +1,7 @@
        3275  +
POST
        3276  +
/
        3277  +
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
        3278  +
host:example.amazonaws.com
        3279  +
        3280  +
host
        3281  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2821   3282   
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
 2822   3283   
new file mode 100644
 2823   3284   
index 0000000..20fd32b
 2824         -
-- /dev/null
        3285  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2825   3286   
@@ -0,0 +1 @@
        3287  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2826   3288   
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
 2827   3289   
new file mode 100644
 2828   3290   
index 0000000..d1148d0
 2829         -
-- /dev/null
        3291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2830   3292   
@@ -0,0 +1,3 @@
        3293  +
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
        3294  +
Host:example.amazonaws.com
        3295  +
 2831   3296   
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
 2832   3297   
new file mode 100644
 2833   3298   
index 0000000..1a77103
 2834         -
-- /dev/null
        3299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2835   3300   
@@ -0,0 +1,4 @@
        3301  +
AWS4-HMAC-SHA256
        3302  +
20150830T123600Z
        3303  +
20150830/us-east-1/service/aws4_request
        3304  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2836   3305   
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
 2837   3306   
similarity index 100%
 2838   3307   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2839   3308   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2840   3309   
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
 2841   3310   
new file mode 100644
 2842   3311   
index 0000000..0468d80
 2843         -
-- /dev/null
        3312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2844   3313   
@@ -0,0 +1,12 @@
        3314  +
{
        3315  +
    "credentials": {
        3316  +
        "access_key_id": "AKIDEXAMPLE",
        3317  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3318  +
    },
        3319  +
    "expiration_in_seconds": 3600,
        3320  +
    "normalize": true,
        3321  +
    "region": "us-east-1",
        3322  +
    "service": "service",
        3323  +
    "sign_body": false,
        3324  +
    "timestamp": "2015-08-30T12:36:00Z"
        3325  +
}
              \
 No newline at end of file
 2845   3326   
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
 2846   3327   
similarity index 100%
 2847   3328   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2848   3329   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2849   3330   
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
 2850   3331   
new file mode 100644
 2851   3332   
index 0000000..80ed433
 2852         -
-- /dev/null
        3333  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2853   3334   
@@ -0,0 +1 @@
        3335  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2854   3336   
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
 2855   3337   
new file mode 100644
 2856   3338   
index 0000000..4e614f8
 2857         -
-- /dev/null
        3339  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2858   3340   
@@ -0,0 +1,5 @@
        3341  +
POST /?Param1=value1 HTTP/1.1
        3342  +
Host:example.amazonaws.com
        3343  +
X-Amz-Date:20150830T123600Z
        3344  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3345  +
 2859   3346   
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
 2860   3347   
similarity index 100%
 2861   3348   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2862   3349   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2863   3350   
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
 2864   3351   
new file mode 100644
 2865   3352   
index 0000000..be66403
 2866         -
-- /dev/null
        3353  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2867   3354   
@@ -0,0 +1,7 @@
        3355  +
POST
        3356  +
/
        3357  +
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
        3358  +
host:example.amazonaws.com
        3359  +
        3360  +
host
        3361  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2868   3362   
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
 2869   3363   
new file mode 100644
 2870   3364   
index 0000000..20fd32b
 2871         -
-- /dev/null
        3365  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2872   3366   
@@ -0,0 +1 @@
        3367  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2873   3368   
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
 2874   3369   
new file mode 100644
 2875   3370   
index 0000000..d1148d0
 2876         -
-- /dev/null
        3371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2877   3372   
@@ -0,0 +1,3 @@
        3373  +
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
        3374  +
Host:example.amazonaws.com
        3375  +
 2878   3376   
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
 2879   3377   
new file mode 100644
 2880   3378   
index 0000000..1a77103
 2881         -
-- /dev/null
        3379  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2882   3380   
@@ -0,0 +1,4 @@
        3381  +
AWS4-HMAC-SHA256
        3382  +
20150830T123600Z
        3383  +
20150830/us-east-1/service/aws4_request
        3384  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2883   3385   
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
 2884   3386   
similarity index 100%
 2885   3387   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2886   3388   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2887   3389   
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
 2888   3390   
new file mode 100644
 2889   3391   
index 0000000..0468d80
 2890         -
-- /dev/null
        3392  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2891   3393   
@@ -0,0 +1,12 @@
        3394  +
{
        3395  +
    "credentials": {
        3396  +
        "access_key_id": "AKIDEXAMPLE",
        3397  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3398  +
    },
        3399  +
    "expiration_in_seconds": 3600,
        3400  +
    "normalize": true,
        3401  +
    "region": "us-east-1",
        3402  +
    "service": "service",
        3403  +
    "sign_body": false,
        3404  +
    "timestamp": "2015-08-30T12:36:00Z"
        3405  +
}
              \
 No newline at end of file
 2892   3406   
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
 2893   3407   
similarity index 100%
 2894   3408   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2895   3409   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2896   3410   
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
 2897   3411   
new file mode 100644
 2898   3412   
index 0000000..629487f
 2899         -
-- /dev/null
        3413  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2900   3414   
@@ -0,0 +1 @@
        3415  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2901   3416   
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
 2902   3417   
new file mode 100644
 2903   3418   
index 0000000..0d99b1c
 2904         -
-- /dev/null
        3419  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2905   3420   
@@ -0,0 +1,5 @@
        3421  +
POST / HTTP/1.1
        3422  +
Host:example.amazonaws.com
        3423  +
X-Amz-Date:20150830T123600Z
        3424  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3425  +
 2906   3426   
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
 2907   3427   
similarity index 100%
 2908   3428   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 2909   3429   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 2910   3430   
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
 2911   3431   
new file mode 100644
 2912   3432   
index 0000000..d3341e7
 2913         -
-- /dev/null
        3433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 2914   3434   
@@ -0,0 +1,7 @@
        3435  +
POST
        3436  +
/
        3437  +
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
        3438  +
host:example.amazonaws.com
        3439  +
        3440  +
host
        3441  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2915   3442   
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
 2916   3443   
new file mode 100644
 2917   3444   
index 0000000..79f7e0d
 2918         -
-- /dev/null
        3445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 2919   3446   
@@ -0,0 +1 @@
        3447  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2920   3448   
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
 2921   3449   
new file mode 100644
 2922   3450   
index 0000000..94f1b21
 2923         -
-- /dev/null
        3451  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 2924   3452   
@@ -0,0 +1,3 @@
        3453  +
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
        3454  +
Host:example.amazonaws.com
        3455  +
 2925   3456   
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
 2926   3457   
new file mode 100644
 2927   3458   
index 0000000..e8f335b
 2928         -
-- /dev/null
        3459  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 2929   3460   
@@ -0,0 +1,4 @@
        3461  +
AWS4-HMAC-SHA256
        3462  +
20150830T123600Z
        3463  +
20150830/us-east-1/service/aws4_request
        3464  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2930   3465   
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
 2931   3466   
similarity index 100%
 2932   3467   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 2933   3468   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 2934   3469   
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
 2935   3470   
similarity index 99%
 2936   3471   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 2937   3472   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2938   3473   
index fc4bce6..0db1df1 100644
 2939         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
        3474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2940   3475   
@@ -1,12 +1,12 @@
 2941   3476   
{
 2942   3477   
    "credentials": {
 2943   3478   
        "access_key_id": "AKIDEXAMPLE",
 2944   3479   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 2945   3480   
    },
 2946   3481   
    "expiration_in_seconds": 3600,
 2947   3482   
    "normalize": true,
 2948   3483   
    "region": "us-east-1",
 2949   3484   
    "service": "service",
 2950   3485   
    "sign_body": true,
 2951   3486   
    "timestamp": "2015-08-30T12:36:00Z"
 2952         -
}
        3487  +
}
              \
 No newline at end of file
 2953   3488   
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
 2954   3489   
new file mode 100644
 2955   3490   
index 0000000..c218fdf
 2956         -
-- /dev/null
        3491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 2957   3492   
@@ -0,0 +1,11 @@
        3493  +
POST
        3494  +
/
        3495  +
        3496  +
content-length:13
        3497  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3498  +
host:example.amazonaws.com
        3499  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3500  +
x-amz-date:20150830T123600Z
        3501  +
        3502  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3503  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2958   3504   
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
 2959   3505   
new file mode 100644
 2960   3506   
index 0000000..836aa8b
 2961         -
-- /dev/null
        3507  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 2962   3508   
@@ -0,0 +1 @@
        3509  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 2963   3510   
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
 2964   3511   
new file mode 100644
 2965   3512   
index 0000000..9262d53
 2966         -
-- /dev/null
        3513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 2967   3514   
@@ -0,0 +1,9 @@
        3515  +
POST / HTTP/1.1
        3516  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3517  +
Host:example.amazonaws.com
        3518  +
Content-Length:13
        3519  +
X-Amz-Date:20150830T123600Z
        3520  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3521  +
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
        3522  +
        3523  +
Param1=value1
              \
 No newline at end of file
 2968   3524   
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
 2969   3525   
new file mode 100644
 2970   3526   
index 0000000..ddbdccc
 2971         -
-- /dev/null
        3527  +
++ 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
 2972   3528   
@@ -0,0 +1,4 @@
        3529  +
AWS4-HMAC-SHA256
        3530  +
20150830T123600Z
        3531  +
20150830/us-east-1/service/aws4_request
        3532  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 2973   3533   
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
 2974   3534   
new file mode 100644
 2975   3535   
index 0000000..596a579
 2976         -
-- /dev/null
        3536  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 2977   3537   
@@ -0,0 +1,9 @@
        3538  +
POST
        3539  +
/
        3540  +
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
        3541  +
content-length:13
        3542  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3543  +
host:example.amazonaws.com
        3544  +
        3545  +
content-length;content-type;host
        3546  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2978   3547   
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
 2979   3548   
new file mode 100644
 2980   3549   
index 0000000..bc85cd8
 2981         -
-- /dev/null
        3550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 2982   3551   
@@ -0,0 +1 @@
        3552  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 2983   3553   
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
 2984   3554   
new file mode 100644
 2985   3555   
index 0000000..16b59e5
 2986         -
-- /dev/null
        3556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 2987   3557   
@@ -0,0 +1,6 @@
        3558  +
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
        3559  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3560  +
Host:example.amazonaws.com
        3561  +
Content-Length:13
        3562  +
        3563  +
Param1=value1
              \
 No newline at end of file
 2988   3564   
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
 2989   3565   
new file mode 100644
 2990   3566   
index 0000000..50074af
 2991         -
-- /dev/null
        3567  +
++ 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
 2992   3568   
@@ -0,0 +1,4 @@
        3569  +
AWS4-HMAC-SHA256
        3570  +
20150830T123600Z
        3571  +
20150830/us-east-1/service/aws4_request
        3572  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 2993   3573   
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
 2994   3574   
similarity index 89%
 2995   3575   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 2996   3576   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2997   3577   
index b711c25..8289eaa 100644
 2998         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
        3578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2999   3579   
@@ -1,6 +1,6 @@
 3000   3580   
POST / HTTP/1.1
 3001   3581   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 3002   3582   
Host:example.amazonaws.com
 3003   3583   
Content-Length:13
 3004   3584   
 3005         -
Param1=value1
        3585  +
Param1=value1
              \
 No newline at end of file
 3006   3586   
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
 3007   3587   
similarity index 99%
 3008   3588   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 3009   3589   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3010   3590   
index fc4bce6..0db1df1 100644
 3011         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
        3591  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3012   3592   
@@ -1,12 +1,12 @@
 3013   3593   
{
 3014   3594   
    "credentials": {
 3015   3595   
        "access_key_id": "AKIDEXAMPLE",
 3016   3596   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 3017   3597   
    },
 3018   3598   
    "expiration_in_seconds": 3600,
 3019   3599   
    "normalize": true,
 3020   3600   
    "region": "us-east-1",
 3021   3601   
    "service": "service",
 3022   3602   
    "sign_body": true,
 3023   3603   
    "timestamp": "2015-08-30T12:36:00Z"
 3024         -
}
        3604  +
}
              \
 No newline at end of file
 3025   3605   
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
 3026   3606   
new file mode 100644
 3027   3607   
index 0000000..4d116a5
 3028         -
-- /dev/null
        3608  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 3029   3609   
@@ -0,0 +1,11 @@
        3610  +
POST
        3611  +
/
        3612  +
        3613  +
content-length:13
        3614  +
content-type:application/x-www-form-urlencoded
        3615  +
host:example.amazonaws.com
        3616  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3617  +
x-amz-date:20150830T123600Z
        3618  +
        3619  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3620  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3030   3621   
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
 3031   3622   
new file mode 100644
 3032   3623   
index 0000000..0d2ac37
 3033         -
-- /dev/null
        3624  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 3034   3625   
@@ -0,0 +1 @@
        3626  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 3035   3627   
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
 3036   3628   
new file mode 100644
 3037   3629   
index 0000000..bd5e49c
 3038         -
-- /dev/null
        3630  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 3039   3631   
@@ -0,0 +1,9 @@
        3632  +
POST / HTTP/1.1
        3633  +
Content-Type:application/x-www-form-urlencoded
        3634  +
Host:example.amazonaws.com
        3635  +
Content-Length:13
        3636  +
X-Amz-Date:20150830T123600Z
        3637  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3638  +
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
        3639  +
        3640  +
Param1=value1
              \
 No newline at end of file
 3040   3641   
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
 3041   3642   
new file mode 100644
 3042   3643   
index 0000000..f1c599c
 3043         -
-- /dev/null
        3644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 3044   3645   
@@ -0,0 +1,4 @@
        3646  +
AWS4-HMAC-SHA256
        3647  +
20150830T123600Z
        3648  +
20150830/us-east-1/service/aws4_request
        3649  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 3045   3650   
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
 3046   3651   
new file mode 100644
 3047   3652   
index 0000000..1fc1bb7
 3048         -
-- /dev/null
        3653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 3049   3654   
@@ -0,0 +1,9 @@
        3655  +
POST
        3656  +
/
        3657  +
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
        3658  +
content-length:13
        3659  +
content-type:application/x-www-form-urlencoded
        3660  +
host:example.amazonaws.com
        3661  +
        3662  +
content-length;content-type;host
        3663  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3050   3664   
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
 3051   3665   
new file mode 100644
 3052   3666   
index 0000000..98c91b3
 3053         -
-- /dev/null
        3667  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 3054   3668   
@@ -0,0 +1 @@
        3669  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 3055   3670   
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
 3056   3671   
new file mode 100644
 3057   3672   
index 0000000..055cd7a
 3058         -
-- /dev/null
        3673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 3059   3674   
@@ -0,0 +1,6 @@
        3675  +
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
        3676  +
Content-Type:application/x-www-form-urlencoded
        3677  +
Host:example.amazonaws.com
        3678  +
Content-Length:13
        3679  +
        3680  +
Param1=value1
              \
 No newline at end of file
 3060   3681   
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
 3061   3682   
new file mode 100644
 3062   3683   
index 0000000..db7fc27
 3063         -
-- /dev/null
        3684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 3064   3685   
@@ -0,0 +1,4 @@
        3686  +
AWS4-HMAC-SHA256
        3687  +
20150830T123600Z
        3688  +
20150830/us-east-1/service/aws4_request
        3689  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 3065   3690   
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
 3066   3691   
similarity index 88%
 3067   3692   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 3068   3693   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3069   3694   
index 0091102..760b2d3 100644
 3070         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
        3695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3071   3696   
@@ -1,6 +1,6 @@
 3072   3697   
POST / HTTP/1.1
 3073   3698   
Content-Type:application/x-www-form-urlencoded
 3074   3699   
Host:example.amazonaws.com
 3075   3700   
Content-Length:13
 3076   3701   
 3077         -
Param1=value1
        3702  +
Param1=value1
              \
 No newline at end of file
 3078   3703   
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
 3079   3704   
new file mode 100644
 3080   3705   
index 0000000..0468d80
 3081         -
-- /dev/null
        3706  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 3082   3707   
@@ -0,0 +1,12 @@
        3708  +
{
        3709  +
    "credentials": {
        3710  +
        "access_key_id": "AKIDEXAMPLE",
        3711  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3712  +
    },
        3713  +
    "expiration_in_seconds": 3600,
        3714  +
    "normalize": true,
        3715  +
    "region": "us-east-1",
        3716  +
    "service": "service",
        3717  +
    "sign_body": false,
        3718  +
    "timestamp": "2015-08-30T12:36:00Z"
        3719  +
}
              \
 No newline at end of file
 3083   3720   
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
 3084   3721   
similarity index 99%
 3085   3722   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 3086   3723   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3087   3724   
index ccb5f43..1bc448e 100644
 3088         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
        3725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3089   3726   
@@ -1,10 +1,10 @@
 3090   3727   
GET
 3091   3728   
/
 3092   3729   
 3093   3730   
host:example.amazonaws.com
 3094   3731   
my-header1:value2,value2,value1
 3095   3732   
x-amz-date:20150830T123600Z
 3096   3733   
x-amz-region-set:us-east-1
 3097   3734   
 3098   3735   
host;my-header1;x-amz-date;x-amz-region-set
 3099         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3736  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3100   3737   
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
 3101   3738   
new file mode 100644
 3102   3739   
index 0000000..489c182
 3103         -
-- /dev/null
        3740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 3104   3741   
@@ -0,0 +1 @@
        3742  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 3105   3743   
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
 3106   3744   
new file mode 100644
 3107   3745   
index 0000000..e1b8dbf
 3108         -
-- /dev/null
        3746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 3109   3747   
@@ -0,0 +1,9 @@
        3748  +
GET / HTTP/1.1
        3749  +
Host:example.amazonaws.com
        3750  +
My-Header1:value2
        3751  +
My-Header1:value2
        3752  +
My-Header1:value1
        3753  +
X-Amz-Date:20150830T123600Z
        3754  +
X-Amz-Region-Set:us-east-1
        3755  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3756  +
 3110   3757   
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
 3111   3758   
similarity index 99%
 3112   3759   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 3113   3760   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3114   3761   
index 8783461..bfc4619 100644
 3115         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
        3762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3116   3763   
@@ -1,4 +1,4 @@
 3117   3764   
AWS4-ECDSA-P256-SHA256
 3118   3765   
20150830T123600Z
 3119   3766   
20150830/service/aws4_request
 3120         -
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
        3767  +
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
              \
 No newline at end of file
 3121   3768   
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
 3122   3769   
new file mode 100644
 3123   3770   
index 0000000..379dcb2
 3124         -
-- /dev/null
        3771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3125   3772   
@@ -0,0 +1,4 @@
        3773  +
{
        3774  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3775  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3776  +
}
 3126   3777   
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
 3127   3778   
similarity index 99%
 3128   3779   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3129   3780   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3130   3781   
index 9561297..c05c3f5 100644
 3131         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
        3782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3132   3783   
@@ -1,8 +1,8 @@
 3133   3784   
GET
 3134   3785   
/
 3135   3786   
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
 3136   3787   
host:example.amazonaws.com
 3137   3788   
my-header1:value2,value2,value1
 3138   3789   
 3139   3790   
host;my-header1
 3140         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3791  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3141   3792   
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
 3142   3793   
new file mode 100644
 3143   3794   
index 0000000..de9a4c3
 3144         -
-- /dev/null
        3795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3145   3796   
@@ -0,0 +1 @@
        3797  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3146   3798   
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
 3147   3799   
new file mode 100644
 3148   3800   
index 0000000..6c6b8c4
 3149         -
-- /dev/null
        3801  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3150   3802   
@@ -0,0 +1,6 @@
        3803  +
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
        3804  +
Host:example.amazonaws.com
        3805  +
My-Header1:value2
        3806  +
My-Header1:value2
        3807  +
My-Header1:value1
        3808  +
 3151   3809   
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
 3152   3810   
similarity index 99%
 3153   3811   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3154   3812   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3155   3813   
index 3140f6f..4eef106 100644
 3156         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
        3814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3157   3815   
@@ -1,4 +1,4 @@
 3158   3816   
AWS4-ECDSA-P256-SHA256
 3159   3817   
20150830T123600Z
 3160   3818   
20150830/service/aws4_request
 3161         -
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
        3819  +
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
              \
 No newline at end of file
 3162   3820   
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
 3163   3821   
similarity index 78%
 3164   3822   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3165   3823   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3166   3824   
index 08a0364..40455ce 100644
 3167         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3168   3826   
@@ -1,6 +1,5 @@
 3169   3827   
GET / HTTP/1.1
 3170   3828   
Host:example.amazonaws.com
 3171   3829   
My-Header1:value2
 3172   3830   
My-Header1:value2
 3173   3831   
My-Header1:value1
 3174         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3175   3832   
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
 3176   3833   
new file mode 100644
 3177   3834   
index 0000000..0468d80
 3178         -
-- /dev/null
        3835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3179   3836   
@@ -0,0 +1,12 @@
        3837  +
{
        3838  +
    "credentials": {
        3839  +
        "access_key_id": "AKIDEXAMPLE",
        3840  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3841  +
    },
        3842  +
    "expiration_in_seconds": 3600,
        3843  +
    "normalize": true,
        3844  +
    "region": "us-east-1",
        3845  +
    "service": "service",
        3846  +
    "sign_body": false,
        3847  +
    "timestamp": "2015-08-30T12:36:00Z"
        3848  +
}
              \
 No newline at end of file
 3180   3849   
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
 3181   3850   
new file mode 100644
 3182   3851   
index 0000000..69526cd
 3183         -
-- /dev/null
        3852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3184   3853   
@@ -0,0 +1,10 @@
        3854  +
GET
        3855  +
/
        3856  +
        3857  +
host:example.amazonaws.com
        3858  +
my-header1:value1 value2 value3
        3859  +
x-amz-date:20150830T123600Z
        3860  +
x-amz-region-set:us-east-1
        3861  +
        3862  +
host;my-header1;x-amz-date;x-amz-region-set
        3863  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3185   3864   
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
 3186   3865   
new file mode 100644
 3187   3866   
index 0000000..d51b4f3
 3188         -
-- /dev/null
        3867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3189   3868   
@@ -0,0 +1 @@
        3869  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3190   3870   
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
 3191   3871   
new file mode 100644
 3192   3872   
index 0000000..8131420
 3193         -
-- /dev/null
        3873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3194   3874   
@@ -0,0 +1,9 @@
        3875  +
GET / HTTP/1.1
        3876  +
Host:example.amazonaws.com
        3877  +
My-Header1:value1
        3878  +
  value2
        3879  +
     value3
        3880  +
X-Amz-Date:20150830T123600Z
        3881  +
X-Amz-Region-Set:us-east-1
        3882  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3883  +
 3195   3884   
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
 3196   3885   
new file mode 100644
 3197   3886   
index 0000000..e4d99fa
 3198         -
-- /dev/null
        3887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3199   3888   
@@ -0,0 +1,4 @@
        3889  +
AWS4-ECDSA-P256-SHA256
        3890  +
20150830T123600Z
        3891  +
20150830/service/aws4_request
        3892  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3200   3893   
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
 3201   3894   
new file mode 100644
 3202   3895   
index 0000000..379dcb2
 3203         -
-- /dev/null
        3896  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3204   3897   
@@ -0,0 +1,4 @@
        3898  +
{
        3899  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3900  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3901  +
}
 3205   3902   
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
 3206   3903   
new file mode 100644
 3207   3904   
index 0000000..3c4d52f
 3208         -
-- /dev/null
        3905  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3209   3906   
@@ -0,0 +1,8 @@
        3907  +
GET
        3908  +
/
        3909  +
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
        3910  +
host:example.amazonaws.com
        3911  +
my-header1:value1 value2 value3
        3912  +
        3913  +
host;my-header1
        3914  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3210   3915   
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
 3211   3916   
new file mode 100644
 3212   3917   
index 0000000..4e63f9a
 3213         -
-- /dev/null
        3918  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3214   3919   
@@ -0,0 +1 @@
        3920  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3215   3921   
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
 3216   3922   
new file mode 100644
 3217   3923   
index 0000000..adf1f09
 3218         -
-- /dev/null
        3924  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3219   3925   
@@ -0,0 +1,6 @@
        3926  +
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
        3927  +
Host:example.amazonaws.com
        3928  +
My-Header1:value1
        3929  +
  value2
        3930  +
     value3
        3931  +
 3220   3932   
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
 3221   3933   
new file mode 100644
 3222   3934   
index 0000000..e085407
 3223         -
-- /dev/null
        3935  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3224   3936   
@@ -0,0 +1,4 @@
        3937  +
AWS4-ECDSA-P256-SHA256
        3938  +
20150830T123600Z
        3939  +
20150830/service/aws4_request
        3940  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3225   3941   
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
 3226   3942   
new file mode 100644
 3227   3943   
index 0000000..b5026cd
 3228         -
-- /dev/null
        3944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3229   3945   
@@ -0,0 +1,5 @@
        3946  +
GET / HTTP/1.1
        3947  +
Host:example.amazonaws.com
        3948  +
My-Header1:value1
        3949  +
  value2
        3950  +
     value3
 3230   3951   
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
 3231   3952   
new file mode 100644
 3232   3953   
index 0000000..0468d80
 3233         -
-- /dev/null
        3954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3234   3955   
@@ -0,0 +1,12 @@
        3956  +
{
        3957  +
    "credentials": {
        3958  +
        "access_key_id": "AKIDEXAMPLE",
        3959  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3960  +
    },
        3961  +
    "expiration_in_seconds": 3600,
        3962  +
    "normalize": true,
        3963  +
    "region": "us-east-1",
        3964  +
    "service": "service",
        3965  +
    "sign_body": false,
        3966  +
    "timestamp": "2015-08-30T12:36:00Z"
        3967  +
}
              \
 No newline at end of file
 3235   3968   
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
 3236   3969   
similarity index 99%
 3237   3970   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3238   3971   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3239   3972   
index 9375193..533afdb 100644
 3240         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
        3973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3241   3974   
@@ -1,10 +1,10 @@
 3242   3975   
GET
 3243   3976   
/
 3244   3977   
 3245   3978   
host:example.amazonaws.com
 3246   3979   
my-header1:value4,value1,value3,value2
 3247   3980   
x-amz-date:20150830T123600Z
 3248   3981   
x-amz-region-set:us-east-1
 3249   3982   
 3250   3983   
host;my-header1;x-amz-date;x-amz-region-set
 3251         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3984  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3252   3985   
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
 3253   3986   
new file mode 100644
 3254   3987   
index 0000000..057b426
 3255         -
-- /dev/null
        3988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3256   3989   
@@ -0,0 +1 @@
        3990  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3257   3991   
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
 3258   3992   
new file mode 100644
 3259   3993   
index 0000000..4e4ccf0
 3260         -
-- /dev/null
        3994  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3261   3995   
@@ -0,0 +1,10 @@
        3996  +
GET / HTTP/1.1
        3997  +
Host:example.amazonaws.com
        3998  +
My-Header1:value4
        3999  +
My-Header1:value1
        4000  +
My-Header1:value3
        4001  +
My-Header1:value2
        4002  +
X-Amz-Date:20150830T123600Z
        4003  +
X-Amz-Region-Set:us-east-1
        4004  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        4005  +
 3262   4006   
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
 3263   4007   
similarity index 99%
 3264   4008   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3265   4009   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3266   4010   
index 6400baf..e68c952 100644
 3267         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
        4011  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3268   4012   
@@ -1,4 +1,4 @@
 3269   4013   
AWS4-ECDSA-P256-SHA256
 3270   4014   
20150830T123600Z
 3271   4015   
20150830/service/aws4_request
 3272         -
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
        4016  +
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
              \
 No newline at end of file
 3273   4017   
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
 3274   4018   
new file mode 100644
 3275   4019   
index 0000000..379dcb2
 3276         -
-- /dev/null
        4020  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3277   4021   
@@ -0,0 +1,4 @@
        4022  +
{
        4023  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4024  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4025  +
}
 3278   4026   
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
 3279   4027   
similarity index 99%
 3280   4028   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3281   4029   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3282   4030   
index ecf494a..68450fe 100644
 3283         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
        4031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3284   4032   
@@ -1,8 +1,8 @@
 3285   4033   
GET
 3286   4034   
/
 3287   4035   
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
 3288   4036   
host:example.amazonaws.com
 3289   4037   
my-header1:value4,value1,value3,value2
 3290   4038   
 3291   4039   
host;my-header1
 3292         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4040  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3293   4041   
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
 3294   4042   
new file mode 100644
 3295   4043   
index 0000000..9df2eb3
 3296         -
-- /dev/null
        4044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3297   4045   
@@ -0,0 +1 @@
        4046  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3298   4047   
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
 3299   4048   
new file mode 100644
 3300   4049   
index 0000000..62f8cb7
 3301         -
-- /dev/null
        4050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3302   4051   
@@ -0,0 +1,7 @@
        4052  +
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
        4053  +
Host:example.amazonaws.com
        4054  +
My-Header1:value4
        4055  +
My-Header1:value1
        4056  +
My-Header1:value3
        4057  +
My-Header1:value2
        4058  +
 3303   4059   
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
 3304   4060   
similarity index 99%
 3305   4061   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3306   4062   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3307   4063   
index b584179..2bcf7b1 100644
 3308         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
        4064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3309   4065   
@@ -1,4 +1,4 @@
 3310   4066   
AWS4-ECDSA-P256-SHA256
 3311   4067   
20150830T123600Z
 3312   4068   
20150830/service/aws4_request
 3313         -
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
        4069  +
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
              \
 No newline at end of file
 3314   4070   
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
 3315   4071   
similarity index 80%
 3316   4072   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3317   4073   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3318   4074   
index f7bd9e6..2c6f49d 100644
 3319         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        4075  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3320   4076   
@@ -1,7 +1,6 @@
 3321   4077   
GET / HTTP/1.1
 3322   4078   
Host:example.amazonaws.com
 3323   4079   
My-Header1:value4
 3324   4080   
My-Header1:value1
 3325   4081   
My-Header1:value3
 3326   4082   
My-Header1:value2
 3327         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3328   4083   
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
 3329   4084   
new file mode 100644
 3330   4085   
index 0000000..0468d80
 3331         -
-- /dev/null
        4086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3332   4087   
@@ -0,0 +1,12 @@
        4088  +
{
        4089  +
    "credentials": {
        4090  +
        "access_key_id": "AKIDEXAMPLE",
        4091  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4092  +
    },
        4093  +
    "expiration_in_seconds": 3600,
        4094  +
    "normalize": true,
        4095  +
    "region": "us-east-1",
        4096  +
    "service": "service",
        4097  +
    "sign_body": false,
        4098  +
    "timestamp": "2015-08-30T12:36:00Z"
        4099  +
}
              \
 No newline at end of file
 3333   4100   
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
 3334   4101   
similarity index 99%
 3335   4102   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3336   4103   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3337   4104   
index e91e952..94b6be5 100644
 3338         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
        4105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3339   4106   
@@ -1,11 +1,11 @@
 3340   4107   
GET
 3341   4108   
/
 3342   4109   
 3343   4110   
host:example.amazonaws.com
 3344   4111   
my-header1:value1
 3345   4112   
my-header2:"a b c"
 3346   4113   
x-amz-date:20150830T123600Z
 3347   4114   
x-amz-region-set:us-east-1
 3348   4115   
 3349   4116   
host;my-header1;my-header2;x-amz-date;x-amz-region-set
 3350         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4117  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3351   4118   
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
 3352   4119   
new file mode 100644
 3353   4120   
index 0000000..bf8c3cb
 3354         -
-- /dev/null
        4121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3355   4122   
@@ -0,0 +1 @@
        4123  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3356   4124   
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
 3357   4125   
new file mode 100644
 3358   4126   
index 0000000..f7f054d
 3359         -
-- /dev/null
        4127  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3360   4128   
@@ -0,0 +1,8 @@
        4129  +
GET / HTTP/1.1
        4130  +
Host:example.amazonaws.com
        4131  +
My-Header1: value1
        4132  +
My-Header2: "a   b   c"
        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;my-header1;my-header2;x-amz-date;x-amz-region-set, Signature=3046022100ce72c874a80cea45e3c5b7cbe76178f8577870e1f97ee1730f57cff45c3d398b022100e4ea7b870335abab5ca57fa740d20b3c5aba2739cf96dd7fa671fc11cf6c3341
        4136  +
 3361   4137   
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
 3362   4138   
similarity index 99%
 3363   4139   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3364   4140   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3365   4141   
index 0e407d8..a2c9c05 100644
 3366         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
        4142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3367   4143   
@@ -1,4 +1,4 @@
 3368   4144   
AWS4-ECDSA-P256-SHA256
 3369   4145   
20150830T123600Z
 3370   4146   
20150830/service/aws4_request
 3371         -
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
        4147  +
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
              \
 No newline at end of file
 3372   4148   
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
 3373   4149   
new file mode 100644
 3374   4150   
index 0000000..379dcb2
 3375         -
-- /dev/null
        4151  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3376   4152   
@@ -0,0 +1,4 @@
        4153  +
{
        4154  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4155  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4156  +
}
 3377   4157   
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
 3378   4158   
similarity index 99%
 3379   4159   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3380   4160   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3381   4161   
index 8a3b042..3a51150 100644
 3382         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
        4162  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3383   4163   
@@ -1,9 +1,9 @@
 3384   4164   
GET
 3385   4165   
/
 3386   4166   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host%3Bmy-header1%3Bmy-header2
 3387   4167   
host:example.amazonaws.com
 3388   4168   
my-header1:value1
 3389   4169   
my-header2:"a b c"
 3390   4170   
 3391   4171   
host;my-header1;my-header2
 3392         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4172  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3393   4173   
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
 3394   4174   
new file mode 100644
 3395   4175   
index 0000000..0033053
 3396         -
-- /dev/null
        4176  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3397   4177   
@@ -0,0 +1 @@
        4178  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3398   4179   
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
 3399   4180   
new file mode 100644
 3400   4181   
index 0000000..1537888
 3401         -
-- /dev/null
        4182  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3402   4183   
@@ -0,0 +1,5 @@
        4184  +
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
        4185  +
Host:example.amazonaws.com
        4186  +
My-Header1: value1
        4187  +
My-Header2: "a   b   c"
        4188  +
 3403   4189   
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
 3404   4190   
similarity index 99%
 3405   4191   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3406   4192   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3407   4193   
index 5eead25..633dc1f 100644
 3408         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
        4194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3409   4195   
@@ -1,4 +1,4 @@
 3410   4196   
AWS4-ECDSA-P256-SHA256
 3411   4197   
20150830T123600Z
 3412   4198   
20150830/service/aws4_request
 3413         -
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
        4199  +
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
              \
 No newline at end of file
 3414   4200   
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
 3415   4201   
similarity index 75%
 3416   4202   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3417   4203   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3418   4204   
index 901f36c..ad1ea98 100644
 3419         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3420   4206   
@@ -1,5 +1,4 @@
 3421   4207   
GET / HTTP/1.1
 3422   4208   
Host:example.amazonaws.com
 3423   4209   
My-Header1: value1
 3424   4210   
My-Header2: "a   b   c"
 3425         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3426   4211   
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
 3427   4212   
new file mode 100644
 3428   4213   
index 0000000..0468d80
 3429         -
-- /dev/null
        4214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3430   4215   
@@ -0,0 +1,12 @@
        4216  +
{
        4217  +
    "credentials": {
        4218  +
        "access_key_id": "AKIDEXAMPLE",
        4219  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4220  +
    },
        4221  +
    "expiration_in_seconds": 3600,
        4222  +
    "normalize": true,
        4223  +
    "region": "us-east-1",
        4224  +
    "service": "service",
        4225  +
    "sign_body": false,
        4226  +
    "timestamp": "2015-08-30T12:36:00Z"
        4227  +
}
              \
 No newline at end of file
 3431   4228   
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
 3432   4229   
similarity index 99%
 3433   4230   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3434   4231   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3435   4232   
index 47e7128..76db73d 100644
 3436         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
        4233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3437   4234   
@@ -1,9 +1,9 @@
 3438   4235   
GET
 3439   4236   
/
 3440   4237   
 3441   4238   
host:example.amazonaws.com
 3442   4239   
x-amz-date:20150830T123600Z
 3443   4240   
x-amz-region-set:us-east-1
 3444   4241   
 3445   4242   
host;x-amz-date;x-amz-region-set
 3446         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4243  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3447   4244   
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
 3448   4245   
new file mode 100644
 3449   4246   
index 0000000..cbd6ae2
 3450         -
-- /dev/null
        4247  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3451   4248   
@@ -0,0 +1 @@
        4249  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3452   4250   
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
 3453   4251   
new file mode 100644
 3454   4252   
index 0000000..a343fcf
 3455         -
-- /dev/null
        4253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3456   4254   
@@ -0,0 +1,6 @@
        4255  +
GET /example/.. HTTP/1.1
        4256  +
Host:example.amazonaws.com
        4257  +
X-Amz-Date:20150830T123600Z
        4258  +
X-Amz-Region-Set:us-east-1
        4259  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4260  +
 3457   4261   
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
 3458   4262   
similarity index 99%
 3459   4263   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3460   4264   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3461   4265   
index 95d7219..600f1d8 100644
 3462         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
        4266  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3463   4267   
@@ -1,4 +1,4 @@
 3464   4268   
AWS4-ECDSA-P256-SHA256
 3465   4269   
20150830T123600Z
 3466   4270   
20150830/service/aws4_request
 3467         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4271  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3468   4272   
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
 3469   4273   
new file mode 100644
 3470   4274   
index 0000000..379dcb2
 3471         -
-- /dev/null
        4275  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3472   4276   
@@ -0,0 +1,4 @@
        4277  +
{
        4278  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4279  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4280  +
}
 3473   4281   
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
 3474   4282   
similarity index 99%
 3475   4283   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3476   4284   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3477   4285   
index a34ea26..779c51c 100644
 3478         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
        4286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3479   4287   
@@ -1,7 +1,7 @@
 3480   4288   
GET
 3481   4289   
/
 3482   4290   
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
 3483   4291   
host:example.amazonaws.com
 3484   4292   
 3485   4293   
host
 3486         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4294  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3487   4295   
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
 3488   4296   
new file mode 100644
 3489   4297   
index 0000000..3cc88e6
 3490         -
-- /dev/null
        4298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3491   4299   
@@ -0,0 +1 @@
        4300  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3492   4301   
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
 3493   4302   
new file mode 100644
 3494   4303   
index 0000000..f68dde8
 3495         -
-- /dev/null
        4304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3496   4305   
@@ -0,0 +1,3 @@
        4306  +
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
        4307  +
Host:example.amazonaws.com
        4308  +
 3497   4309   
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
 3498   4310   
similarity index 99%
 3499   4311   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3500   4312   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3501   4313   
index 48f855c..6e29a7e 100644
 3502         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
        4314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3503   4315   
@@ -1,4 +1,4 @@
 3504   4316   
AWS4-ECDSA-P256-SHA256
 3505   4317   
20150830T123600Z
 3506   4318   
20150830/service/aws4_request
 3507         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4319  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3508   4320   
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
 3509   4321   
similarity index 65%
 3510   4322   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3511   4323   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3512   4324   
index 9d6d7ca..6aa9f99 100644
 3513         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4325  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3514   4326   
@@ -1,3 +1,2 @@
 3515   4327   
GET /example/.. HTTP/1.1
 3516   4328   
Host:example.amazonaws.com
 3517         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3518   4329   
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
 3519   4330   
new file mode 100644
 3520   4331   
index 0000000..0468d80
 3521         -
-- /dev/null
        4332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3522   4333   
@@ -0,0 +1,12 @@
        4334  +
{
        4335  +
    "credentials": {
        4336  +
        "access_key_id": "AKIDEXAMPLE",
        4337  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4338  +
    },
        4339  +
    "expiration_in_seconds": 3600,
        4340  +
    "normalize": true,
        4341  +
    "region": "us-east-1",
        4342  +
    "service": "service",
        4343  +
    "sign_body": false,
        4344  +
    "timestamp": "2015-08-30T12:36:00Z"
        4345  +
}
              \
 No newline at end of file
 3523   4346   
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
 3524   4347   
similarity index 99%
 3525   4348   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3526   4349   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3527   4350   
index 47e7128..76db73d 100644
 3528         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
        4351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3529   4352   
@@ -1,9 +1,9 @@
 3530   4353   
GET
 3531   4354   
/
 3532   4355   
 3533   4356   
host:example.amazonaws.com
 3534   4357   
x-amz-date:20150830T123600Z
 3535   4358   
x-amz-region-set:us-east-1
 3536   4359   
 3537   4360   
host;x-amz-date;x-amz-region-set
 3538         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4361  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3539   4362   
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
 3540   4363   
new file mode 100644
 3541   4364   
index 0000000..f7a7ebe
 3542         -
-- /dev/null
        4365  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3543   4366   
@@ -0,0 +1 @@
        4367  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3544   4368   
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
 3545   4369   
new file mode 100644
 3546   4370   
index 0000000..9d2c50d
 3547         -
-- /dev/null
        4371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3548   4372   
@@ -0,0 +1,6 @@
        4373  +
GET /example1/example2/../.. HTTP/1.1
        4374  +
Host:example.amazonaws.com
        4375  +
X-Amz-Date:20150830T123600Z
        4376  +
X-Amz-Region-Set:us-east-1
        4377  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4378  +
 3549   4379   
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
 3550   4380   
similarity index 99%
 3551   4381   
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
 3552   4382   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3553   4383   
index 95d7219..600f1d8 100644
 3554         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-string-to-sign.txt
        4384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3555   4385   
@@ -1,4 +1,4 @@
 3556   4386   
AWS4-ECDSA-P256-SHA256
 3557   4387   
20150830T123600Z
 3558   4388   
20150830/service/aws4_request
 3559         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4389  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3560   4390   
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
 3561   4391   
new file mode 100644
 3562   4392   
index 0000000..379dcb2
 3563         -
-- /dev/null
        4393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3564   4394   
@@ -0,0 +1,4 @@
        4395  +
{
        4396  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4397  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4398  +
}
 3565   4399   
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
 3566   4400   
similarity index 99%
 3567   4401   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3568   4402   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3569   4403   
index a34ea26..779c51c 100644
 3570         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
        4404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3571   4405   
@@ -1,7 +1,7 @@
 3572   4406   
GET
 3573   4407   
/
 3574   4408   
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
 3575   4409   
host:example.amazonaws.com
 3576   4410   
 3577   4411   
host
 3578         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4412  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3579   4413   
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
 3580   4414   
new file mode 100644
 3581   4415   
index 0000000..45ef286
 3582         -
-- /dev/null
        4416  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3583   4417   
@@ -0,0 +1 @@
        4418  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3584   4419   
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
 3585   4420   
new file mode 100644
 3586   4421   
index 0000000..0d16f66
 3587         -
-- /dev/null
        4422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3588   4423   
@@ -0,0 +1,3 @@
        4424  +
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
        4425  +
Host:example.amazonaws.com
        4426  +
 3589   4427   
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
 3590   4428   
similarity index 99%
 3591   4429   
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
 3592   4430   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3593   4431   
index 48f855c..6e29a7e 100644
 3594         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-string-to-sign.txt
        4432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3595   4433   
@@ -1,4 +1,4 @@
 3596   4434   
AWS4-ECDSA-P256-SHA256
 3597   4435   
20150830T123600Z
 3598   4436   
20150830/service/aws4_request
 3599         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4437  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3600   4438   
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
 3601   4439   
similarity index 70%
 3602   4440   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3603   4441   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3604   4442   
index cfd4e8b..a856c10 100644
 3605         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3606   4444   
@@ -1,3 +1,2 @@
 3607   4445   
GET /example1/example2/../.. HTTP/1.1
 3608   4446   
Host:example.amazonaws.com
 3609         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3610   4447   
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
 3611   4448   
new file mode 100644
 3612   4449   
index 0000000..7bee5c7
 3613         -
-- /dev/null
        4450  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3614   4451   
@@ -0,0 +1,12 @@
        4452  +
{
        4453  +
    "credentials": {
        4454  +
        "access_key_id": "AKIDEXAMPLE",
        4455  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4456  +
    },
        4457  +
    "expiration_in_seconds": 3600,
        4458  +
    "normalize": false,
        4459  +
    "region": "us-east-1",
        4460  +
    "service": "service",
        4461  +
    "sign_body": false,
        4462  +
    "timestamp": "2015-08-30T12:36:00Z"
        4463  +
}
              \
 No newline at end of file
 3615   4464   
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
 3616   4465   
similarity index 99%
 3617   4466   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3618   4467   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3619   4468   
index 5e1d1cf..e4e6d57 100644
 3620         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
        4469  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3621   4470   
@@ -1,9 +1,9 @@
 3622   4471   
GET
 3623   4472   
/example1/example2/../..
 3624   4473   
 3625   4474   
host:example.amazonaws.com
 3626   4475   
x-amz-date:20150830T123600Z
 3627   4476   
x-amz-region-set:us-east-1
 3628   4477   
 3629   4478   
host;x-amz-date;x-amz-region-set
 3630         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4479  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3631   4480   
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
 3632   4481   
new file mode 100644
 3633   4482   
index 0000000..2d1b47c
 3634         -
-- /dev/null
        4483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3635   4484   
@@ -0,0 +1 @@
        4485  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3636   4486   
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
 3637   4487   
new file mode 100644
 3638   4488   
index 0000000..7158179
 3639         -
-- /dev/null
        4489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3640   4490   
@@ -0,0 +1,6 @@
        4491  +
GET /example1/example2/../.. HTTP/1.1
        4492  +
Host:example.amazonaws.com
        4493  +
X-Amz-Date:20150830T123600Z
        4494  +
X-Amz-Region-Set:us-east-1
        4495  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4496  +
 3641   4497   
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
 3642   4498   
similarity index 99%
 3643   4499   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3644   4500   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3645   4501   
index 1cca6cf..db60c8e 100644
 3646         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
        4502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3647   4503   
@@ -1,4 +1,4 @@
 3648   4504   
AWS4-ECDSA-P256-SHA256
 3649   4505   
20150830T123600Z
 3650   4506   
20150830/service/aws4_request
 3651         -
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
        4507  +
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
              \
 No newline at end of file
 3652   4508   
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
 3653   4509   
new file mode 100644
 3654   4510   
index 0000000..379dcb2
 3655         -
-- /dev/null
        4511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3656   4512   
@@ -0,0 +1,4 @@
        4513  +
{
        4514  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4515  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4516  +
}
 3657   4517   
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
 3658   4518   
similarity index 99%
 3659   4519   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3660   4520   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3661   4521   
index 95dc104..0d963ba 100644
 3662         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
        4522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3663   4523   
@@ -1,7 +1,7 @@
 3664   4524   
GET
 3665   4525   
/example1/example2/../..
 3666   4526   
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
 3667   4527   
host:example.amazonaws.com
 3668   4528   
 3669   4529   
host
 3670         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4530  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3671   4531   
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
 3672   4532   
new file mode 100644
 3673   4533   
index 0000000..ae774e4
 3674         -
-- /dev/null
        4534  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3675   4535   
@@ -0,0 +1 @@
        4536  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3676   4537   
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
 3677   4538   
new file mode 100644
 3678   4539   
index 0000000..be6b86e
 3679         -
-- /dev/null
        4540  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3680   4541   
@@ -0,0 +1,3 @@
        4542  +
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
        4543  +
Host:example.amazonaws.com
        4544  +
 3681   4545   
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
 3682   4546   
similarity index 99%
 3683   4547   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3684   4548   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3685   4549   
index 50edce6..fcc70cd 100644
 3686         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
        4550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3687   4551   
@@ -1,4 +1,4 @@
 3688   4552   
AWS4-ECDSA-P256-SHA256
 3689   4553   
20150830T123600Z
 3690   4554   
20150830/service/aws4_request
 3691         -
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
        4555  +
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
              \
 No newline at end of file
 3692   4556   
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
 3693   4557   
new file mode 100644
 3694   4558   
index 0000000..a856c10
 3695         -
-- /dev/null
        4559  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3696   4560   
@@ -0,0 +1,2 @@
        4561  +
GET /example1/example2/../.. HTTP/1.1
        4562  +
Host:example.amazonaws.com
 3697   4563   
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
 3698   4564   
new file mode 100644
 3699   4565   
index 0000000..7bee5c7
 3700         -
-- /dev/null
        4566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3701   4567   
@@ -0,0 +1,12 @@
        4568  +
{
        4569  +
    "credentials": {
        4570  +
        "access_key_id": "AKIDEXAMPLE",
        4571  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4572  +
    },
        4573  +
    "expiration_in_seconds": 3600,
        4574  +
    "normalize": false,
        4575  +
    "region": "us-east-1",
        4576  +
    "service": "service",
        4577  +
    "sign_body": false,
        4578  +
    "timestamp": "2015-08-30T12:36:00Z"
        4579  +
}
              \
 No newline at end of file
 3702   4580   
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
 3703   4581   
similarity index 99%
 3704   4582   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3705   4583   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3706   4584   
index d6a0abe..22def1a 100644
 3707         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
        4585  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3708   4586   
@@ -1,9 +1,9 @@
 3709   4587   
GET
 3710   4588   
/example/..
 3711   4589   
 3712   4590   
host:example.amazonaws.com
 3713   4591   
x-amz-date:20150830T123600Z
 3714   4592   
x-amz-region-set:us-east-1
 3715   4593   
 3716   4594   
host;x-amz-date;x-amz-region-set
 3717         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4595  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3718   4596   
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
 3719   4597   
new file mode 100644
 3720   4598   
index 0000000..9251bad
 3721         -
-- /dev/null
        4599  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3722   4600   
@@ -0,0 +1 @@
        4601  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3723   4602   
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
 3724   4603   
new file mode 100644
 3725   4604   
index 0000000..f1bb60f
 3726         -
-- /dev/null
        4605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3727   4606   
@@ -0,0 +1,6 @@
        4607  +
GET /example/.. HTTP/1.1
        4608  +
Host:example.amazonaws.com
        4609  +
X-Amz-Date:20150830T123600Z
        4610  +
X-Amz-Region-Set:us-east-1
        4611  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4612  +
 3728   4613   
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
 3729   4614   
similarity index 99%
 3730   4615   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3731   4616   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3732   4617   
index 4a34e93..5673a20 100644
 3733         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
        4618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3734   4619   
@@ -1,4 +1,4 @@
 3735   4620   
AWS4-ECDSA-P256-SHA256
 3736   4621   
20150830T123600Z
 3737   4622   
20150830/service/aws4_request
 3738         -
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
        4623  +
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
              \
 No newline at end of file
 3739   4624   
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
 3740   4625   
new file mode 100644
 3741   4626   
index 0000000..379dcb2
 3742         -
-- /dev/null
        4627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3743   4628   
@@ -0,0 +1,4 @@
        4629  +
{
        4630  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4631  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4632  +
}
 3744   4633   
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
 3745   4634   
similarity index 99%
 3746   4635   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3747   4636   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3748   4637   
index b1d123e..a1c22e0 100644
 3749         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
        4638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3750   4639   
@@ -1,7 +1,7 @@
 3751   4640   
GET
 3752   4641   
/example/..
 3753   4642   
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
 3754   4643   
host:example.amazonaws.com
 3755   4644   
 3756   4645   
host
 3757         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4646  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3758   4647   
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
 3759   4648   
new file mode 100644
 3760   4649   
index 0000000..9f0f686
 3761         -
-- /dev/null
        4650  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3762   4651   
@@ -0,0 +1 @@
        4652  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3763   4653   
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
 3764   4654   
new file mode 100644
 3765   4655   
index 0000000..d1d451a
 3766         -
-- /dev/null
        4656  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3767   4657   
@@ -0,0 +1,3 @@
        4658  +
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
        4659  +
Host:example.amazonaws.com
        4660  +
 3768   4661   
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
 3769   4662   
similarity index 99%
 3770   4663   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3771   4664   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3772   4665   
index a17f5ab..81b41e8 100644
 3773         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
        4666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3774   4667   
@@ -1,4 +1,4 @@
 3775   4668   
AWS4-ECDSA-P256-SHA256
 3776   4669   
20150830T123600Z
 3777   4670   
20150830/service/aws4_request
 3778         -
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
        4671  +
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
              \
 No newline at end of file
 3779   4672   
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
 3780   4673   
new file mode 100644
 3781   4674   
index 0000000..6aa9f99
 3782         -
-- /dev/null
        4675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3783   4676   
@@ -0,0 +1,2 @@
        4677  +
GET /example/.. HTTP/1.1
        4678  +
Host:example.amazonaws.com
 3784   4679   
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
 3785   4680   
new file mode 100644
 3786   4681   
index 0000000..0468d80
 3787         -
-- /dev/null
        4682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3788   4683   
@@ -0,0 +1,12 @@
        4684  +
{
        4685  +
    "credentials": {
        4686  +
        "access_key_id": "AKIDEXAMPLE",
        4687  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4688  +
    },
        4689  +
    "expiration_in_seconds": 3600,
        4690  +
    "normalize": true,
        4691  +
    "region": "us-east-1",
        4692  +
    "service": "service",
        4693  +
    "sign_body": false,
        4694  +
    "timestamp": "2015-08-30T12:36:00Z"
        4695  +
}
              \
 No newline at end of file
 3789   4696   
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
 3790   4697   
similarity index 99%
 3791   4698   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3792   4699   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3793   4700   
index 47e7128..76db73d 100644
 3794         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
        4701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3795   4702   
@@ -1,9 +1,9 @@
 3796   4703   
GET
 3797   4704   
/
 3798   4705   
 3799   4706   
host:example.amazonaws.com
 3800   4707   
x-amz-date:20150830T123600Z
 3801   4708   
x-amz-region-set:us-east-1
 3802   4709   
 3803   4710   
host;x-amz-date;x-amz-region-set
 3804         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4711  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3805   4712   
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
 3806   4713   
new file mode 100644
 3807   4714   
index 0000000..ca6e84e
 3808         -
-- /dev/null
        4715  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3809   4716   
@@ -0,0 +1 @@
        4717  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3810   4718   
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
 3811   4719   
new file mode 100644
 3812   4720   
index 0000000..a7c764c
 3813         -
-- /dev/null
        4721  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3814   4722   
@@ -0,0 +1,6 @@
        4723  +
GET /./ HTTP/1.1
        4724  +
Host:example.amazonaws.com
        4725  +
X-Amz-Date:20150830T123600Z
        4726  +
X-Amz-Region-Set:us-east-1
        4727  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4728  +
 3815   4729   
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
 3816   4730   
similarity index 99%
 3817   4731   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3818   4732   
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
 3819   4733   
index 95d7219..600f1d8 100644
 3820         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
        4734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-string-to-sign.txt
 3821   4735   
@@ -1,4 +1,4 @@
 3822   4736   
AWS4-ECDSA-P256-SHA256
 3823   4737   
20150830T123600Z
 3824   4738   
20150830/service/aws4_request
 3825         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4739  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3826   4740   
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
 3827   4741   
new file mode 100644
 3828   4742   
index 0000000..379dcb2
 3829         -
-- /dev/null
        4743  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3830   4744   
@@ -0,0 +1,4 @@
        4745  +
{
        4746  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4747  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4748  +
}
 3831   4749   
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
 3832   4750   
similarity index 99%
 3833   4751   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3834   4752   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3835   4753   
index a34ea26..779c51c 100644
 3836         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
        4754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3837   4755   
@@ -1,7 +1,7 @@
 3838   4756   
GET
 3839   4757   
/
 3840   4758   
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
 3841   4759   
host:example.amazonaws.com
 3842   4760   
 3843   4761   
host
 3844         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4762  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3845   4763   
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
 3846   4764   
new file mode 100644
 3847   4765   
index 0000000..4b6ed09
 3848         -
-- /dev/null
        4766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3849   4767   
@@ -0,0 +1 @@
        4768  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3850   4769   
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
 3851   4770   
new file mode 100644
 3852   4771   
index 0000000..d6c7176
 3853         -
-- /dev/null
        4772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3854   4773   
@@ -0,0 +1,3 @@
        4774  +
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
        4775  +
Host:example.amazonaws.com
        4776  +
 3855   4777   
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
 3856   4778   
similarity index 99%
 3857   4779   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3858   4780   
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
 3859   4781   
index 48f855c..6e29a7e 100644
 3860         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
        4782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-string-to-sign.txt
 3861   4783   
@@ -1,4 +1,4 @@
 3862   4784   
AWS4-ECDSA-P256-SHA256
 3863   4785   
20150830T123600Z
 3864   4786   
20150830/service/aws4_request
 3865         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4787  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3866   4788   
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
 3867   4789   
similarity index 61%
 3868   4790   
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
 3869   4791   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3870   4792   
index f3537b7..2c5ff38 100644
 3871         -
-- 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
        4793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3872   4794   
@@ -1,3 +1,2 @@
 3873   4795   
GET /./ HTTP/1.1
 3874   4796   
Host:example.amazonaws.com
 3875         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3876   4797   
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
 3877   4798   
new file mode 100644
 3878   4799   
index 0000000..7bee5c7
 3879         -
-- /dev/null
        4800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3880   4801   
@@ -0,0 +1,12 @@
        4802  +
{
        4803  +
    "credentials": {
        4804  +
        "access_key_id": "AKIDEXAMPLE",
        4805  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4806  +
    },
        4807  +
    "expiration_in_seconds": 3600,
        4808  +
    "normalize": false,
        4809  +
    "region": "us-east-1",
        4810  +
    "service": "service",
        4811  +
    "sign_body": false,
        4812  +
    "timestamp": "2015-08-30T12:36:00Z"
        4813  +
}
              \
 No newline at end of file
 3881   4814   
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
 3882   4815   
similarity index 99%
 3883   4816   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3884   4817   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3885   4818   
index d05303d..9257ac4 100644
 3886         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
        4819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3887   4820   
@@ -1,9 +1,9 @@
 3888   4821   
GET
 3889   4822   
/./
 3890   4823   
 3891   4824   
host:example.amazonaws.com
 3892   4825   
x-amz-date:20150830T123600Z
 3893   4826   
x-amz-region-set:us-east-1
 3894   4827   
 3895   4828   
host;x-amz-date;x-amz-region-set
 3896         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4829  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3897   4830   
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
 3898   4831   
new file mode 100644
 3899   4832   
index 0000000..2eb1aa5
 3900         -
-- /dev/null
        4833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3901   4834   
@@ -0,0 +1 @@
        4835  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3902   4836   
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
 3903   4837   
new file mode 100644
 3904   4838   
index 0000000..df3b1da
 3905         -
-- /dev/null
        4839  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3906   4840   
@@ -0,0 +1,6 @@
        4841  +
GET /./ HTTP/1.1
        4842  +
Host:example.amazonaws.com
        4843  +
X-Amz-Date:20150830T123600Z
        4844  +
X-Amz-Region-Set:us-east-1
        4845  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4846  +
 3907   4847   
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
 3908   4848   
similarity index 99%
 3909   4849   
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
 3910   4850   
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
 3911   4851   
index e1bfb39..754b3ed 100644
 3912         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
        4852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 3913   4853   
@@ -1,4 +1,4 @@
 3914   4854   
AWS4-ECDSA-P256-SHA256
 3915   4855   
20150830T123600Z
 3916   4856   
20150830/service/aws4_request
 3917         -
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
        4857  +
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
              \
 No newline at end of file
 3918   4858   
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
 3919   4859   
new file mode 100644
 3920   4860   
index 0000000..379dcb2
 3921         -
-- /dev/null
        4861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3922   4862   
@@ -0,0 +1,4 @@
        4863  +
{
        4864  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4865  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4866  +
}
 3923   4867   
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
 3924   4868   
similarity index 99%
 3925   4869   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3926   4870   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3927   4871   
index f048d0f..c8edce3 100644
 3928         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
        4872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3929   4873   
@@ -1,7 +1,7 @@
 3930   4874   
GET
 3931   4875   
/./
 3932   4876   
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
 3933   4877   
host:example.amazonaws.com
 3934   4878   
 3935   4879   
host
 3936         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4880  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3937   4881   
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
 3938   4882   
new file mode 100644
 3939   4883   
index 0000000..d3af3b8
 3940         -
-- /dev/null
        4884  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3941   4885   
@@ -0,0 +1 @@
        4886  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3942   4887   
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
 3943   4888   
new file mode 100644
 3944   4889   
index 0000000..eb38155
 3945         -
-- /dev/null
        4890  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3946   4891   
@@ -0,0 +1,3 @@
        4892  +
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
        4893  +
Host:example.amazonaws.com
        4894  +
 3947   4895   
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
 3948   4896   
similarity index 99%
 3949   4897   
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
 3950   4898   
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
 3951   4899   
index bfcf245..4f20b8f 100644
 3952         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
        4900  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 3953   4901   
@@ -1,4 +1,4 @@
 3954   4902   
AWS4-ECDSA-P256-SHA256
 3955   4903   
20150830T123600Z
 3956   4904   
20150830/service/aws4_request
 3957         -
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
        4905  +
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
              \
 No newline at end of file
 3958   4906   
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
 3959   4907   
new file mode 100644
 3960   4908   
index 0000000..2c5ff38
 3961         -
-- /dev/null
        4909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3962   4910   
@@ -0,0 +1,2 @@
        4911  +
GET /./ HTTP/1.1
        4912  +
Host:example.amazonaws.com
 3963   4913   
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
 3964   4914   
new file mode 100644
 3965   4915   
index 0000000..0468d80
 3966         -
-- /dev/null
        4916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3967   4917   
@@ -0,0 +1,12 @@
        4918  +
{
        4919  +
    "credentials": {
        4920  +
        "access_key_id": "AKIDEXAMPLE",
        4921  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4922  +
    },
        4923  +
    "expiration_in_seconds": 3600,
        4924  +
    "normalize": true,
        4925  +
    "region": "us-east-1",
        4926  +
    "service": "service",
        4927  +
    "sign_body": false,
        4928  +
    "timestamp": "2015-08-30T12:36:00Z"
        4929  +
}
              \
 No newline at end of file
 3968   4930   
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
 3969   4931   
similarity index 99%
 3970   4932   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 3971   4933   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3972   4934   
index 47e7128..76db73d 100644
 3973         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
        4935  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3974   4936   
@@ -1,9 +1,9 @@
 3975   4937   
GET
 3976   4938   
/
 3977   4939   
 3978   4940   
host:example.amazonaws.com
 3979   4941   
x-amz-date:20150830T123600Z
 3980   4942   
x-amz-region-set:us-east-1
 3981   4943   
 3982   4944   
host;x-amz-date;x-amz-region-set
 3983         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4945  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3984   4946   
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
 3985   4947   
new file mode 100644
 3986   4948   
index 0000000..0c049ca
 3987         -
-- /dev/null
        4949  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 3988   4950   
@@ -0,0 +1 @@
        4951  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 3989   4952   
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
 3990   4953   
new file mode 100644
 3991   4954   
index 0000000..f4bb1e1
 3992         -
-- /dev/null
        4955  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 3993   4956   
@@ -0,0 +1,6 @@
        4957  +
GET // HTTP/1.1
        4958  +
Host:example.amazonaws.com
        4959  +
X-Amz-Date:20150830T123600Z
        4960  +
X-Amz-Region-Set:us-east-1
        4961  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4962  +
 3994   4963   
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
 3995   4964   
similarity index 99%
 3996   4965   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 3997   4966   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3998   4967   
index 95d7219..600f1d8 100644
 3999         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
        4968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4000   4969   
@@ -1,4 +1,4 @@
 4001   4970   
AWS4-ECDSA-P256-SHA256
 4002   4971   
20150830T123600Z
 4003   4972   
20150830/service/aws4_request
 4004         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4973  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4005   4974   
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
 4006   4975   
new file mode 100644
 4007   4976   
index 0000000..379dcb2
 4008         -
-- /dev/null
        4977  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 4009   4978   
@@ -0,0 +1,4 @@
        4979  +
{
        4980  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4981  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4982  +
}
 4010   4983   
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
 4011   4984   
similarity index 99%
 4012   4985   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 4013   4986   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4014   4987   
index a34ea26..779c51c 100644
 4015         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
        4988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4016   4989   
@@ -1,7 +1,7 @@
 4017   4990   
GET
 4018   4991   
/
 4019   4992   
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
 4020   4993   
host:example.amazonaws.com
 4021   4994   
 4022   4995   
host
 4023         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4996  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4024   4997   
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
 4025   4998   
new file mode 100644
 4026   4999   
index 0000000..ca52293
 4027         -
-- /dev/null
        5000  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 4028   5001   
@@ -0,0 +1 @@
        5002  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 4029   5003   
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
 4030   5004   
new file mode 100644
 4031   5005   
index 0000000..4a212a9
 4032         -
-- /dev/null
        5006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 4033   5007   
@@ -0,0 +1,3 @@
        5008  +
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
        5009  +
Host:example.amazonaws.com
        5010  +
 4034   5011   
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
 4035   5012   
similarity index 99%
 4036   5013   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 4037   5014   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4038   5015   
index 48f855c..6e29a7e 100644
 4039         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
        5016  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4040   5017   
@@ -1,4 +1,4 @@
 4041   5018   
AWS4-ECDSA-P256-SHA256
 4042   5019   
20150830T123600Z
 4043   5020   
20150830/service/aws4_request
 4044         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        5021  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4045   5022   
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
 4046   5023   
similarity index 61%
 4047   5024   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 4048   5025   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4049   5026   
index ede8e3c..25bc21e 100644
 4050         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        5027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4051   5028   
@@ -1,3 +1,2 @@
 4052   5029   
GET // HTTP/1.1
 4053   5030   
Host:example.amazonaws.com
 4054         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4055   5031   
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
 4056   5032   
new file mode 100644
 4057   5033   
index 0000000..0468d80
 4058         -
-- /dev/null
        5034  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 4059   5035   
@@ -0,0 +1,12 @@
        5036  +
{
        5037  +
    "credentials": {
        5038  +
        "access_key_id": "AKIDEXAMPLE",
        5039  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5040  +
    },
        5041  +
    "expiration_in_seconds": 3600,
        5042  +
    "normalize": true,
        5043  +
    "region": "us-east-1",
        5044  +
    "service": "service",
        5045  +
    "sign_body": false,
        5046  +
    "timestamp": "2015-08-30T12:36:00Z"
        5047  +
}
              \
 No newline at end of file
 4060   5048   
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
 4061   5049   
similarity index 99%
 4062   5050   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4063   5051   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4064   5052   
index 2e36c20..a51f1ba 100644
 4065         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
        5053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4066   5054   
@@ -1,9 +1,9 @@
 4067   5055   
GET
 4068   5056   
/example
 4069   5057   
 4070   5058   
host:example.amazonaws.com
 4071   5059   
x-amz-date:20150830T123600Z
 4072   5060   
x-amz-region-set:us-east-1
 4073   5061   
 4074   5062   
host;x-amz-date;x-amz-region-set
 4075         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5063  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4076   5064   
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
 4077   5065   
new file mode 100644
 4078   5066   
index 0000000..f5c871f
 4079         -
-- /dev/null
        5067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 4080   5068   
@@ -0,0 +1 @@
        5069  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 4081   5070   
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
 4082   5071   
new file mode 100644
 4083   5072   
index 0000000..bda4718
 4084         -
-- /dev/null
        5073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 4085   5074   
@@ -0,0 +1,6 @@
        5075  +
GET /./example HTTP/1.1
        5076  +
Host:example.amazonaws.com
        5077  +
X-Amz-Date:20150830T123600Z
        5078  +
X-Amz-Region-Set:us-east-1
        5079  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        5080  +
 4086   5081   
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
 4087   5082   
similarity index 99%
 4088   5083   
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
 4089   5084   
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
 4090   5085   
index cd30e8b..2ffe879 100644
 4091         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-string-to-sign.txt
        5086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 4092   5087   
@@ -1,4 +1,4 @@
 4093   5088   
AWS4-ECDSA-P256-SHA256
 4094   5089   
20150830T123600Z
 4095   5090   
20150830/service/aws4_request
 4096         -
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
        5091  +
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
              \
 No newline at end of file
 4097   5092   
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
 4098   5093   
new file mode 100644
 4099   5094   
index 0000000..379dcb2
 4100         -
-- /dev/null
        5095  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 4101   5096   
@@ -0,0 +1,4 @@
        5097  +
{
        5098  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5099  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5100  +
}
 4102   5101   
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
 4103   5102   
similarity index 99%
 4104   5103   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4105   5104   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4106   5105   
index 77cf28d..45151ea 100644
 4107         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
        5106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4108   5107   
@@ -1,7 +1,7 @@
 4109   5108   
GET
 4110   5109   
/example
 4111   5110   
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
 4112   5111   
host:example.amazonaws.com
 4113   5112   
 4114   5113   
host
 4115         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5114  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4116   5115   
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
 4117   5116   
new file mode 100644
 4118   5117   
index 0000000..11ad7bf
 4119         -
-- /dev/null
        5118  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 4120   5119   
@@ -0,0 +1 @@
        5120  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 4121   5121   
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
 4122   5122   
new file mode 100644
 4123   5123   
index 0000000..a7537b1
 4124         -
-- /dev/null
        5124  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 4125   5125   
@@ -0,0 +1,3 @@
        5126  +
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
        5127  +
Host:example.amazonaws.com
        5128  +
 4126   5129   
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
 4127   5130   
similarity index 99%
 4128   5131   
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
 4129   5132   
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
 4130   5133   
index 49d9b24..b486672 100644
 4131         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-string-to-sign.txt
        5134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 4132   5135   
@@ -1,4 +1,4 @@
 4133   5136   
AWS4-ECDSA-P256-SHA256
 4134   5137   
20150830T123600Z
 4135   5138   
20150830/service/aws4_request
 4136         -
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
        5139  +
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
              \
 No newline at end of file
 4137   5140   
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
 4138   5141   
similarity index 65%
 4139   5142   
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
 4140   5143   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4141   5144   
index 3c91071..5d919c9 100644
 4142         -
-- 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
        5145  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4143   5146   
@@ -1,3 +1,2 @@
 4144   5147   
GET /./example HTTP/1.1
 4145   5148   
Host:example.amazonaws.com
 4146         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4147   5149   
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
 4148   5150   
new file mode 100644
 4149   5151   
index 0000000..7bee5c7
 4150         -
-- /dev/null
        5152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 4151   5153   
@@ -0,0 +1,12 @@
        5154  +
{
        5155  +
    "credentials": {
        5156  +
        "access_key_id": "AKIDEXAMPLE",
        5157  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5158  +
    },
        5159  +
    "expiration_in_seconds": 3600,
        5160  +
    "normalize": false,
        5161  +
    "region": "us-east-1",
        5162  +
    "service": "service",
        5163  +
    "sign_body": false,
        5164  +
    "timestamp": "2015-08-30T12:36:00Z"
        5165  +
}
              \
 No newline at end of file
 4152   5166   
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
 4153   5167   
similarity index 99%
 4154   5168   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4155   5169   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4156   5170   
index 4444842..2355a69 100644
 4157         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
        5171  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4158   5172   
@@ -1,9 +1,9 @@
 4159   5173   
GET
 4160   5174   
/./example
 4161   5175   
 4162   5176   
host:example.amazonaws.com
 4163   5177   
x-amz-date:20150830T123600Z
 4164   5178   
x-amz-region-set:us-east-1
 4165   5179   
 4166   5180   
host;x-amz-date;x-amz-region-set
 4167         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5181  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4168   5182   
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
 4169   5183   
new file mode 100644
 4170   5184   
index 0000000..9c8f737
 4171         -
-- /dev/null
        5185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 4172   5186   
@@ -0,0 +1 @@
        5187  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 4173   5188   
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
 4174   5189   
new file mode 100644
 4175   5190   
index 0000000..aa5980d
 4176         -
-- /dev/null
        5191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 4177   5192   
@@ -0,0 +1,6 @@
        5193  +
GET /./example HTTP/1.1
        5194  +
Host:example.amazonaws.com
        5195  +
X-Amz-Date:20150830T123600Z
        5196  +
X-Amz-Region-Set:us-east-1
        5197  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        5198  +
 4178   5199   
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
 4179   5200   
similarity index 99%
 4180   5201   
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
 4181   5202   
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
 4182   5203   
index cc63510..d056816 100644
 4183         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
        5204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 4184   5205   
@@ -1,4 +1,4 @@
 4185   5206   
AWS4-ECDSA-P256-SHA256
 4186   5207   
20150830T123600Z
 4187   5208   
20150830/service/aws4_request
 4188         -
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
        5209  +
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
              \
 No newline at end of file
 4189   5210   
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
 4190   5211   
new file mode 100644
 4191   5212   
index 0000000..379dcb2
 4192         -
-- /dev/null
        5213  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 4193   5214   
@@ -0,0 +1,4 @@
        5215  +
{
        5216  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5217  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5218  +
}
 4194   5219   
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
 4195   5220   
similarity index 99%
 4196   5221   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4197   5222   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4198   5223   
index ed2cb2d..df9928e 100644
 4199         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
        5224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4200   5225   
@@ -1,7 +1,7 @@
 4201   5226   
GET
 4202   5227   
/./example
 4203   5228   
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
 4204   5229   
host:example.amazonaws.com
 4205   5230   
 4206   5231   
host
 4207         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5232  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4208   5233   
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
 4209   5234   
new file mode 100644
 4210   5235   
index 0000000..bb4d86b
 4211         -
-- /dev/null
        5236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 4212   5237   
@@ -0,0 +1 @@
        5238  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 4213   5239   
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
 4214   5240   
new file mode 100644
 4215   5241   
index 0000000..0061136
 4216         -
-- /dev/null
        5242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 4217   5243   
@@ -0,0 +1,3 @@
        5244  +
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
        5245  +
Host:example.amazonaws.com
        5246  +
 4218   5247   
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
 4219   5248   
similarity index 99%
 4220   5249   
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
 4221   5250   
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
 4222   5251   
index c9f3b6d..418f2d6 100644
 4223         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
        5252  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 4224   5253   
@@ -1,4 +1,4 @@
 4225   5254   
AWS4-ECDSA-P256-SHA256
 4226   5255   
20150830T123600Z
 4227   5256   
20150830/service/aws4_request
 4228         -
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
        5257  +
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
              \
 No newline at end of file
 4229   5258   
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
 4230   5259   
new file mode 100644
 4231   5260   
index 0000000..5d919c9
 4232         -
-- /dev/null
        5261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 4233   5262   
@@ -0,0 +1,2 @@
        5263  +
GET /./example HTTP/1.1
        5264  +
Host:example.amazonaws.com
 4234   5265   
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
 4235   5266   
new file mode 100644
 4236   5267   
index 0000000..7bee5c7
 4237         -
-- /dev/null
        5268  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 4238   5269   
@@ -0,0 +1,12 @@
        5270  +
{
        5271  +
    "credentials": {
        5272  +
        "access_key_id": "AKIDEXAMPLE",
        5273  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5274  +
    },
        5275  +
    "expiration_in_seconds": 3600,
        5276  +
    "normalize": false,
        5277  +
    "region": "us-east-1",
        5278  +
    "service": "service",
        5279  +
    "sign_body": false,
        5280  +
    "timestamp": "2015-08-30T12:36:00Z"
        5281  +
}
              \
 No newline at end of file
 4239   5282   
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
 4240   5283   
similarity index 99%
 4241   5284   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 4242   5285   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4243   5286   
index 8a4d33b..5f809da 100644
 4244         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
        5287  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4245   5288   
@@ -1,9 +1,9 @@
 4246   5289   
GET
 4247   5290   
//
 4248   5291   
 4249   5292   
host:example.amazonaws.com
 4250   5293   
x-amz-date:20150830T123600Z
 4251   5294   
x-amz-region-set:us-east-1
 4252   5295   
 4253   5296   
host;x-amz-date;x-amz-region-set
 4254         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5297  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4255   5298   
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
 4256   5299   
new file mode 100644
 4257   5300   
index 0000000..60179e9
 4258         -
-- /dev/null
        5301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 4259   5302   
@@ -0,0 +1 @@
        5303  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 4260   5304   
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
 4261   5305   
new file mode 100644
 4262   5306   
index 0000000..72bf1b7
 4263         -
-- /dev/null
        5307  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 4264   5308   
@@ -0,0 +1,6 @@
        5309  +
GET // HTTP/1.1
        5310  +
Host:example.amazonaws.com
        5311  +
X-Amz-Date:20150830T123600Z
        5312  +
X-Amz-Region-Set:us-east-1
        5313  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        5314  +
 4265   5315   
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
 4266   5316   
similarity index 99%
 4267   5317   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 4268   5318   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4269   5319   
index 874c01c..2b3bf67 100644
 4270         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
        5320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4271   5321   
@@ -1,4 +1,4 @@
 4272   5322   
AWS4-ECDSA-P256-SHA256
 4273   5323   
20150830T123600Z
 4274   5324   
20150830/service/aws4_request
 4275         -
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
        5325  +
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
              \
 No newline at end of file
 4276   5326   
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
 4277   5327   
new file mode 100644
 4278   5328   
index 0000000..379dcb2
 4279         -
-- /dev/null
        5329  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 4280   5330   
@@ -0,0 +1,4 @@
        5331  +
{
        5332  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5333  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5334  +
}
 4281   5335   
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
 4282   5336   
similarity index 99%
 4283   5337   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 4284   5338   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4285   5339   
index 81d7b0b..d10ad29 100644
 4286         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
        5340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4287   5341   
@@ -1,7 +1,7 @@
 4288   5342   
GET
 4289   5343   
//
 4290   5344   
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
 4291   5345   
host:example.amazonaws.com
 4292   5346   
 4293   5347   
host
 4294         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5348  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4295   5349   
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
 4296   5350   
new file mode 100644
 4297   5351   
index 0000000..d9bd824
 4298         -
-- /dev/null
        5352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 4299   5353   
@@ -0,0 +1 @@
        5354  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 4300   5355   
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
 4301   5356   
new file mode 100644
 4302   5357   
index 0000000..19d1d46
 4303         -
-- /dev/null
        5358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 4304   5359   
@@ -0,0 +1,3 @@
        5360  +
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
        5361  +
Host:example.amazonaws.com
        5362  +
 4305   5363   
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
 4306   5364   
similarity index 99%
 4307   5365   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 4308   5366   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4309   5367   
index 17e5279..24c8a5e 100644
 4310         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
        5368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4311   5369   
@@ -1,4 +1,4 @@
 4312   5370   
AWS4-ECDSA-P256-SHA256
 4313   5371   
20150830T123600Z
 4314   5372   
20150830/service/aws4_request
 4315         -
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
        5373  +
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
              \
 No newline at end of file
 4316   5374   
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
 4317   5375   
new file mode 100644
 4318   5376   
index 0000000..25bc21e
 4319         -
-- /dev/null
        5377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 4320   5378   
@@ -0,0 +1,2 @@
        5379  +
GET // HTTP/1.1
        5380  +
Host:example.amazonaws.com
 4321   5381   
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
 4322   5382   
new file mode 100644
 4323   5383   
index 0000000..0468d80
 4324         -
-- /dev/null
        5384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 4325   5385   
@@ -0,0 +1,12 @@
        5386  +
{
        5387  +
    "credentials": {
        5388  +
        "access_key_id": "AKIDEXAMPLE",
        5389  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5390  +
    },
        5391  +
    "expiration_in_seconds": 3600,
        5392  +
    "normalize": true,
        5393  +
    "region": "us-east-1",
        5394  +
    "service": "service",
        5395  +
    "sign_body": false,
        5396  +
    "timestamp": "2015-08-30T12:36:00Z"
        5397  +
}
              \
 No newline at end of file
 4326   5398   
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
 4327   5399   
similarity index 99%
 4328   5400   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 4329   5401   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4330   5402   
index fdf9c48..a8e9e02 100644
 4331         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
        5403  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4332   5404   
@@ -1,9 +1,9 @@
 4333   5405   
GET
 4334   5406   
/example/
 4335   5407   
 4336   5408   
host:example.amazonaws.com
 4337   5409   
x-amz-date:20150830T123600Z
 4338   5410   
x-amz-region-set:us-east-1
 4339   5411   
 4340   5412   
host;x-amz-date;x-amz-region-set
 4341         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5413  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4342   5414   
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
 4343   5415   
new file mode 100644
 4344   5416   
index 0000000..ffe1b60
 4345         -
-- /dev/null
        5417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 4346   5418   
@@ -0,0 +1 @@
        5419  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 4347   5420   
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
 4348   5421   
new file mode 100644
 4349   5422   
index 0000000..3189f55
 4350         -
-- /dev/null
        5423  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 4351   5424   
@@ -0,0 +1,6 @@
        5425  +
GET //example// HTTP/1.1
        5426  +
Host:example.amazonaws.com
        5427  +
X-Amz-Date:20150830T123600Z
        5428  +
X-Amz-Region-Set:us-east-1
        5429  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        5430  +
 4352   5431   
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
 4353   5432   
similarity index 99%
 4354   5433   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 4355   5434   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4356   5435   
index 8f9c95e..430020e 100644
 4357         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
        5436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4358   5437   
@@ -1,4 +1,4 @@
 4359   5438   
AWS4-ECDSA-P256-SHA256
 4360   5439   
20150830T123600Z
 4361   5440   
20150830/service/aws4_request
 4362         -
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
        5441  +
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
              \
 No newline at end of file
 4363   5442   
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
 4364   5443   
new file mode 100644
 4365   5444   
index 0000000..379dcb2
 4366         -
-- /dev/null
        5445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 4367   5446   
@@ -0,0 +1,4 @@
        5447  +
{
        5448  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5449  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5450  +
}
 4368   5451   
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
 4369   5452   
similarity index 99%
 4370   5453   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 4371   5454   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4372   5455   
index 1046735..8d41e37 100644
 4373         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
        5456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4374   5457   
@@ -1,7 +1,7 @@
 4375   5458   
GET
 4376   5459   
/example/
 4377   5460   
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
 4378   5461   
host:example.amazonaws.com
 4379   5462   
 4380   5463   
host
 4381         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5464  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4382   5465   
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
 4383   5466   
new file mode 100644
 4384   5467   
index 0000000..93a0fa4
 4385         -
-- /dev/null
        5468  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 4386   5469   
@@ -0,0 +1 @@
        5470  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 4387   5471   
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
 4388   5472   
new file mode 100644
 4389   5473   
index 0000000..65c8cb6
 4390         -
-- /dev/null
        5474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 4391   5475   
@@ -0,0 +1,3 @@
        5476  +
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
        5477  +
Host:example.amazonaws.com
        5478  +
 4392   5479   
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
 4393   5480   
similarity index 99%
 4394   5481   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 4395   5482   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4396   5483   
index b293cc2..0f4c4c5 100644
 4397         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
        5484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4398   5485   
@@ -1,4 +1,4 @@
 4399   5486   
AWS4-ECDSA-P256-SHA256
 4400   5487   
20150830T123600Z
 4401   5488   
20150830/service/aws4_request
 4402         -
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
        5489  +
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
              \
 No newline at end of file
 4403   5490   
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
 4404   5491   
similarity index 65%
 4405   5492   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 4406   5493   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4407   5494   
index a4307ce..12e0931 100644
 4408         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        5495  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4409   5496   
@@ -1,3 +1,2 @@
 4410   5497   
GET //example// HTTP/1.1
 4411   5498   
Host:example.amazonaws.com
 4412         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4413   5499   
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
 4414   5500   
new file mode 100644
 4415   5501   
index 0000000..7bee5c7
 4416         -
-- /dev/null
        5502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 4417   5503   
@@ -0,0 +1,12 @@
        5504  +
{
        5505  +
    "credentials": {
        5506  +
        "access_key_id": "AKIDEXAMPLE",
        5507  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5508  +
    },
        5509  +
    "expiration_in_seconds": 3600,
        5510  +
    "normalize": false,
        5511  +
    "region": "us-east-1",
        5512  +
    "service": "service",
        5513  +
    "sign_body": false,
        5514  +
    "timestamp": "2015-08-30T12:36:00Z"
        5515  +
}
              \
 No newline at end of file
 4418   5516   
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
 4419   5517   
similarity index 99%
 4420   5518   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 4421   5519   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4422   5520   
index a9c55f6..76f55ed 100644
 4423         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
        5521  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4424   5522   
@@ -1,9 +1,9 @@
 4425   5523   
GET
 4426   5524   
//example//
 4427   5525   
 4428   5526   
host:example.amazonaws.com
 4429   5527   
x-amz-date:20150830T123600Z
 4430   5528   
x-amz-region-set:us-east-1
 4431   5529   
 4432   5530   
host;x-amz-date;x-amz-region-set
 4433         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5531  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4434   5532   
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
 4435   5533   
new file mode 100644
 4436   5534   
index 0000000..de333b2
 4437         -
-- /dev/null
        5535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 4438   5536   
@@ -0,0 +1 @@
        5537  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 4439   5538   
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
 4440   5539   
new file mode 100644
 4441   5540   
index 0000000..773ce63
 4442         -
-- /dev/null
        5541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 4443   5542   
@@ -0,0 +1,6 @@
        5543  +
GET //example// HTTP/1.1
        5544  +
Host:example.amazonaws.com
        5545  +
X-Amz-Date:20150830T123600Z
        5546  +
X-Amz-Region-Set:us-east-1
        5547  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        5548  +
 4444   5549   
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
 4445   5550   
similarity index 99%
 4446   5551   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 4447   5552   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4448   5553   
index 5c4c2cd..46c3265 100644
 4449         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
        5554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4450   5555   
@@ -1,4 +1,4 @@
 4451   5556   
AWS4-ECDSA-P256-SHA256
 4452   5557   
20150830T123600Z
 4453   5558   
20150830/service/aws4_request
 4454         -
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
        5559  +
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
              \
 No newline at end of file
 4455   5560   
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
 4456   5561   
new file mode 100644
 4457   5562   
index 0000000..379dcb2
 4458         -
-- /dev/null
        5563  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 4459   5564   
@@ -0,0 +1,4 @@
        5565  +
{
        5566  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5567  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5568  +
}
 4460   5569   
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
 4461   5570   
similarity index 99%
 4462   5571   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 4463   5572   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4464   5573   
index c878ab4..6047ccf 100644
 4465         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
        5574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4466   5575   
@@ -1,7 +1,7 @@
 4467   5576   
GET
 4468   5577   
//example//
 4469   5578   
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
 4470   5579   
host:example.amazonaws.com
 4471   5580   
 4472   5581   
host
 4473         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5582  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4474   5583   
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
 4475   5584   
new file mode 100644
 4476   5585   
index 0000000..d61fcd0
 4477         -
-- /dev/null
        5586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 4478   5587   
@@ -0,0 +1 @@
        5588  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 4479   5589   
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
 4480   5590   
new file mode 100644
 4481   5591   
index 0000000..3e37b5b
 4482         -
-- /dev/null
        5592  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 4483   5593   
@@ -0,0 +1,3 @@
        5594  +
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
        5595  +
Host:example.amazonaws.com
        5596  +
 4484   5597   
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
 4485   5598   
similarity index 99%
 4486   5599   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 4487   5600   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4488   5601   
index 5f59645..2537d28 100644
 4489         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
        5602  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4490   5603   
@@ -1,4 +1,4 @@
 4491   5604   
AWS4-ECDSA-P256-SHA256
 4492   5605   
20150830T123600Z
 4493   5606   
20150830/service/aws4_request
 4494         -
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
        5607  +
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
              \
 No newline at end of file
 4495   5608   
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
 4496   5609   
new file mode 100644
 4497   5610   
index 0000000..12e0931
 4498         -
-- /dev/null
        5611  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 4499   5612   
@@ -0,0 +1,2 @@
        5613  +
GET //example// HTTP/1.1
        5614  +
Host:example.amazonaws.com
 4500   5615   
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
 4501   5616   
new file mode 100644
 4502   5617   
index 0000000..0468d80
 4503         -
-- /dev/null
        5618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 4504   5619   
@@ -0,0 +1,12 @@
        5620  +
{
        5621  +
    "credentials": {
        5622  +
        "access_key_id": "AKIDEXAMPLE",
        5623  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5624  +
    },
        5625  +
    "expiration_in_seconds": 3600,
        5626  +
    "normalize": true,
        5627  +
    "region": "us-east-1",
        5628  +
    "service": "service",
        5629  +
    "sign_body": false,
        5630  +
    "timestamp": "2015-08-30T12:36:00Z"
        5631  +
}
              \
 No newline at end of file
 4505   5632   
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
 4506   5633   
new file mode 100644
 4507   5634   
index 0000000..0b2b616
 4508         -
-- /dev/null
        5635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 4509   5636   
@@ -0,0 +1,9 @@
        5637  +
GET
        5638  +
/example%20space/
        5639  +
        5640  +
host:example.amazonaws.com
        5641  +
x-amz-date:20150830T123600Z
        5642  +
x-amz-region-set:us-east-1
        5643  +
        5644  +
host;x-amz-date;x-amz-region-set
        5645  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4510   5646   
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
 4511   5647   
new file mode 100644
 4512   5648   
index 0000000..6e7841d
 4513         -
-- /dev/null
        5649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 4514   5650   
@@ -0,0 +1 @@
        5651  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 4515   5652   
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
 4516   5653   
new file mode 100644
 4517   5654   
index 0000000..0969cd3
 4518         -
-- /dev/null
        5655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 4519   5656   
@@ -0,0 +1,6 @@
        5657  +
GET /example space/ HTTP/1.1
        5658  +
Host:example.amazonaws.com
        5659  +
X-Amz-Date:20150830T123600Z
        5660  +
X-Amz-Region-Set:us-east-1
        5661  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5662  +
 4520   5663   
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
 4521   5664   
new file mode 100644
 4522   5665   
index 0000000..ddae6e2
 4523         -
-- /dev/null
        5666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4524   5667   
@@ -0,0 +1,4 @@
        5668  +
AWS4-ECDSA-P256-SHA256
        5669  +
20150830T123600Z
        5670  +
20150830/service/aws4_request
        5671  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4525   5672   
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
 4526   5673   
new file mode 100644
 4527   5674   
index 0000000..379dcb2
 4528         -
-- /dev/null
        5675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4529   5676   
@@ -0,0 +1,4 @@
        5677  +
{
        5678  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5679  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5680  +
}
 4530   5681   
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
 4531   5682   
new file mode 100644
 4532   5683   
index 0000000..a66b3cb
 4533         -
-- /dev/null
        5684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4534   5685   
@@ -0,0 +1,7 @@
        5686  +
GET
        5687  +
/example%20space/
        5688  +
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
        5689  +
host:example.amazonaws.com
        5690  +
        5691  +
host
        5692  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4535   5693   
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
 4536   5694   
new file mode 100644
 4537   5695   
index 0000000..b3253ae
 4538         -
-- /dev/null
        5696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4539   5697   
@@ -0,0 +1 @@
        5698  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 4540   5699   
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
 4541   5700   
new file mode 100644
 4542   5701   
index 0000000..9e335b2
 4543         -
-- /dev/null
        5702  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4544   5703   
@@ -0,0 +1,3 @@
        5704  +
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
        5705  +
Host:example.amazonaws.com
        5706  +
 4545   5707   
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
 4546   5708   
new file mode 100644
 4547   5709   
index 0000000..b6ff6fb
 4548         -
-- /dev/null
        5710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4549   5711   
@@ -0,0 +1,4 @@
        5712  +
AWS4-ECDSA-P256-SHA256
        5713  +
20150830T123600Z
        5714  +
20150830/service/aws4_request
        5715  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4550   5716   
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
 4551   5717   
new file mode 100644
 4552   5718   
index 0000000..ab509ab
 4553         -
-- /dev/null
        5719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4554   5720   
@@ -0,0 +1,2 @@
        5721  +
GET /example space/ HTTP/1.1
        5722  +
Host:example.amazonaws.com
 4555   5723   
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
 4556   5724   
new file mode 100644
 4557   5725   
index 0000000..7bee5c7
 4558         -
-- /dev/null
        5726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4559   5727   
@@ -0,0 +1,12 @@
        5728  +
{
        5729  +
    "credentials": {
        5730  +
        "access_key_id": "AKIDEXAMPLE",
        5731  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5732  +
    },
        5733  +
    "expiration_in_seconds": 3600,
        5734  +
    "normalize": false,
        5735  +
    "region": "us-east-1",
        5736  +
    "service": "service",
        5737  +
    "sign_body": false,
        5738  +
    "timestamp": "2015-08-30T12:36:00Z"
        5739  +
}
              \
 No newline at end of file
 4560   5740   
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
 4561   5741   
new file mode 100644
 4562   5742   
index 0000000..0b2b616
 4563         -
-- /dev/null
        5743  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4564   5744   
@@ -0,0 +1,9 @@
        5745  +
GET
        5746  +
/example%20space/
        5747  +
        5748  +
host:example.amazonaws.com
        5749  +
x-amz-date:20150830T123600Z
        5750  +
x-amz-region-set:us-east-1
        5751  +
        5752  +
host;x-amz-date;x-amz-region-set
        5753  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4565   5754   
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
 4566   5755   
new file mode 100644
 4567   5756   
index 0000000..e75ae08
 4568         -
-- /dev/null
        5757  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4569   5758   
@@ -0,0 +1 @@
        5759  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4570   5760   
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
 4571   5761   
new file mode 100644
 4572   5762   
index 0000000..cb089db
 4573         -
-- /dev/null
        5763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4574   5764   
@@ -0,0 +1,6 @@
        5765  +
GET /example space/ HTTP/1.1
        5766  +
Host:example.amazonaws.com
        5767  +
X-Amz-Date:20150830T123600Z
        5768  +
X-Amz-Region-Set:us-east-1
        5769  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5770  +
 4575   5771   
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
 4576   5772   
new file mode 100644
 4577   5773   
index 0000000..ddae6e2
 4578         -
-- /dev/null
        5774  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4579   5775   
@@ -0,0 +1,4 @@
        5776  +
AWS4-ECDSA-P256-SHA256
        5777  +
20150830T123600Z
        5778  +
20150830/service/aws4_request
        5779  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4580   5780   
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
 4581   5781   
new file mode 100644
 4582   5782   
index 0000000..379dcb2
 4583         -
-- /dev/null
        5783  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4584   5784   
@@ -0,0 +1,4 @@
        5785  +
{
        5786  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5787  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5788  +
}
 4585   5789   
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
 4586   5790   
new file mode 100644
 4587   5791   
index 0000000..a66b3cb
 4588         -
-- /dev/null
        5792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4589   5793   
@@ -0,0 +1,7 @@
        5794  +
GET
        5795  +
/example%20space/
        5796  +
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
        5797  +
host:example.amazonaws.com
        5798  +
        5799  +
host
        5800  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4590   5801   
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
 4591   5802   
new file mode 100644
 4592   5803   
index 0000000..66a80c3
 4593         -
-- /dev/null
        5804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4594   5805   
@@ -0,0 +1 @@
        5806  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4595   5807   
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
 4596   5808   
new file mode 100644
 4597   5809   
index 0000000..7d1b9d9
 4598         -
-- /dev/null
        5810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4599   5811   
@@ -0,0 +1,3 @@
        5812  +
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
        5813  +
Host:example.amazonaws.com
        5814  +
 4600   5815   
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
 4601   5816   
new file mode 100644
 4602   5817   
index 0000000..b6ff6fb
 4603         -
-- /dev/null
        5818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4604   5819   
@@ -0,0 +1,4 @@
        5820  +
AWS4-ECDSA-P256-SHA256
        5821  +
20150830T123600Z
        5822  +
20150830/service/aws4_request
        5823  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4605   5824   
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
 4606   5825   
new file mode 100644
 4607   5826   
index 0000000..ab509ab
 4608         -
-- /dev/null
        5827  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4609   5828   
@@ -0,0 +1,2 @@
        5829  +
GET /example space/ HTTP/1.1
        5830  +
Host:example.amazonaws.com
 4610   5831   
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
 4611   5832   
new file mode 100644
 4612   5833   
index 0000000..0468d80
 4613         -
-- /dev/null
        5834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4614   5835   
@@ -0,0 +1,12 @@
        5836  +
{
        5837  +
    "credentials": {
        5838  +
        "access_key_id": "AKIDEXAMPLE",
        5839  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5840  +
    },
        5841  +
    "expiration_in_seconds": 3600,
        5842  +
    "normalize": true,
        5843  +
    "region": "us-east-1",
        5844  +
    "service": "service",
        5845  +
    "sign_body": false,
        5846  +
    "timestamp": "2015-08-30T12:36:00Z"
        5847  +
}
              \
 No newline at end of file
 4615   5848   
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
 4616   5849   
similarity index 99%
 4617   5850   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4618   5851   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4619   5852   
index b0db648..46d76bb 100644
 4620         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
        5853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4621   5854   
@@ -1,9 +1,9 @@
 4622   5855   
GET
 4623   5856   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4624   5857   
 4625   5858   
host:example.amazonaws.com
 4626   5859   
x-amz-date:20150830T123600Z
 4627   5860   
x-amz-region-set:us-east-1
 4628   5861   
 4629   5862   
host;x-amz-date;x-amz-region-set
 4630         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5863  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4631   5864   
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
 4632   5865   
new file mode 100644
 4633   5866   
index 0000000..53c0cb6
 4634         -
-- /dev/null
        5867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4635   5868   
@@ -0,0 +1 @@
        5869  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4636   5870   
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
 4637   5871   
new file mode 100644
 4638   5872   
index 0000000..3bdb653
 4639         -
-- /dev/null
        5873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4640   5874   
@@ -0,0 +1,6 @@
        5875  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5876  +
Host:example.amazonaws.com
        5877  +
X-Amz-Date:20150830T123600Z
        5878  +
X-Amz-Region-Set:us-east-1
        5879  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5880  +
 4641   5881   
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
 4642   5882   
similarity index 99%
 4643   5883   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4644   5884   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4645   5885   
index 20c7cd6..3b30173 100644
 4646         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
        5886  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4647   5887   
@@ -1,4 +1,4 @@
 4648   5888   
AWS4-ECDSA-P256-SHA256
 4649   5889   
20150830T123600Z
 4650   5890   
20150830/service/aws4_request
 4651         -
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
        5891  +
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
              \
 No newline at end of file
 4652   5892   
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
 4653   5893   
new file mode 100644
 4654   5894   
index 0000000..379dcb2
 4655         -
-- /dev/null
        5895  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4656   5896   
@@ -0,0 +1,4 @@
        5897  +
{
        5898  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5899  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5900  +
}
 4657   5901   
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
 4658   5902   
similarity index 99%
 4659   5903   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4660   5904   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4661   5905   
index f9fb726..7e93f58 100644
 4662         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
        5906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4663   5907   
@@ -1,7 +1,7 @@
 4664   5908   
GET
 4665   5909   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4666   5910   
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
 4667   5911   
host:example.amazonaws.com
 4668   5912   
 4669   5913   
host
 4670         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5914  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4671   5915   
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
 4672   5916   
new file mode 100644
 4673   5917   
index 0000000..48311a8
 4674         -
-- /dev/null
        5918  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4675   5919   
@@ -0,0 +1 @@
        5920  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4676   5921   
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
 4677   5922   
new file mode 100644
 4678   5923   
index 0000000..82da9be
 4679         -
-- /dev/null
        5924  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4680   5925   
@@ -0,0 +1,3 @@
        5926  +
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
        5927  +
Host:example.amazonaws.com
        5928  +
 4681   5929   
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
 4682   5930   
similarity index 99%
 4683   5931   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4684   5932   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4685   5933   
index ef06e89..4aab9a2 100644
 4686         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
        5934  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4687   5935   
@@ -1,4 +1,4 @@
 4688   5936   
AWS4-ECDSA-P256-SHA256
 4689   5937   
20150830T123600Z
 4690   5938   
20150830/service/aws4_request
 4691         -
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
        5939  +
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
              \
 No newline at end of file
 4692   5940   
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
 4693   5941   
similarity index 80%
 4694   5942   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4695   5943   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4696   5944   
index da760cd..a149694 100644
 4697         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5945  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4698   5946   
@@ -1,3 +1,2 @@
 4699   5947   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4700   5948   
Host:example.amazonaws.com
 4701         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4702   5949   
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
 4703   5950   
new file mode 100644
 4704   5951   
index 0000000..0468d80
 4705         -
-- /dev/null
        5952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4706   5953   
@@ -0,0 +1,12 @@
        5954  +
{
        5955  +
    "credentials": {
        5956  +
        "access_key_id": "AKIDEXAMPLE",
        5957  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5958  +
    },
        5959  +
    "expiration_in_seconds": 3600,
        5960  +
    "normalize": true,
        5961  +
    "region": "us-east-1",
        5962  +
    "service": "service",
        5963  +
    "sign_body": false,
        5964  +
    "timestamp": "2015-08-30T12:36:00Z"
        5965  +
}
              \
 No newline at end of file
 4707   5966   
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
 4708   5967   
new file mode 100644
 4709   5968   
index 0000000..0f1afe7
 4710         -
-- /dev/null
        5969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4711   5970   
@@ -0,0 +1,9 @@
        5971  +
GET
        5972  +
/%E1%88%B4
        5973  +
        5974  +
host:example.amazonaws.com
        5975  +
x-amz-date:20150830T123600Z
        5976  +
x-amz-region-set:us-east-1
        5977  +
        5978  +
host;x-amz-date;x-amz-region-set
        5979  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4712   5980   
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
 4713   5981   
new file mode 100644
 4714   5982   
index 0000000..4b9af6c
 4715         -
-- /dev/null
        5983  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4716   5984   
@@ -0,0 +1 @@
        5985  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4717   5986   
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
 4718   5987   
new file mode 100644
 4719   5988   
index 0000000..d42d7b3
 4720         -
-- /dev/null
        5989  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4721   5990   
@@ -0,0 +1,6 @@
        5991  +
GET /ሴ HTTP/1.1
        5992  +
Host:example.amazonaws.com
        5993  +
X-Amz-Date:20150830T123600Z
        5994  +
X-Amz-Region-Set:us-east-1
        5995  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        5996  +
 4722   5997   
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
 4723   5998   
new file mode 100644
 4724   5999   
index 0000000..0827f62
 4725         -
-- /dev/null
        6000  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4726   6001   
@@ -0,0 +1,4 @@
        6002  +
AWS4-ECDSA-P256-SHA256
        6003  +
20150830T123600Z
        6004  +
20150830/service/aws4_request
        6005  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4727   6006   
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
 4728   6007   
new file mode 100644
 4729   6008   
index 0000000..379dcb2
 4730         -
-- /dev/null
        6009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4731   6010   
@@ -0,0 +1,4 @@
        6011  +
{
        6012  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6013  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6014  +
}
 4732   6015   
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
 4733   6016   
new file mode 100644
 4734   6017   
index 0000000..a41a2f8
 4735         -
-- /dev/null
        6018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4736   6019   
@@ -0,0 +1,7 @@
        6020  +
GET
        6021  +
/%E1%88%B4
        6022  +
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
        6023  +
host:example.amazonaws.com
        6024  +
        6025  +
host
        6026  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4737   6027   
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
 4738   6028   
new file mode 100644
 4739   6029   
index 0000000..a5c7f4f
 4740         -
-- /dev/null
        6030  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4741   6031   
@@ -0,0 +1 @@
        6032  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4742   6033   
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
 4743   6034   
new file mode 100644
 4744   6035   
index 0000000..492ed33
 4745         -
-- /dev/null
        6036  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4746   6037   
@@ -0,0 +1,3 @@
        6038  +
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
        6039  +
Host:example.amazonaws.com
        6040  +
 4747   6041   
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
 4748   6042   
new file mode 100644
 4749   6043   
index 0000000..a93108f
 4750         -
-- /dev/null
        6044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4751   6045   
@@ -0,0 +1,4 @@
        6046  +
AWS4-ECDSA-P256-SHA256
        6047  +
20150830T123600Z
        6048  +
20150830/service/aws4_request
        6049  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4752   6050   
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
 4753   6051   
new file mode 100644
 4754   6052   
index 0000000..9e273f6
 4755         -
-- /dev/null
        6053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4756   6054   
@@ -0,0 +1,2 @@
        6055  +
GET /ሴ HTTP/1.1
        6056  +
Host:example.amazonaws.com
 4757   6057   
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
 4758   6058   
new file mode 100644
 4759   6059   
index 0000000..0468d80
 4760         -
-- /dev/null
        6060  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4761   6061   
@@ -0,0 +1,12 @@
        6062  +
{
        6063  +
    "credentials": {
        6064  +
        "access_key_id": "AKIDEXAMPLE",
        6065  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6066  +
    },
        6067  +
    "expiration_in_seconds": 3600,
        6068  +
    "normalize": true,
        6069  +
    "region": "us-east-1",
        6070  +
    "service": "service",
        6071  +
    "sign_body": false,
        6072  +
    "timestamp": "2015-08-30T12:36:00Z"
        6073  +
}
              \
 No newline at end of file
 4762   6074   
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
 4763   6075   
similarity index 99%
 4764   6076   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4765   6077   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4766   6078   
index bb9d4bf..edc0bb4 100644
 4767         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
        6079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4768   6080   
@@ -1,9 +1,9 @@
 4769   6081   
GET
 4770   6082   
/
 4771   6083   
Param1=value1
 4772   6084   
host:example.amazonaws.com
 4773   6085   
x-amz-date:20150830T123600Z
 4774   6086   
x-amz-region-set:us-east-1
 4775   6087   
 4776   6088   
host;x-amz-date;x-amz-region-set
 4777         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6089  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4778   6090   
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
 4779   6091   
new file mode 100644
 4780   6092   
index 0000000..ee9a272
 4781         -
-- /dev/null
        6093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4782   6094   
@@ -0,0 +1 @@
        6095  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4783   6096   
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
 4784   6097   
new file mode 100644
 4785   6098   
index 0000000..2090343
 4786         -
-- /dev/null
        6099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4787   6100   
@@ -0,0 +1,6 @@
        6101  +
GET /?Param1=value1 HTTP/1.1
        6102  +
Host:example.amazonaws.com
        6103  +
X-Amz-Date:20150830T123600Z
        6104  +
X-Amz-Region-Set:us-east-1
        6105  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        6106  +
 4788   6107   
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
 4789   6108   
similarity index 99%
 4790   6109   
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
 4791   6110   
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
 4792   6111   
index a176f1d..06ed74f 100644
 4793         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-string-to-sign.txt
        6112  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-string-to-sign.txt
 4794   6113   
@@ -1,4 +1,4 @@
 4795   6114   
AWS4-ECDSA-P256-SHA256
 4796   6115   
20150830T123600Z
 4797   6116   
20150830/service/aws4_request
 4798         -
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
        6117  +
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
              \
 No newline at end of file
 4799   6118   
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
 4800   6119   
new file mode 100644
 4801   6120   
index 0000000..379dcb2
 4802         -
-- /dev/null
        6121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4803   6122   
@@ -0,0 +1,4 @@
        6123  +
{
        6124  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6125  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6126  +
}
 4804   6127   
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
 4805   6128   
similarity index 99%
 4806   6129   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4807   6130   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4808   6131   
index 344384b..a875d70 100644
 4809         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
        6132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4810   6133   
@@ -1,7 +1,7 @@
 4811   6134   
GET
 4812   6135   
/
 4813   6136   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4814   6137   
host:example.amazonaws.com
 4815   6138   
 4816   6139   
host
 4817         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6140  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4818   6141   
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
 4819   6142   
new file mode 100644
 4820   6143   
index 0000000..ef93624
 4821         -
-- /dev/null
        6144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4822   6145   
@@ -0,0 +1 @@
        6146  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4823   6147   
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
 4824   6148   
new file mode 100644
 4825   6149   
index 0000000..92829f7
 4826         -
-- /dev/null
        6150  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4827   6151   
@@ -0,0 +1,3 @@
        6152  +
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
        6153  +
Host:example.amazonaws.com
        6154  +
 4828   6155   
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
 4829   6156   
similarity index 99%
 4830   6157   
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
 4831   6158   
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
 4832   6159   
index b625052..4ff9191 100644
 4833         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-string-to-sign.txt
        6160  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-string-to-sign.txt
 4834   6161   
@@ -1,4 +1,4 @@
 4835   6162   
AWS4-ECDSA-P256-SHA256
 4836   6163   
20150830T123600Z
 4837   6164   
20150830/service/aws4_request
 4838         -
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
        6165  +
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
              \
 No newline at end of file
 4839   6166   
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
 4840   6167   
similarity index 67%
 4841   6168   
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
 4842   6169   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4843   6170   
index 970d0a0..f4a03bb 100644
 4844         -
-- 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
        6171  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4845   6172   
@@ -1,3 +1,2 @@
 4846   6173   
GET /?Param1=value1 HTTP/1.1
 4847   6174   
Host:example.amazonaws.com
 4848         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4849   6175   
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
 4850   6176   
new file mode 100644
 4851   6177   
index 0000000..0468d80
 4852         -
-- /dev/null
        6178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4853   6179   
@@ -0,0 +1,12 @@
        6180  +
{
        6181  +
    "credentials": {
        6182  +
        "access_key_id": "AKIDEXAMPLE",
        6183  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6184  +
    },
        6185  +
    "expiration_in_seconds": 3600,
        6186  +
    "normalize": true,
        6187  +
    "region": "us-east-1",
        6188  +
    "service": "service",
        6189  +
    "sign_body": false,
        6190  +
    "timestamp": "2015-08-30T12:36:00Z"
        6191  +
}
              \
 No newline at end of file
 4854   6192   
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
 4855   6193   
new file mode 100644
 4856   6194   
index 0000000..da07537
 4857         -
-- /dev/null
        6195  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4858   6196   
@@ -0,0 +1,9 @@
        6197  +
GET
        6198  +
/
        6199  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        6200  +
host:example.amazonaws.com
        6201  +
x-amz-date:20150830T123600Z
        6202  +
x-amz-region-set:us-east-1
        6203  +
        6204  +
host;x-amz-date;x-amz-region-set
        6205  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4859   6206   
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
 4860   6207   
new file mode 100644
 4861   6208   
index 0000000..edb21e5
 4862         -
-- /dev/null
        6209  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4863   6210   
@@ -0,0 +1 @@
        6211  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4864   6212   
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
 4865   6213   
new file mode 100644
 4866   6214   
index 0000000..e60394c
 4867         -
-- /dev/null
        6215  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4868   6216   
@@ -0,0 +1,6 @@
        6217  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6218  +
Host:example.amazonaws.com
        6219  +
X-Amz-Date:20150830T123600Z
        6220  +
X-Amz-Region-Set:us-east-1
        6221  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        6222  +
 4869   6223   
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
 4870   6224   
new file mode 100644
 4871   6225   
index 0000000..1dfc886
 4872         -
-- /dev/null
        6226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4873   6227   
@@ -0,0 +1,4 @@
        6228  +
AWS4-ECDSA-P256-SHA256
        6229  +
20150830T123600Z
        6230  +
20150830/service/aws4_request
        6231  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4874   6232   
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
 4875   6233   
new file mode 100644
 4876   6234   
index 0000000..379dcb2
 4877         -
-- /dev/null
        6235  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4878   6236   
@@ -0,0 +1,4 @@
        6237  +
{
        6238  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6239  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6240  +
}
 4879   6241   
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
 4880   6242   
new file mode 100644
 4881   6243   
index 0000000..e94dc0c
 4882         -
-- /dev/null
        6244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4883   6245   
@@ -0,0 +1,7 @@
        6246  +
GET
        6247  +
/
        6248  +
%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
        6249  +
host:example.amazonaws.com
        6250  +
        6251  +
host
        6252  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4884   6253   
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
 4885   6254   
new file mode 100644
 4886   6255   
index 0000000..7489437
 4887         -
-- /dev/null
        6256  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4888   6257   
@@ -0,0 +1 @@
        6258  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4889   6259   
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
 4890   6260   
new file mode 100644
 4891   6261   
index 0000000..90c0e73
 4892         -
-- /dev/null
        6262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4893   6263   
@@ -0,0 +1,3 @@
        6264  +
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
        6265  +
Host:example.amazonaws.com
        6266  +
 4894   6267   
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
 4895   6268   
new file mode 100644
 4896   6269   
index 0000000..ab8a711
 4897         -
-- /dev/null
        6270  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4898   6271   
@@ -0,0 +1,4 @@
        6272  +
AWS4-ECDSA-P256-SHA256
        6273  +
20150830T123600Z
        6274  +
20150830/service/aws4_request
        6275  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4899   6276   
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
 4900   6277   
new file mode 100644
 4901   6278   
index 0000000..368c6e3
 4902         -
-- /dev/null
        6279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4903   6280   
@@ -0,0 +1,2 @@
        6281  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6282  +
Host:example.amazonaws.com
 4904   6283   
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
 4905   6284   
new file mode 100644
 4906   6285   
index 0000000..0468d80
 4907         -
-- /dev/null
        6286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4908   6287   
@@ -0,0 +1,12 @@
        6288  +
{
        6289  +
    "credentials": {
        6290  +
        "access_key_id": "AKIDEXAMPLE",
        6291  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6292  +
    },
        6293  +
    "expiration_in_seconds": 3600,
        6294  +
    "normalize": true,
        6295  +
    "region": "us-east-1",
        6296  +
    "service": "service",
        6297  +
    "sign_body": false,
        6298  +
    "timestamp": "2015-08-30T12:36:00Z"
        6299  +
}
              \
 No newline at end of file
 4909   6300   
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
 4910   6301   
similarity index 99%
 4911   6302   
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
 4912   6303   
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
 4913   6304   
index 74f625a..3db56f7 100644
 4914         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-canonical-request.txt
        6305  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-canonical-request.txt
 4915   6306   
@@ -1,9 +1,9 @@
 4916   6307   
GET
 4917   6308   
/
 4918   6309   
Param1=value1&Param2=value2
 4919   6310   
host:example.amazonaws.com
 4920   6311   
x-amz-date:20150830T123600Z
 4921   6312   
x-amz-region-set:us-east-1
 4922   6313   
 4923   6314   
host;x-amz-date;x-amz-region-set
 4924         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6315  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4925   6316   
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
 4926   6317   
new file mode 100644
 4927   6318   
index 0000000..e6042bc
 4928         -
-- /dev/null
        6319  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4929   6320   
@@ -0,0 +1 @@
        6321  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4930   6322   
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
 4931   6323   
new file mode 100644
 4932   6324   
index 0000000..5505969
 4933         -
-- /dev/null
        6325  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4934   6326   
@@ -0,0 +1,6 @@
        6327  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        6328  +
Host:example.amazonaws.com
        6329  +
X-Amz-Date:20150830T123600Z
        6330  +
X-Amz-Region-Set:us-east-1
        6331  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        6332  +
 4935   6333   
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
 4936   6334   
similarity index 99%
 4937   6335   
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
 4938   6336   
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
 4939   6337   
index 44873b7..e8f5e31 100644
 4940         -
-- 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
        6338  +
++ 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
 4941   6339   
@@ -1,4 +1,4 @@
 4942   6340   
AWS4-ECDSA-P256-SHA256
 4943   6341   
20150830T123600Z
 4944   6342   
20150830/service/aws4_request
 4945         -
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
        6343  +
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
              \
 No newline at end of file
 4946   6344   
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
 4947   6345   
new file mode 100644
 4948   6346   
index 0000000..379dcb2
 4949         -
-- /dev/null
        6347  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4950   6348   
@@ -0,0 +1,4 @@
        6349  +
{
        6350  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6351  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6352  +
}
 4951   6353   
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
 4952   6354   
similarity index 99%
 4953   6355   
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
 4954   6356   
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
 4955   6357   
index 6d30727..3fe6a9f 100644
 4956         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-canonical-request.txt
        6358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-canonical-request.txt
 4957   6359   
@@ -1,7 +1,7 @@
 4958   6360   
GET
 4959   6361   
/
 4960   6362   
Param1=value1&Param2=value2&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4961   6363   
host:example.amazonaws.com
 4962   6364   
 4963   6365   
host
 4964         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6366  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4965   6367   
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
 4966   6368   
new file mode 100644
 4967   6369   
index 0000000..3f35de8
 4968         -
-- /dev/null
        6370  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4969   6371   
@@ -0,0 +1 @@
        6372  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 4970   6373   
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
 4971   6374   
new file mode 100644
 4972   6375   
index 0000000..30b336b
 4973         -
-- /dev/null
        6376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 4974   6377   
@@ -0,0 +1,3 @@
        6378  +
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
        6379  +
Host:example.amazonaws.com
        6380  +
 4975   6381   
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
 4976   6382   
similarity index 99%
 4977   6383   
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
 4978   6384   
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
 4979   6385   
index 99d0510..7f0565f 100644
 4980         -
-- 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
        6386  +
++ 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
 4981   6387   
@@ -1,4 +1,4 @@
 4982   6388   
AWS4-ECDSA-P256-SHA256
 4983   6389   
20150830T123600Z
 4984   6390   
20150830/service/aws4_request
 4985         -
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
        6391  +
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
              \
 No newline at end of file
 4986   6392   
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
 4987   6393   
similarity index 100%
 4988   6394   
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
 4989   6395   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 4990   6396   
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
 4991   6397   
new file mode 100644
 4992   6398   
index 0000000..0468d80
 4993         -
-- /dev/null
        6399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 4994   6400   
@@ -0,0 +1,12 @@
        6401  +
{
        6402  +
    "credentials": {
        6403  +
        "access_key_id": "AKIDEXAMPLE",
        6404  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6405  +
    },
        6406  +
    "expiration_in_seconds": 3600,
        6407  +
    "normalize": true,
        6408  +
    "region": "us-east-1",
        6409  +
    "service": "service",
        6410  +
    "sign_body": false,
        6411  +
    "timestamp": "2015-08-30T12:36:00Z"
        6412  +
}
              \
 No newline at end of file
 4995   6413   
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
 4996   6414   
similarity index 99%
 4997   6415   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 4998   6416   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4999   6417   
index 816c862..cc4537a 100644
 5000         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
        6418  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5001   6419   
@@ -1,9 +1,9 @@
 5002   6420   
GET
 5003   6421   
/
 5004   6422   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 5005   6423   
host:example.amazonaws.com
 5006   6424   
x-amz-date:20150830T123600Z
 5007   6425   
x-amz-region-set:us-east-1
 5008   6426   
 5009   6427   
host;x-amz-date;x-amz-region-set
 5010         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6428  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5011   6429   
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
 5012   6430   
new file mode 100644
 5013   6431   
index 0000000..70d38c1
 5014         -
-- /dev/null
        6432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 5015   6433   
@@ -0,0 +1 @@
        6434  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 5016   6435   
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
 5017   6436   
new file mode 100644
 5018   6437   
index 0000000..0647eea
 5019         -
-- /dev/null
        6438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 5020   6439   
@@ -0,0 +1,6 @@
        6440  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        6441  +
Host:example.amazonaws.com
        6442  +
X-Amz-Date:20150830T123600Z
        6443  +
X-Amz-Region-Set:us-east-1
        6444  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        6445  +
 5021   6446   
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
 5022   6447   
similarity index 99%
 5023   6448   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 5024   6449   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5025   6450   
index 6129fc5..cc19d14 100644
 5026         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
        6451  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5027   6452   
@@ -1,4 +1,4 @@
 5028   6453   
AWS4-ECDSA-P256-SHA256
 5029   6454   
20150830T123600Z
 5030   6455   
20150830/service/aws4_request
 5031         -
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
        6456  +
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
              \
 No newline at end of file
 5032   6457   
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
 5033   6458   
new file mode 100644
 5034   6459   
index 0000000..379dcb2
 5035         -
-- /dev/null
        6460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 5036   6461   
@@ -0,0 +1,4 @@
        6462  +
{
        6463  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6464  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6465  +
}
 5037   6466   
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
 5038   6467   
similarity index 99%
 5039   6468   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 5040   6469   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5041   6470   
index b77ee9f..ed6a10e 100644
 5042         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
        6471  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5043   6472   
@@ -1,7 +1,7 @@
 5044   6473   
GET
 5045   6474   
/
 5046   6475   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5047   6476   
host:example.amazonaws.com
 5048   6477   
 5049   6478   
host
 5050         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6479  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5051   6480   
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
 5052   6481   
new file mode 100644
 5053   6482   
index 0000000..2ceba7b
 5054         -
-- /dev/null
        6483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 5055   6484   
@@ -0,0 +1 @@
        6485  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 5056   6486   
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
 5057   6487   
new file mode 100644
 5058   6488   
index 0000000..0cd6d0a
 5059         -
-- /dev/null
        6489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 5060   6490   
@@ -0,0 +1,3 @@
        6491  +
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
        6492  +
Host:example.amazonaws.com
        6493  +
 5061   6494   
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
 5062   6495   
similarity index 99%
 5063   6496   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 5064   6497   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5065   6498   
index 1cfed7a..aad1421 100644
 5066         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
        6499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5067   6500   
@@ -1,4 +1,4 @@
 5068   6501   
AWS4-ECDSA-P256-SHA256
 5069   6502   
20150830T123600Z
 5070   6503   
20150830/service/aws4_request
 5071         -
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
        6504  +
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
              \
 No newline at end of file
 5072   6505   
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
 5073   6506   
similarity index 86%
 5074   6507   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 5075   6508   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5076   6509   
index d2833b3..36b2fe3 100644
 5077         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        6510  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5078   6511   
@@ -1,3 +1,2 @@
 5079   6512   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 5080   6513   
Host:example.amazonaws.com
 5081         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5082   6514   
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
 5083   6515   
new file mode 100644
 5084   6516   
index 0000000..0468d80
 5085         -
-- /dev/null
        6517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 5086   6518   
@@ -0,0 +1,12 @@
        6519  +
{
        6520  +
    "credentials": {
        6521  +
        "access_key_id": "AKIDEXAMPLE",
        6522  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6523  +
    },
        6524  +
    "expiration_in_seconds": 3600,
        6525  +
    "normalize": true,
        6526  +
    "region": "us-east-1",
        6527  +
    "service": "service",
        6528  +
    "sign_body": false,
        6529  +
    "timestamp": "2015-08-30T12:36:00Z"
        6530  +
}
              \
 No newline at end of file
 5087   6531   
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
 5088   6532   
new file mode 100644
 5089   6533   
index 0000000..76db73d
 5090         -
-- /dev/null
        6534  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 5091   6535   
@@ -0,0 +1,9 @@
        6536  +
GET
        6537  +
/
        6538  +
        6539  +
host:example.amazonaws.com
        6540  +
x-amz-date:20150830T123600Z
        6541  +
x-amz-region-set:us-east-1
        6542  +
        6543  +
host;x-amz-date;x-amz-region-set
        6544  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5092   6545   
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
 5093   6546   
new file mode 100644
 5094   6547   
index 0000000..281cc62
 5095         -
-- /dev/null
        6548  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 5096   6549   
@@ -0,0 +1 @@
        6550  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 5097   6551   
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
 5098   6552   
new file mode 100644
 5099   6553   
index 0000000..cce9925
 5100         -
-- /dev/null
        6554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 5101   6555   
@@ -0,0 +1,6 @@
        6556  +
GET / HTTP/1.1
        6557  +
Host:example.amazonaws.com
        6558  +
X-Amz-Date:20150830T123600Z
        6559  +
X-Amz-Region-Set:us-east-1
        6560  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        6561  +
 5102   6562   
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
 5103   6563   
new file mode 100644
 5104   6564   
index 0000000..600f1d8
 5105         -
-- /dev/null
        6565  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 5106   6566   
@@ -0,0 +1,4 @@
        6567  +
AWS4-ECDSA-P256-SHA256
        6568  +
20150830T123600Z
        6569  +
20150830/service/aws4_request
        6570  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5107   6571   
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
 5108   6572   
new file mode 100644
 5109   6573   
index 0000000..379dcb2
 5110         -
-- /dev/null
        6574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 5111   6575   
@@ -0,0 +1,4 @@
        6576  +
{
        6577  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6578  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6579  +
}
 5112   6580   
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
 5113   6581   
new file mode 100644
 5114   6582   
index 0000000..779c51c
 5115         -
-- /dev/null
        6583  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 5116   6584   
@@ -0,0 +1,7 @@
        6585  +
GET
        6586  +
/
        6587  +
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
        6588  +
host:example.amazonaws.com
        6589  +
        6590  +
host
        6591  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5117   6592   
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
 5118   6593   
new file mode 100644
 5119   6594   
index 0000000..2979e5e
 5120         -
-- /dev/null
        6595  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 5121   6596   
@@ -0,0 +1 @@
        6597  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 5122   6598   
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
 5123   6599   
new file mode 100644
 5124   6600   
index 0000000..1b3179c
 5125         -
-- /dev/null
        6601  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 5126   6602   
@@ -0,0 +1,3 @@
        6603  +
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
        6604  +
Host:example.amazonaws.com
        6605  +
 5127   6606   
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
 5128   6607   
new file mode 100644
 5129   6608   
index 0000000..6e29a7e
 5130         -
-- /dev/null
        6609  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 5131   6610   
@@ -0,0 +1,4 @@
        6611  +
AWS4-ECDSA-P256-SHA256
        6612  +
20150830T123600Z
        6613  +
20150830/service/aws4_request
        6614  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5132   6615   
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
 5133   6616   
similarity index 60%
 5134   6617   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 5135   6618   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5136   6619   
index 0f7a9bf..e659c3b 100644
 5137         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        6620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5138   6621   
@@ -1,3 +1,2 @@
 5139   6622   
GET / HTTP/1.1
 5140   6623   
Host:example.amazonaws.com
 5141         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5142   6624   
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
 5143   6625   
new file mode 100644
 5144   6626   
index 0000000..0468d80
 5145         -
-- /dev/null
        6627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 5146   6628   
@@ -0,0 +1,12 @@
        6629  +
{
        6630  +
    "credentials": {
        6631  +
        "access_key_id": "AKIDEXAMPLE",
        6632  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6633  +
    },
        6634  +
    "expiration_in_seconds": 3600,
        6635  +
    "normalize": true,
        6636  +
    "region": "us-east-1",
        6637  +
    "service": "service",
        6638  +
    "sign_body": false,
        6639  +
    "timestamp": "2015-08-30T12:36:00Z"
        6640  +
}
              \
 No newline at end of file
 5147   6641   
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
 5148   6642   
new file mode 100644
 5149   6643   
index 0000000..8841ddf
 5150         -
-- /dev/null
        6644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 5151   6645   
@@ -0,0 +1,9 @@
        6646  +
GET
        6647  +
/
        6648  +
%E1%88%B4=bar
        6649  +
host:example.amazonaws.com
        6650  +
x-amz-date:20150830T123600Z
        6651  +
x-amz-region-set:us-east-1
        6652  +
        6653  +
host;x-amz-date;x-amz-region-set
        6654  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5152   6655   
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
 5153   6656   
new file mode 100644
 5154   6657   
index 0000000..1497add
 5155         -
-- /dev/null
        6658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 5156   6659   
@@ -0,0 +1 @@
        6660  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 5157   6661   
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
 5158   6662   
new file mode 100644
 5159   6663   
index 0000000..961bc10
 5160         -
-- /dev/null
        6664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 5161   6665   
@@ -0,0 +1,6 @@
        6666  +
GET /?ሴ=bar HTTP/1.1
        6667  +
Host:example.amazonaws.com
        6668  +
X-Amz-Date:20150830T123600Z
        6669  +
X-Amz-Region-Set:us-east-1
        6670  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        6671  +
 5162   6672   
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
 5163   6673   
new file mode 100644
 5164   6674   
index 0000000..e78ed70
 5165         -
-- /dev/null
        6675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 5166   6676   
@@ -0,0 +1,4 @@
        6677  +
AWS4-ECDSA-P256-SHA256
        6678  +
20150830T123600Z
        6679  +
20150830/service/aws4_request
        6680  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 5167   6681   
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
 5168   6682   
new file mode 100644
 5169   6683   
index 0000000..379dcb2
 5170         -
-- /dev/null
        6684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 5171   6685   
@@ -0,0 +1,4 @@
        6686  +
{
        6687  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6688  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6689  +
}
 5172   6690   
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
 5173   6691   
new file mode 100644
 5174   6692   
index 0000000..6d5ae93
 5175         -
-- /dev/null
        6693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 5176   6694   
@@ -0,0 +1,7 @@
        6695  +
GET
        6696  +
/
        6697  +
%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
        6698  +
host:example.amazonaws.com
        6699  +
        6700  +
host
        6701  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5177   6702   
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
 5178   6703   
new file mode 100644
 5179   6704   
index 0000000..92107f2
 5180         -
-- /dev/null
        6705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 5181   6706   
@@ -0,0 +1 @@
        6707  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 5182   6708   
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
 5183   6709   
new file mode 100644
 5184   6710   
index 0000000..bb8a75b
 5185         -
-- /dev/null
        6711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 5186   6712   
@@ -0,0 +1,3 @@
        6713  +
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
        6714  +
Host:example.amazonaws.com
        6715  +
 5187   6716   
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
 5188   6717   
new file mode 100644
 5189   6718   
index 0000000..9fa94c7
 5190         -
-- /dev/null
        6719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 5191   6720   
@@ -0,0 +1,4 @@
        6721  +
AWS4-ECDSA-P256-SHA256
        6722  +
20150830T123600Z
        6723  +
20150830/service/aws4_request
        6724  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 5192   6725   
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
 5193   6726   
new file mode 100644
 5194   6727   
index 0000000..aff333a
 5195         -
-- /dev/null
        6728  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 5196   6729   
@@ -0,0 +1,2 @@
        6730  +
GET /?ሴ=bar HTTP/1.1
        6731  +
Host:example.amazonaws.com
 5197   6732   
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
 5198   6733   
new file mode 100644
 5199   6734   
index 0000000..a334e18
 5200         -
-- /dev/null
        6735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 5201   6736   
@@ -0,0 +1,13 @@
        6737  +
{
        6738  +
    "credentials": {
        6739  +
        "access_key_id": "AKIDEXAMPLE",
        6740  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6741  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6742  +
    },
        6743  +
    "expiration_in_seconds": 3600,
        6744  +
    "normalize": true,
        6745  +
    "region": "us-east-1",
        6746  +
    "service": "service",
        6747  +
    "sign_body": false,
        6748  +
    "timestamp": "2015-08-30T12:36:00Z"
        6749  +
}
              \
 No newline at end of file
 5202   6750   
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
 5203   6751   
similarity index 99%
 5204   6752   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 5205   6753   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5206   6754   
index f14defd..0e9ad42 100644
 5207         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
        6755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5208   6756   
@@ -1,10 +1,10 @@
 5209   6757   
GET
 5210   6758   
/
 5211   6759   
 5212   6760   
host:example.amazonaws.com
 5213   6761   
x-amz-date:20150830T123600Z
 5214   6762   
x-amz-region-set:us-east-1
 5215   6763   
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
 5216   6764   
 5217   6765   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5218         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6766  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5219   6767   
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
 5220   6768   
new file mode 100644
 5221   6769   
index 0000000..a7673b5
 5222         -
-- /dev/null
        6770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 5223   6771   
@@ -0,0 +1 @@
        6772  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 5224   6773   
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
 5225   6774   
new file mode 100644
 5226   6775   
index 0000000..ed16e76
 5227         -
-- /dev/null
        6776  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 5228   6777   
@@ -0,0 +1,7 @@
        6778  +
GET / HTTP/1.1
        6779  +
Host:example.amazonaws.com
        6780  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6781  +
X-Amz-Date:20150830T123600Z
        6782  +
X-Amz-Region-Set:us-east-1
        6783  +
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
        6784  +
 5229   6785   
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
 5230   6786   
similarity index 99%
 5231   6787   
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
 5232   6788   
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
 5233   6789   
index 4edece5..6c1ec65 100644
 5234         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-string-to-sign.txt
        6790  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-string-to-sign.txt
 5235   6791   
@@ -1,4 +1,4 @@
 5236   6792   
AWS4-ECDSA-P256-SHA256
 5237   6793   
20150830T123600Z
 5238   6794   
20150830/service/aws4_request
 5239         -
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
        6795  +
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
              \
 No newline at end of file
 5240   6796   
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
 5241   6797   
new file mode 100644
 5242   6798   
index 0000000..379dcb2
 5243         -
-- /dev/null
        6799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 5244   6800   
@@ -0,0 +1,4 @@
        6801  +
{
        6802  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6803  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6804  +
}
 5245   6805   
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
 5246   6806   
similarity index 99%
 5247   6807   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 5248   6808   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5249   6809   
index 7c042af..1876b42 100644
 5250         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
        6810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5251   6811   
@@ -1,7 +1,7 @@
 5252   6812   
GET
 5253   6813   
/
 5254   6814   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Security-Token=6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267&X-Amz-SignedHeaders=host
 5255   6815   
host:example.amazonaws.com
 5256   6816   
 5257   6817   
host
 5258         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6818  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5259   6819   
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
 5260   6820   
new file mode 100644
 5261   6821   
index 0000000..903dfb4
 5262         -
-- /dev/null
        6822  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 5263   6823   
@@ -0,0 +1 @@
        6824  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 5264   6825   
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
 5265   6826   
new file mode 100644
 5266   6827   
index 0000000..bf1d246
 5267         -
-- /dev/null
        6828  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 5268   6829   
@@ -0,0 +1,3 @@
        6830  +
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
        6831  +
Host:example.amazonaws.com
        6832  +
 5269   6833   
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
 5270   6834   
similarity index 99%
 5271   6835   
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
 5272   6836   
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
 5273   6837   
index 0fd066a..f1b1790 100644
 5274         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-string-to-sign.txt
        6838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-string-to-sign.txt
 5275   6839   
@@ -1,4 +1,4 @@
 5276   6840   
AWS4-ECDSA-P256-SHA256
 5277   6841   
20150830T123600Z
 5278   6842   
20150830/service/aws4_request
 5279         -
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
        6843  +
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
              \
 No newline at end of file
 5280   6844   
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
 5281   6845   
similarity index 60%
 5282   6846   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 5283   6847   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5284   6848   
index 0f7a9bf..e659c3b 100644
 5285         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6849  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5286   6850   
@@ -1,3 +1,2 @@
 5287   6851   
GET / HTTP/1.1
 5288   6852   
Host:example.amazonaws.com
 5289         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5290   6853   
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
 5291   6854   
new file mode 100644
 5292   6855   
index 0000000..76db73d
 5293         -
-- /dev/null
        6856  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 5294   6857   
@@ -0,0 +1,9 @@
        6858  +
GET
        6859  +
/
        6860  +
        6861  +
host:example.amazonaws.com
        6862  +
x-amz-date:20150830T123600Z
        6863  +
x-amz-region-set:us-east-1
        6864  +
        6865  +
host;x-amz-date;x-amz-region-set
        6866  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5295   6867   
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
 5296   6868   
new file mode 100644
 5297   6869   
index 0000000..0468d80
 5298         -
-- /dev/null
        6870  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 5299   6871   
@@ -0,0 +1,12 @@
        6872  +
{
        6873  +
    "credentials": {
        6874  +
        "access_key_id": "AKIDEXAMPLE",
        6875  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6876  +
    },
        6877  +
    "expiration_in_seconds": 3600,
        6878  +
    "normalize": true,
        6879  +
    "region": "us-east-1",
        6880  +
    "service": "service",
        6881  +
    "sign_body": false,
        6882  +
    "timestamp": "2015-08-30T12:36:00Z"
        6883  +
}
              \
 No newline at end of file
 5300   6884   
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
 5301   6885   
new file mode 100644
 5302   6886   
index 0000000..76db73d
 5303         -
-- /dev/null
        6887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 5304   6888   
@@ -0,0 +1,9 @@
        6889  +
GET
        6890  +
/
        6891  +
        6892  +
host:example.amazonaws.com
        6893  +
x-amz-date:20150830T123600Z
        6894  +
x-amz-region-set:us-east-1
        6895  +
        6896  +
host;x-amz-date;x-amz-region-set
        6897  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5305   6898   
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
 5306   6899   
new file mode 100644
 5307   6900   
index 0000000..a96ff24
 5308         -
-- /dev/null
        6901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 5309   6902   
@@ -0,0 +1 @@
        6903  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 5310   6904   
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
 5311   6905   
new file mode 100644
 5312   6906   
index 0000000..689078b
 5313         -
-- /dev/null
        6907  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 5314   6908   
@@ -0,0 +1,6 @@
        6909  +
GET / HTTP/1.1
        6910  +
Host:example.amazonaws.com
        6911  +
X-Amz-Date:20150830T123600Z
        6912  +
X-Amz-Region-Set:us-east-1
        6913  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6914  +
 5315   6915   
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
 5316   6916   
new file mode 100644
 5317   6917   
index 0000000..600f1d8
 5318         -
-- /dev/null
        6918  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 5319   6919   
@@ -0,0 +1,4 @@
        6920  +
AWS4-ECDSA-P256-SHA256
        6921  +
20150830T123600Z
        6922  +
20150830/service/aws4_request
        6923  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5320   6924   
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
 5321   6925   
new file mode 100644
 5322   6926   
index 0000000..379dcb2
 5323         -
-- /dev/null
        6927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 5324   6928   
@@ -0,0 +1,4 @@
        6929  +
{
        6930  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6931  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6932  +
}
 5325   6933   
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
 5326   6934   
new file mode 100644
 5327   6935   
index 0000000..779c51c
 5328         -
-- /dev/null
        6936  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 5329   6937   
@@ -0,0 +1,7 @@
        6938  +
GET
        6939  +
/
        6940  +
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
        6941  +
host:example.amazonaws.com
        6942  +
        6943  +
host
        6944  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5330   6945   
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
 5331   6946   
new file mode 100644
 5332   6947   
index 0000000..cc42158
 5333         -
-- /dev/null
        6948  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 5334   6949   
@@ -0,0 +1 @@
        6950  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 5335   6951   
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
 5336   6952   
new file mode 100644
 5337   6953   
index 0000000..dc6d01d
 5338         -
-- /dev/null
        6954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 5339   6955   
@@ -0,0 +1,3 @@
        6956  +
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
        6957  +
Host:example.amazonaws.com
        6958  +
 5340   6959   
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
 5341   6960   
new file mode 100644
 5342   6961   
index 0000000..6e29a7e
 5343         -
-- /dev/null
        6962  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 5344   6963   
@@ -0,0 +1,4 @@
        6964  +
AWS4-ECDSA-P256-SHA256
        6965  +
20150830T123600Z
        6966  +
20150830/service/aws4_request
        6967  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5345   6968   
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
 5346   6969   
new file mode 100644
 5347   6970   
index 0000000..e659c3b
 5348         -
-- /dev/null
        6971  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 5349   6972   
@@ -0,0 +1,2 @@
        6973  +
GET / HTTP/1.1
        6974  +
Host:example.amazonaws.com
 5350   6975   
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
 5351   6976   
new file mode 100644
 5352   6977   
index 0000000..600f1d8
 5353         -
-- /dev/null
        6978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 5354   6979   
@@ -0,0 +1,4 @@
        6980  +
AWS4-ECDSA-P256-SHA256
        6981  +
20150830T123600Z
        6982  +
20150830/service/aws4_request
        6983  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5355   6984   
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
 5356   6985   
new file mode 100644
 5357   6986   
index 0000000..0468d80
 5358         -
-- /dev/null
        6987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 5359   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": false,
        6999  +
    "timestamp": "2015-08-30T12:36:00Z"
        7000  +
}
              \
 No newline at end of file
 5360   7001   
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
 5361   7002   
similarity index 99%
 5362   7003   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 5363   7004   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5364   7005   
index a6942c1..e881ac7 100644
 5365         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
        7006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5366   7007   
@@ -1,9 +1,9 @@
 5367   7008   
POST
 5368   7009   
/
 5369   7010   
 5370   7011   
host:example.amazonaws.com
 5371   7012   
x-amz-date:20150830T123600Z
 5372   7013   
x-amz-region-set:us-east-1
 5373   7014   
 5374   7015   
host;x-amz-date;x-amz-region-set
 5375         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7016  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5376   7017   
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
 5377   7018   
new file mode 100644
 5378   7019   
index 0000000..4210210
 5379         -
-- /dev/null
        7020  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 5380   7021   
@@ -0,0 +1 @@
        7022  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 5381   7023   
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
 5382   7024   
new file mode 100644
 5383   7025   
index 0000000..257b110
 5384         -
-- /dev/null
        7026  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 5385   7027   
@@ -0,0 +1,6 @@
        7028  +
POST / HTTP/1.1
        7029  +
Host:example.amazonaws.com
        7030  +
X-Amz-Date:20150830T123600Z
        7031  +
X-Amz-Region-Set:us-east-1
        7032  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        7033  +
 5386   7034   
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
 5387   7035   
similarity index 99%
 5388   7036   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 5389   7037   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5390   7038   
index d5650cb..f8adf13 100644
 5391         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
        7039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5392   7040   
@@ -1,4 +1,4 @@
 5393   7041   
AWS4-ECDSA-P256-SHA256
 5394   7042   
20150830T123600Z
 5395   7043   
20150830/service/aws4_request
 5396         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7044  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5397   7045   
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
 5398   7046   
new file mode 100644
 5399   7047   
index 0000000..379dcb2
 5400         -
-- /dev/null
        7048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 5401   7049   
@@ -0,0 +1,4 @@
        7050  +
{
        7051  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7052  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7053  +
}
 5402   7054   
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
 5403   7055   
similarity index 99%
 5404   7056   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 5405   7057   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5406   7058   
index e48ce07..5ea8e3c 100644
 5407         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
        7059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5408   7060   
@@ -1,7 +1,7 @@
 5409   7061   
POST
 5410   7062   
/
 5411   7063   
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
 5412   7064   
host:example.amazonaws.com
 5413   7065   
 5414   7066   
host
 5415         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7067  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5416   7068   
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
 5417   7069   
new file mode 100644
 5418   7070   
index 0000000..9e2069e
 5419         -
-- /dev/null
        7071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 5420   7072   
@@ -0,0 +1 @@
        7073  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 5421   7074   
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
 5422   7075   
new file mode 100644
 5423   7076   
index 0000000..67f5d29
 5424         -
-- /dev/null
        7077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 5425   7078   
@@ -0,0 +1,3 @@
        7079  +
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
        7080  +
Host:example.amazonaws.com
        7081  +
 5426   7082   
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
 5427   7083   
similarity index 99%
 5428   7084   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 5429   7085   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5430   7086   
index 34e3382..711c162 100644
 5431         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
        7087  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5432   7088   
@@ -1,4 +1,4 @@
 5433   7089   
AWS4-ECDSA-P256-SHA256
 5434   7090   
20150830T123600Z
 5435   7091   
20150830/service/aws4_request
 5436         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7092  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5437   7093   
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
 5438   7094   
similarity index 61%
 5439   7095   
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
 5440   7096   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5441   7097   
index 3dc4179..3f0a82a 100644
 5442         -
-- 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
        7098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5443   7099   
@@ -1,3 +1,2 @@
 5444   7100   
POST / HTTP/1.1
 5445   7101   
Host:example.amazonaws.com
 5446         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5447   7102   
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
 5448   7103   
new file mode 100644
 5449   7104   
index 0000000..0468d80
 5450         -
-- /dev/null
        7105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 5451   7106   
@@ -0,0 +1,12 @@
        7107  +
{
        7108  +
    "credentials": {
        7109  +
        "access_key_id": "AKIDEXAMPLE",
        7110  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7111  +
    },
        7112  +
    "expiration_in_seconds": 3600,
        7113  +
    "normalize": true,
        7114  +
    "region": "us-east-1",
        7115  +
    "service": "service",
        7116  +
    "sign_body": false,
        7117  +
    "timestamp": "2015-08-30T12:36:00Z"
        7118  +
}
              \
 No newline at end of file
 5452   7119   
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
 5453   7120   
similarity index 99%
 5454   7121   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 5455   7122   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5456   7123   
index a8e1727..2883822 100644
 5457         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
        7124  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5458   7125   
@@ -1,10 +1,10 @@
 5459   7126   
POST
 5460   7127   
/
 5461   7128   
 5462   7129   
host:example.amazonaws.com
 5463   7130   
my-header1:value1
 5464   7131   
x-amz-date:20150830T123600Z
 5465   7132   
x-amz-region-set:us-east-1
 5466   7133   
 5467   7134   
host;my-header1;x-amz-date;x-amz-region-set
 5468         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7135  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5469   7136   
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
 5470   7137   
new file mode 100644
 5471   7138   
index 0000000..e3c2e6e
 5472         -
-- /dev/null
        7139  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 5473   7140   
@@ -0,0 +1 @@
        7141  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 5474   7142   
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
 5475   7143   
new file mode 100644
 5476   7144   
index 0000000..1d6e288
 5477         -
-- /dev/null
        7145  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 5478   7146   
@@ -0,0 +1,7 @@
        7147  +
POST / HTTP/1.1
        7148  +
Host:example.amazonaws.com
        7149  +
My-Header1:value1
        7150  +
X-Amz-Date:20150830T123600Z
        7151  +
X-Amz-Region-Set:us-east-1
        7152  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        7153  +
 5479   7154   
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
 5480   7155   
similarity index 99%
 5481   7156   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 5482   7157   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5483   7158   
index f6e3e9b..7c5236a 100644
 5484         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
        7159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5485   7160   
@@ -1,4 +1,4 @@
 5486   7161   
AWS4-ECDSA-P256-SHA256
 5487   7162   
20150830T123600Z
 5488   7163   
20150830/service/aws4_request
 5489         -
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
        7164  +
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
              \
 No newline at end of file
 5490   7165   
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
 5491   7166   
new file mode 100644
 5492   7167   
index 0000000..379dcb2
 5493         -
-- /dev/null
        7168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 5494   7169   
@@ -0,0 +1,4 @@
        7170  +
{
        7171  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7172  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7173  +
}
 5495   7174   
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
 5496   7175   
similarity index 99%
 5497   7176   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 5498   7177   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5499   7178   
index 0ae73e1..2cf3f29 100644
 5500         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
        7179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5501   7180   
@@ -1,8 +1,8 @@
 5502   7181   
POST
 5503   7182   
/
 5504   7183   
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
 5505   7184   
host:example.amazonaws.com
 5506   7185   
my-header1:value1
 5507   7186   
 5508   7187   
host;my-header1
 5509         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7188  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5510   7189   
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
 5511   7190   
new file mode 100644
 5512   7191   
index 0000000..2a08401
 5513         -
-- /dev/null
        7192  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 5514   7193   
@@ -0,0 +1 @@
        7194  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 5515   7195   
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
 5516   7196   
new file mode 100644
 5517   7197   
index 0000000..8d2343f
 5518         -
-- /dev/null
        7198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 5519   7199   
@@ -0,0 +1,4 @@
        7200  +
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
        7201  +
Host:example.amazonaws.com
        7202  +
My-Header1:value1
        7203  +
 5520   7204   
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
 5521   7205   
similarity index 99%
 5522   7206   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 5523   7207   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5524   7208   
index 8cb96bf..2c4db7a 100644
 5525         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
        7209  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5526   7210   
@@ -1,4 +1,4 @@
 5527   7211   
AWS4-ECDSA-P256-SHA256
 5528   7212   
20150830T123600Z
 5529   7213   
20150830/service/aws4_request
 5530         -
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
        7214  +
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
              \
 No newline at end of file
 5531   7215   
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
 5532   7216   
similarity index 69%
 5533   7217   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 5534   7218   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5535   7219   
index 0253f19..917720e 100644
 5536         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        7220  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5537   7221   
@@ -1,4 +1,3 @@
 5538   7222   
POST / HTTP/1.1
 5539   7223   
Host:example.amazonaws.com
 5540   7224   
My-Header1:value1
 5541         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5542   7225   
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
 5543   7226   
new file mode 100644
 5544   7227   
index 0000000..0468d80
 5545         -
-- /dev/null
        7228  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 5546   7229   
@@ -0,0 +1,12 @@
        7230  +
{
        7231  +
    "credentials": {
        7232  +
        "access_key_id": "AKIDEXAMPLE",
        7233  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7234  +
    },
        7235  +
    "expiration_in_seconds": 3600,
        7236  +
    "normalize": true,
        7237  +
    "region": "us-east-1",
        7238  +
    "service": "service",
        7239  +
    "sign_body": false,
        7240  +
    "timestamp": "2015-08-30T12:36:00Z"
        7241  +
}
              \
 No newline at end of file
 5547   7242   
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
 5548   7243   
similarity index 99%
 5549   7244   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 5550   7245   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5551   7246   
index 1dc3ef8..164e65c 100644
 5552         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
        7247  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5553   7248   
@@ -1,10 +1,10 @@
 5554   7249   
POST
 5555   7250   
/
 5556   7251   
 5557   7252   
host:example.amazonaws.com
 5558   7253   
my-header1:VALUE1
 5559   7254   
x-amz-date:20150830T123600Z
 5560   7255   
x-amz-region-set:us-east-1
 5561   7256   
 5562   7257   
host;my-header1;x-amz-date;x-amz-region-set
 5563         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7258  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5564   7259   
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
 5565   7260   
new file mode 100644
 5566   7261   
index 0000000..7072b0e
 5567         -
-- /dev/null
        7262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 5568   7263   
@@ -0,0 +1 @@
        7264  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 5569   7265   
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
 5570   7266   
new file mode 100644
 5571   7267   
index 0000000..17f5e3e
 5572         -
-- /dev/null
        7268  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 5573   7269   
@@ -0,0 +1,7 @@
        7270  +
POST / HTTP/1.1
        7271  +
Host:example.amazonaws.com
        7272  +
My-Header1:VALUE1
        7273  +
X-Amz-Date:20150830T123600Z
        7274  +
X-Amz-Region-Set:us-east-1
        7275  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        7276  +
 5574   7277   
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
 5575   7278   
similarity index 99%
 5576   7279   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 5577   7280   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5578   7281   
index 59c7e45..620f54e 100644
 5579         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
        7282  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5580   7283   
@@ -1,4 +1,4 @@
 5581   7284   
AWS4-ECDSA-P256-SHA256
 5582   7285   
20150830T123600Z
 5583   7286   
20150830/service/aws4_request
 5584         -
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
        7287  +
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
              \
 No newline at end of file
 5585   7288   
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
 5586   7289   
new file mode 100644
 5587   7290   
index 0000000..379dcb2
 5588         -
-- /dev/null
        7291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 5589   7292   
@@ -0,0 +1,4 @@
        7293  +
{
        7294  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7295  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7296  +
}
 5590   7297   
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
 5591   7298   
similarity index 99%
 5592   7299   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 5593   7300   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5594   7301   
index 377e6f3..23e0da3 100644
 5595         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
        7302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5596   7303   
@@ -1,8 +1,8 @@
 5597   7304   
POST
 5598   7305   
/
 5599   7306   
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
 5600   7307   
host:example.amazonaws.com
 5601   7308   
my-header1:VALUE1
 5602   7309   
 5603   7310   
host;my-header1
 5604         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7311  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5605   7312   
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
 5606   7313   
new file mode 100644
 5607   7314   
index 0000000..a18acb8
 5608         -
-- /dev/null
        7315  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 5609   7316   
@@ -0,0 +1 @@
        7317  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 5610   7318   
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
 5611   7319   
new file mode 100644
 5612   7320   
index 0000000..7cbdcfa
 5613         -
-- /dev/null
        7321  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 5614   7322   
@@ -0,0 +1,4 @@
        7323  +
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
        7324  +
Host:example.amazonaws.com
        7325  +
My-Header1:VALUE1
        7326  +
 5615   7327   
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
 5616   7328   
similarity index 99%
 5617   7329   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 5618   7330   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5619   7331   
index 84a7afd..0c90627 100644
 5620         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
        7332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5621   7333   
@@ -1,4 +1,4 @@
 5622   7334   
AWS4-ECDSA-P256-SHA256
 5623   7335   
20150830T123600Z
 5624   7336   
20150830/service/aws4_request
 5625         -
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
        7337  +
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
              \
 No newline at end of file
 5626   7338   
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
 5627   7339   
similarity index 69%
 5628   7340   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 5629   7341   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5630   7342   
index 3f9987a..5f14c91 100644
 5631         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        7343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5632   7344   
@@ -1,4 +1,3 @@
 5633   7345   
POST / HTTP/1.1
 5634   7346   
Host:example.amazonaws.com
 5635   7347   
My-Header1:VALUE1
 5636         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5637   7348   
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
 5638   7349   
new file mode 100644
 5639   7350   
index 0000000..8f1d5ce
 5640         -
-- /dev/null
        7351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 5641   7352   
@@ -0,0 +1,14 @@
        7353  +
{
        7354  +
    "credentials": {
        7355  +
        "access_key_id": "AKIDEXAMPLE",
        7356  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7357  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7358  +
    },
        7359  +
    "expiration_in_seconds": 3600,
        7360  +
    "normalize": true,
        7361  +
    "region": "us-east-1",
        7362  +
    "service": "service",
        7363  +
    "sign_body": false,
        7364  +
    "timestamp": "2015-08-30T12:36:00Z",
        7365  +
    "omit_session_token": true
        7366  +
}
 5642   7367   
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
 5643   7368   
similarity index 99%
 5644   7369   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 5645   7370   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5646   7371   
index a6942c1..e881ac7 100644
 5647         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
        7372  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5648   7373   
@@ -1,9 +1,9 @@
 5649   7374   
POST
 5650   7375   
/
 5651   7376   
 5652   7377   
host:example.amazonaws.com
 5653   7378   
x-amz-date:20150830T123600Z
 5654   7379   
x-amz-region-set:us-east-1
 5655   7380   
 5656   7381   
host;x-amz-date;x-amz-region-set
 5657         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7382  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5658   7383   
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
 5659   7384   
new file mode 100644
 5660   7385   
index 0000000..9c5ecb9
 5661         -
-- /dev/null
        7386  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 5662   7387   
@@ -0,0 +1 @@
        7388  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 5663   7389   
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
 5664   7390   
similarity index 52%
 5665   7391   
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
 5666   7392   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5667   7393   
index 9d91775..61b6527 100644
 5668         -
-- 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
        7394  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5669   7395   
@@ -1,4 +1,7 @@
 5670   7396   
POST / HTTP/1.1
 5671   7397   
Host:example.amazonaws.com
        7398  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5672   7399   
X-Amz-Date:20150830T123600Z
 5673         -
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
        7400  +
X-Amz-Region-Set:us-east-1
        7401  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        7402  +
 5674   7403   
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
 5675   7404   
similarity index 99%
 5676   7405   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 5677   7406   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5678   7407   
index d5650cb..f8adf13 100644
 5679         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
        7408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5680   7409   
@@ -1,4 +1,4 @@
 5681   7410   
AWS4-ECDSA-P256-SHA256
 5682   7411   
20150830T123600Z
 5683   7412   
20150830/service/aws4_request
 5684         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7413  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5685   7414   
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
 5686   7415   
new file mode 100644
 5687   7416   
index 0000000..379dcb2
 5688         -
-- /dev/null
        7417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 5689   7418   
@@ -0,0 +1,4 @@
        7419  +
{
        7420  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7421  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7422  +
}
 5690   7423   
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
 5691   7424   
similarity index 99%
 5692   7425   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 5693   7426   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5694   7427   
index e48ce07..5ea8e3c 100644
 5695         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
        7428  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5696   7429   
@@ -1,7 +1,7 @@
 5697   7430   
POST
 5698   7431   
/
 5699   7432   
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
 5700   7433   
host:example.amazonaws.com
 5701   7434   
 5702   7435   
host
 5703         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7436  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5704   7437   
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
 5705   7438   
new file mode 100644
 5706   7439   
index 0000000..ff8823a
 5707         -
-- /dev/null
        7440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 5708   7441   
@@ -0,0 +1 @@
        7442  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 5709   7443   
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
 5710   7444   
new file mode 100644
 5711   7445   
index 0000000..cfac41b
 5712         -
-- /dev/null
        7446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 5713   7447   
@@ -0,0 +1,3 @@
        7448  +
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
        7449  +
Host:example.amazonaws.com
        7450  +
 5714   7451   
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
 5715   7452   
similarity index 99%
 5716   7453   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 5717   7454   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5718   7455   
index 34e3382..711c162 100644
 5719         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
        7456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5720   7457   
@@ -1,4 +1,4 @@
 5721   7458   
AWS4-ECDSA-P256-SHA256
 5722   7459   
20150830T123600Z
 5723   7460   
20150830/service/aws4_request
 5724         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7461  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5725   7462   
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
 5726   7463   
similarity index 61%
 5727   7464   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 5728   7465   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5729   7466   
index 3dc4179..3f0a82a 100644
 5730         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        7467  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5731   7468   
@@ -1,3 +1,2 @@
 5732   7469   
POST / HTTP/1.1
 5733   7470   
Host:example.amazonaws.com
 5734         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5735   7471   
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
 5736   7472   
new file mode 100644
 5737   7473   
index 0000000..5187392
 5738         -
-- /dev/null
        7474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 5739   7475   
@@ -0,0 +1,14 @@
        7476  +
{
        7477  +
    "credentials": {
        7478  +
        "access_key_id": "AKIDEXAMPLE",
        7479  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7480  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7481  +
    },
        7482  +
    "expiration_in_seconds": 3600,
        7483  +
    "normalize": true,
        7484  +
    "region": "us-east-1",
        7485  +
    "service": "service",
        7486  +
    "sign_body": false,
        7487  +
    "timestamp": "2015-08-30T12:36:00Z",
        7488  +
    "omit_session_token": false
        7489  +
}
 5740   7490   
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
 5741   7491   
similarity index 99%
 5742   7492   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 5743   7493   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5744   7494   
index dd408c8..e95924e 100644
 5745         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
        7495  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5746   7496   
@@ -1,10 +1,10 @@
 5747   7497   
POST
 5748   7498   
/
 5749   7499   
 5750   7500   
host:example.amazonaws.com
 5751   7501   
x-amz-date:20150830T123600Z
 5752   7502   
x-amz-region-set:us-east-1
 5753   7503   
x-amz-security-token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5754   7504   
 5755   7505   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5756         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7506  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5757   7507   
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
 5758   7508   
new file mode 100644
 5759   7509   
index 0000000..1573f07
 5760         -
-- /dev/null
        7510  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 5761   7511   
@@ -0,0 +1 @@
        7512  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 5762   7513   
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
 5763   7514   
new file mode 100644
 5764   7515   
index 0000000..6ef9a08
 5765         -
-- /dev/null
        7516  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 5766   7517   
@@ -0,0 +1,7 @@
        7518  +
POST / HTTP/1.1
        7519  +
Host:example.amazonaws.com
        7520  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        7521  +
X-Amz-Date:20150830T123600Z
        7522  +
X-Amz-Region-Set:us-east-1
        7523  +
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
        7524  +
 5767   7525   
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
 5768   7526   
similarity index 99%
 5769   7527   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 5770   7528   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5771   7529   
index f352b54..3c3235f 100644
 5772         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
        7530  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5773   7531   
@@ -1,4 +1,4 @@
 5774   7532   
AWS4-ECDSA-P256-SHA256
 5775   7533   
20150830T123600Z
 5776   7534   
20150830/service/aws4_request
 5777         -
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
        7535  +
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
              \
 No newline at end of file
 5778   7536   
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
 5779   7537   
new file mode 100644
 5780   7538   
index 0000000..379dcb2
 5781         -
-- /dev/null
        7539  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 5782   7540   
@@ -0,0 +1,4 @@
        7541  +
{
        7542  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7543  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7544  +
}
 5783   7545   
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
 5784   7546   
similarity index 99%
 5785   7547   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 5786   7548   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5787   7549   
index 832cdc0..63b7de5 100644
 5788         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
        7550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5789   7551   
@@ -1,7 +1,7 @@
 5790   7552   
POST
 5791   7553   
/
 5792   7554   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-SignedHeaders=host
 5793   7555   
host:example.amazonaws.com
 5794   7556   
 5795   7557   
host
 5796         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7558  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5797   7559   
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
 5798   7560   
new file mode 100644
 5799   7561   
index 0000000..713f57c
 5800         -
-- /dev/null
        7562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 5801   7563   
@@ -0,0 +1 @@
        7564  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 5802   7565   
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
 5803   7566   
new file mode 100644
 5804   7567   
index 0000000..32c3bb3
 5805         -
-- /dev/null
        7568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 5806   7569   
@@ -0,0 +1,3 @@
        7570  +
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
        7571  +
Host:example.amazonaws.com
        7572  +
 5807   7573   
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
 5808   7574   
similarity index 99%
 5809   7575   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 5810   7576   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5811   7577   
index d7f3668..b46cd8c 100644
 5812         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
        7578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5813   7579   
@@ -1,4 +1,4 @@
 5814   7580   
AWS4-ECDSA-P256-SHA256
 5815   7581   
20150830T123600Z
 5816   7582   
20150830/service/aws4_request
 5817         -
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
        7583  +
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
              \
 No newline at end of file
 5818   7584   
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
 5819   7585   
similarity index 60%
 5820   7586   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 5821   7587   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5822   7588   
index 8b5efc8..3f0a82a 100644
 5823         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        7589  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5824   7590   
@@ -1,3 +1,2 @@
 5825   7591   
POST / HTTP/1.1
 5826   7592   
Host:example.amazonaws.com
 5827         -
X-Amz-Date:20150830T123600Z
 5828   7593   
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
 5829   7594   
new file mode 100644
 5830   7595   
index 0000000..0468d80
 5831         -
-- /dev/null
        7596  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 5832   7597   
@@ -0,0 +1,12 @@
        7598  +
{
        7599  +
    "credentials": {
        7600  +
        "access_key_id": "AKIDEXAMPLE",
        7601  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7602  +
    },
        7603  +
    "expiration_in_seconds": 3600,
        7604  +
    "normalize": true,
        7605  +
    "region": "us-east-1",
        7606  +
    "service": "service",
        7607  +
    "sign_body": false,
        7608  +
    "timestamp": "2015-08-30T12:36:00Z"
        7609  +
}
              \
 No newline at end of file
 5833   7610   
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
 5834   7611   
similarity index 99%
 5835   7612   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 5836   7613   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5837   7614   
index 02af60f..34b8c11 100644
 5838         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
        7615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5839   7616   
@@ -1,9 +1,9 @@
 5840   7617   
POST
 5841   7618   
/
 5842   7619   
Param1=value1
 5843   7620   
host:example.amazonaws.com
 5844   7621   
x-amz-date:20150830T123600Z
 5845   7622   
x-amz-region-set:us-east-1
 5846   7623   
 5847   7624   
host;x-amz-date;x-amz-region-set
 5848         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7625  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5849   7626   
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
 5850   7627   
new file mode 100644
 5851   7628   
index 0000000..aac6427
 5852         -
-- /dev/null
        7629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 5853   7630   
@@ -0,0 +1 @@
        7631  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 5854   7632   
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
 5855   7633   
new file mode 100644
 5856   7634   
index 0000000..a611436
 5857         -
-- /dev/null
        7635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 5858   7636   
@@ -0,0 +1,6 @@
        7637  +
POST /?Param1=value1 HTTP/1.1
        7638  +
Host:example.amazonaws.com
        7639  +
X-Amz-Date:20150830T123600Z
        7640  +
X-Amz-Region-Set:us-east-1
        7641  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        7642  +
 5859   7643   
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
 5860   7644   
similarity index 99%
 5861   7645   
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
 5862   7646   
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
 5863   7647   
index 4256b4f..ad88dff 100644
 5864         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt
        7648  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
 5865   7649   
@@ -1,4 +1,4 @@
 5866   7650   
AWS4-ECDSA-P256-SHA256
 5867   7651   
20150830T123600Z
 5868   7652   
20150830/service/aws4_request
 5869         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7653  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 5870   7654   
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
 5871   7655   
new file mode 100644
 5872   7656   
index 0000000..379dcb2
 5873         -
-- /dev/null
        7657  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 5874   7658   
@@ -0,0 +1,4 @@
        7659  +
{
        7660  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7661  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7662  +
}
 5875   7663   
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
 5876   7664   
similarity index 99%
 5877   7665   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 5878   7666   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5879   7667   
index fa84bbd..76d5ad6 100644
 5880         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
        7668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5881   7669   
@@ -1,7 +1,7 @@
 5882   7670   
POST
 5883   7671   
/
 5884   7672   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5885   7673   
host:example.amazonaws.com
 5886   7674   
 5887   7675   
host
 5888         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7676  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5889   7677   
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
 5890   7678   
new file mode 100644
 5891   7679   
index 0000000..4cb1c94
 5892         -
-- /dev/null
        7680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 5893   7681   
@@ -0,0 +1 @@
        7682  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 5894   7683   
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
 5895   7684   
new file mode 100644
 5896   7685   
index 0000000..bd22b97
 5897         -
-- /dev/null
        7686  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 5898   7687   
@@ -0,0 +1,3 @@
        7688  +
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
        7689  +
Host:example.amazonaws.com
        7690  +
 5899   7691   
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
 5900   7692   
similarity index 99%
 5901   7693   
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
 5902   7694   
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
 5903   7695   
index de270ef..8c9d319 100644
 5904         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt
        7696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
 5905   7697   
@@ -1,4 +1,4 @@
 5906   7698   
AWS4-ECDSA-P256-SHA256
 5907   7699   
20150830T123600Z
 5908   7700   
20150830/service/aws4_request
 5909         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7701  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 5910   7702   
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
 5911   7703   
similarity index 67%
 5912   7704   
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
 5913   7705   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5914   7706   
index 9157bc7..c9d6e5d 100644
 5915         -
-- 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
        7707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5916   7708   
@@ -1,3 +1,2 @@
 5917   7709   
POST /?Param1=value1 HTTP/1.1
 5918   7710   
Host:example.amazonaws.com
 5919         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5920   7711   
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
 5921   7712   
new file mode 100644
 5922   7713   
index 0000000..0468d80
 5923         -
-- /dev/null
        7714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 5924   7715   
@@ -0,0 +1,12 @@
        7716  +
{
        7717  +
    "credentials": {
        7718  +
        "access_key_id": "AKIDEXAMPLE",
        7719  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7720  +
    },
        7721  +
    "expiration_in_seconds": 3600,
        7722  +
    "normalize": true,
        7723  +
    "region": "us-east-1",
        7724  +
    "service": "service",
        7725  +
    "sign_body": false,
        7726  +
    "timestamp": "2015-08-30T12:36:00Z"
        7727  +
}
              \
 No newline at end of file
 5925   7728   
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
 5926   7729   
similarity index 99%
 5927   7730   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 5928   7731   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5929   7732   
index 02af60f..34b8c11 100644
 5930         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
        7733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5931   7734   
@@ -1,9 +1,9 @@
 5932   7735   
POST
 5933   7736   
/
 5934   7737   
Param1=value1
 5935   7738   
host:example.amazonaws.com
 5936   7739   
x-amz-date:20150830T123600Z
 5937   7740   
x-amz-region-set:us-east-1
 5938   7741   
 5939   7742   
host;x-amz-date;x-amz-region-set
 5940         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7743  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5941   7744   
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
 5942   7745   
new file mode 100644
 5943   7746   
index 0000000..34f75c8
 5944         -
-- /dev/null
        7747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 5945   7748   
@@ -0,0 +1 @@
        7749  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 5946   7750   
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
 5947   7751   
new file mode 100644
 5948   7752   
index 0000000..c731408
 5949         -
-- /dev/null
        7753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 5950   7754   
@@ -0,0 +1,6 @@
        7755  +
POST /?Param1=value1 HTTP/1.1
        7756  +
Host:example.amazonaws.com
        7757  +
X-Amz-Date:20150830T123600Z
        7758  +
X-Amz-Region-Set:us-east-1
        7759  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        7760  +
 5951   7761   
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
 5952   7762   
similarity index 99%
 5953   7763   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 5954   7764   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5955   7765   
index 4256b4f..ad88dff 100644
 5956         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
        7766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5957   7767   
@@ -1,4 +1,4 @@
 5958   7768   
AWS4-ECDSA-P256-SHA256
 5959   7769   
20150830T123600Z
 5960   7770   
20150830/service/aws4_request
 5961         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7771  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 5962   7772   
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
 5963   7773   
new file mode 100644
 5964   7774   
index 0000000..379dcb2
 5965         -
-- /dev/null
        7775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 5966   7776   
@@ -0,0 +1,4 @@
        7777  +
{
        7778  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7779  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7780  +
}
 5967   7781   
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
 5968   7782   
similarity index 99%
 5969   7783   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 5970   7784   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 5971   7785   
index fa84bbd..76d5ad6 100644
 5972         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
        7786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 5973   7787   
@@ -1,7 +1,7 @@
 5974   7788   
POST
 5975   7789   
/
 5976   7790   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5977   7791   
host:example.amazonaws.com
 5978   7792   
 5979   7793   
host
 5980         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7794  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5981   7795   
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
 5982   7796   
new file mode 100644
 5983   7797   
index 0000000..ae000d6
 5984         -
-- /dev/null
        7798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 5985   7799   
@@ -0,0 +1 @@
        7800  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 5986   7801   
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
 5987   7802   
new file mode 100644
 5988   7803   
index 0000000..a868f7d
 5989         -
-- /dev/null
        7804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 5990   7805   
@@ -0,0 +1,3 @@
        7806  +
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
        7807  +
Host:example.amazonaws.com
        7808  +
 5991   7809   
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
 5992   7810   
similarity index 99%
 5993   7811   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 5994   7812   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 5995   7813   
index de270ef..8c9d319 100644
 5996         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
        7814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 5997   7815   
@@ -1,4 +1,4 @@
 5998   7816   
AWS4-ECDSA-P256-SHA256
 5999   7817   
20150830T123600Z
 6000   7818   
20150830/service/aws4_request
 6001         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7819  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 6002   7820   
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
 6003   7821   
similarity index 67%
 6004   7822   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 6005   7823   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6006   7824   
index 9157bc7..c9d6e5d 100644
 6007         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        7825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6008   7826   
@@ -1,3 +1,2 @@
 6009   7827   
POST /?Param1=value1 HTTP/1.1
 6010   7828   
Host:example.amazonaws.com
 6011         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 6012   7829   
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
 6013   7830   
new file mode 100644
 6014   7831   
index 0000000..0468d80
 6015         -
-- /dev/null
        7832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 6016   7833   
@@ -0,0 +1,12 @@
        7834  +
{
        7835  +
    "credentials": {
        7836  +
        "access_key_id": "AKIDEXAMPLE",
        7837  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7838  +
    },
        7839  +
    "expiration_in_seconds": 3600,
        7840  +
    "normalize": true,
        7841  +
    "region": "us-east-1",
        7842  +
    "service": "service",
        7843  +
    "sign_body": false,
        7844  +
    "timestamp": "2015-08-30T12:36:00Z"
        7845  +
}
              \
 No newline at end of file
 6017   7846   
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
 6018   7847   
similarity index 99%
 6019   7848   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 6020   7849   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6021   7850   
index a6942c1..e881ac7 100644
 6022         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
        7851  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6023   7852   
@@ -1,9 +1,9 @@
 6024   7853   
POST
 6025   7854   
/
 6026   7855   
 6027   7856   
host:example.amazonaws.com
 6028   7857   
x-amz-date:20150830T123600Z
 6029   7858   
x-amz-region-set:us-east-1
 6030   7859   
 6031   7860   
host;x-amz-date;x-amz-region-set
 6032         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7861  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6033   7862   
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
 6034   7863   
new file mode 100644
 6035   7864   
index 0000000..7c5e47b
 6036         -
-- /dev/null
        7865  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 6037   7866   
@@ -0,0 +1 @@
        7867  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 6038   7868   
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
 6039   7869   
new file mode 100644
 6040   7870   
index 0000000..c0e50a0
 6041         -
-- /dev/null
        7871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 6042   7872   
@@ -0,0 +1,6 @@
        7873  +
POST / HTTP/1.1
        7874  +
Host:example.amazonaws.com
        7875  +
X-Amz-Date:20150830T123600Z
        7876  +
X-Amz-Region-Set:us-east-1
        7877  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        7878  +
 6043   7879   
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
 6044   7880   
similarity index 99%
 6045   7881   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 6046   7882   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6047   7883   
index d5650cb..f8adf13 100644
 6048         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
        7884  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6049   7885   
@@ -1,4 +1,4 @@
 6050   7886   
AWS4-ECDSA-P256-SHA256
 6051   7887   
20150830T123600Z
 6052   7888   
20150830/service/aws4_request
 6053         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7889  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 6054   7890   
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
 6055   7891   
new file mode 100644
 6056   7892   
index 0000000..379dcb2
 6057         -
-- /dev/null
        7893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 6058   7894   
@@ -0,0 +1,4 @@
        7895  +
{
        7896  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7897  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7898  +
}
 6059   7899   
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
 6060   7900   
similarity index 99%
 6061   7901   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 6062   7902   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6063   7903   
index e48ce07..5ea8e3c 100644
 6064         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
        7904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6065   7905   
@@ -1,7 +1,7 @@
 6066   7906   
POST
 6067   7907   
/
 6068   7908   
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
 6069   7909   
host:example.amazonaws.com
 6070   7910   
 6071   7911   
host
 6072         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7912  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6073   7913   
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
 6074   7914   
new file mode 100644
 6075   7915   
index 0000000..ea8e3b4
 6076         -
-- /dev/null
        7916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 6077   7917   
@@ -0,0 +1 @@
        7918  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 6078   7919   
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
 6079   7920   
new file mode 100644
 6080   7921   
index 0000000..616973f
 6081         -
-- /dev/null
        7922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 6082   7923   
@@ -0,0 +1,3 @@
        7924  +
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
        7925  +
Host:example.amazonaws.com
        7926  +
 6083   7927   
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
 6084   7928   
similarity index 99%
 6085   7929   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 6086   7930   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6087   7931   
index 34e3382..711c162 100644
 6088         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
        7932  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6089   7933   
@@ -1,4 +1,4 @@
 6090   7934   
AWS4-ECDSA-P256-SHA256
 6091   7935   
20150830T123600Z
 6092   7936   
20150830/service/aws4_request
 6093         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7937  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 6094   7938   
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
 6095   7939   
new file mode 100644
 6096   7940   
index 0000000..3f0a82a
 6097         -
-- /dev/null
        7941  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 6098   7942   
@@ -0,0 +1,2 @@
        7943  +
POST / HTTP/1.1
        7944  +
Host:example.amazonaws.com
 6099   7945   
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
 6100   7946   
new file mode 100644
 6101   7947   
index 0000000..0db1df1
 6102         -
-- /dev/null
        7948  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 6103   7949   
@@ -0,0 +1,12 @@
        7950  +
{
        7951  +
    "credentials": {
        7952  +
        "access_key_id": "AKIDEXAMPLE",
        7953  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7954  +
    },
        7955  +
    "expiration_in_seconds": 3600,
        7956  +
    "normalize": true,
        7957  +
    "region": "us-east-1",
        7958  +
    "service": "service",
        7959  +
    "sign_body": true,
        7960  +
    "timestamp": "2015-08-30T12:36:00Z"
        7961  +
}
              \
 No newline at end of file
 6104   7962   
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
 6105   7963   
similarity index 62%
 6106   7964   
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
 6107   7965   
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
 6108   7966   
index 05ab787..62639b2 100644
 6109         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        7967  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 6110   7968   
@@ -1,12 +1,12 @@
 6111   7969   
POST
 6112   7970   
/
 6113   7971   
 6114   7972   
content-length:13
 6115   7973   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6116   7974   
host:example.amazonaws.com
 6117         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7975  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6118   7976   
x-amz-date:20150830T123600Z
 6119   7977   
x-amz-region-set:us-east-1
 6120   7978   
 6121   7979   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6122         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7980  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6123   7981   
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
 6124   7982   
new file mode 100644
 6125   7983   
index 0000000..006ec2e
 6126         -
-- /dev/null
        7984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 6127   7985   
@@ -0,0 +1 @@
        7986  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 6128   7987   
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
 6129   7988   
new file mode 100644
 6130   7989   
index 0000000..87a11f2
 6131         -
-- /dev/null
        7990  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 6132   7991   
@@ -0,0 +1,10 @@
        7992  +
POST / HTTP/1.1
        7993  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7994  +
Host:example.amazonaws.com
        7995  +
Content-Length:13
        7996  +
X-Amz-Date:20150830T123600Z
        7997  +
X-Amz-Region-Set:us-east-1
        7998  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7999  +
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
        8000  +
        8001  +
Param1=value1
              \
 No newline at end of file
 6133   8002   
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
 6134   8003   
new file mode 100644
 6135   8004   
index 0000000..c047afb
 6136         -
-- /dev/null
        8005  +
++ 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
 6137   8006   
@@ -0,0 +1,4 @@
        8007  +
AWS4-ECDSA-P256-SHA256
        8008  +
20150830T123600Z
        8009  +
20150830/service/aws4_request
        8010  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 6138   8011   
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
 6139   8012   
new file mode 100644
 6140   8013   
index 0000000..379dcb2
 6141         -
-- /dev/null
        8014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 6142   8015   
@@ -0,0 +1,4 @@
        8016  +
{
        8017  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8018  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8019  +
}
 6143   8020   
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
 6144   8021   
similarity index 85%
 6145   8022   
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
 6146   8023   
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
 6147   8024   
index fcc454f..6933a8c 100644
 6148         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        8025  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 6149   8026   
@@ -1,9 +1,9 @@
 6150   8027   
POST
 6151   8028   
/
 6152   8029   
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
 6153   8030   
content-length:13
 6154   8031   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6155   8032   
host:example.amazonaws.com
 6156   8033   
 6157   8034   
content-length;content-type;host
 6158         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8035  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6159   8036   
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
 6160   8037   
new file mode 100644
 6161   8038   
index 0000000..34a2e12
 6162         -
-- /dev/null
        8039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 6163   8040   
@@ -0,0 +1 @@
        8041  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 6164   8042   
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
 6165   8043   
new file mode 100644
 6166   8044   
index 0000000..197b99e
 6167         -
-- /dev/null
        8045  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 6168   8046   
@@ -0,0 +1,6 @@
        8047  +
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
        8048  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        8049  +
Host:example.amazonaws.com
        8050  +
Content-Length:13
        8051  +
        8052  +
Param1=value1
              \
 No newline at end of file
 6169   8053   
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
 6170   8054   
new file mode 100644
 6171   8055   
index 0000000..9d2bc74
 6172         -
-- /dev/null
        8056  +
++ 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
 6173   8057   
@@ -0,0 +1,4 @@
        8058  +
AWS4-ECDSA-P256-SHA256
        8059  +
20150830T123600Z
        8060  +
20150830/service/aws4_request
        8061  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 6174   8062   
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
 6175   8063   
similarity index 80%
 6176   8064   
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
 6177   8065   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6178   8066   
index 36015f1..8289eaa 100644
 6179         -
-- 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
        8067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6180   8068   
@@ -1,6 +1,6 @@
 6181   8069   
POST / HTTP/1.1
 6182   8070   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 6183   8071   
Host:example.amazonaws.com
 6184         -
X-Amz-Date:20150830T123600Z
        8072  +
Content-Length:13
 6185   8073   
 6186   8074   
Param1=value1
              \
 No newline at end of file
 6187   8075   
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
 6188   8076   
new file mode 100644
 6189   8077   
index 0000000..0db1df1
 6190         -
-- /dev/null
        8078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 6191   8079   
@@ -0,0 +1,12 @@
        8080  +
{
        8081  +
    "credentials": {
        8082  +
        "access_key_id": "AKIDEXAMPLE",
        8083  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8084  +
    },
        8085  +
    "expiration_in_seconds": 3600,
        8086  +
    "normalize": true,
        8087  +
    "region": "us-east-1",
        8088  +
    "service": "service",
        8089  +
    "sign_body": true,
        8090  +
    "timestamp": "2015-08-30T12:36:00Z"
        8091  +
}
              \
 No newline at end of file
 6192   8092   
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
 6193   8093   
similarity index 61%
 6194   8094   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 6195   8095   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6196   8096   
index 69009dc..797632b 100644
 6197         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        8097  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6198   8098   
@@ -1,12 +1,12 @@
 6199   8099   
POST
 6200   8100   
/
 6201   8101   
 6202   8102   
content-length:13
 6203   8103   
content-type:application/x-www-form-urlencoded
 6204   8104   
host:example.amazonaws.com
 6205         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8105  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6206   8106   
x-amz-date:20150830T123600Z
 6207   8107   
x-amz-region-set:us-east-1
 6208   8108   
 6209   8109   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6210         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8110  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6211   8111   
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
 6212   8112   
new file mode 100644
 6213   8113   
index 0000000..f5a641c
 6214         -
-- /dev/null
        8114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 6215   8115   
@@ -0,0 +1 @@
        8116  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 6216   8117   
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
 6217   8118   
new file mode 100644
 6218   8119   
index 0000000..7bd94a7
 6219         -
-- /dev/null
        8120  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 6220   8121   
@@ -0,0 +1,10 @@
        8122  +
POST / HTTP/1.1
        8123  +
Content-Type:application/x-www-form-urlencoded
        8124  +
Host:example.amazonaws.com
        8125  +
Content-Length:13
        8126  +
X-Amz-Date:20150830T123600Z
        8127  +
X-Amz-Region-Set:us-east-1
        8128  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8129  +
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
        8130  +
        8131  +
Param1=value1
              \
 No newline at end of file
 6221   8132   
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
 6222   8133   
new file mode 100644
 6223   8134   
index 0000000..8d25ba9
 6224         -
-- /dev/null
        8135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 6225   8136   
@@ -0,0 +1,4 @@
        8137  +
AWS4-ECDSA-P256-SHA256
        8138  +
20150830T123600Z
        8139  +
20150830/service/aws4_request
        8140  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 6226   8141   
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
 6227   8142   
new file mode 100644
 6228   8143   
index 0000000..379dcb2
 6229         -
-- /dev/null
        8144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 6230   8145   
@@ -0,0 +1,4 @@
        8146  +
{
        8147  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8148  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8149  +
}
 6231   8150   
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
 6232   8151   
similarity index 99%
 6233   8152   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 6234   8153   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6235   8154   
index 9ed065b..563ff58 100644
 6236         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
        8155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6237   8156   
@@ -1,9 +1,9 @@
 6238   8157   
POST
 6239   8158   
/
 6240   8159   
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
 6241   8160   
content-length:13
 6242   8161   
content-type:application/x-www-form-urlencoded
 6243   8162   
host:example.amazonaws.com
 6244   8163   
 6245   8164   
content-length;content-type;host
 6246         -
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8165  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6247   8166   
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
 6248   8167   
new file mode 100644
 6249   8168   
index 0000000..0c77daf
 6250         -
-- /dev/null
        8169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 6251   8170   
@@ -0,0 +1 @@
        8171  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 6252   8172   
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
 6253   8173   
new file mode 100644
 6254   8174   
index 0000000..71d6de9
 6255         -
-- /dev/null
        8175  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 6256   8176   
@@ -0,0 +1,6 @@
        8177  +
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
        8178  +
Content-Type:application/x-www-form-urlencoded
        8179  +
Host:example.amazonaws.com
        8180  +
Content-Length:13
        8181  +
        8182  +
Param1=value1
              \
 No newline at end of file
 6257   8183   
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
 6258   8184   
similarity index 99%
 6259   8185   
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
 6260   8186   
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
 6261   8187   
index bef3143..cc7a224 100644
 6262         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt
        8188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
 6263   8189   
@@ -1,4 +1,4 @@
 6264   8190   
AWS4-ECDSA-P256-SHA256
 6265   8191   
20150830T123600Z
 6266   8192   
20150830/service/aws4_request
 6267         -
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
        8193  +
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
              \
 No newline at end of file
 6268   8194   
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
 6269   8195   
new file mode 100644
 6270   8196   
index 0000000..760b2d3
 6271         -
-- /dev/null
        8197  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 6272   8198   
@@ -0,0 +1,6 @@
        8199  +
POST / HTTP/1.1
        8200  +
Content-Type:application/x-www-form-urlencoded
        8201  +
Host:example.amazonaws.com
        8202  +
Content-Length:13
        8203  +
        8204  +
Param1=value1
              \
 No newline at end of file
 6273   8205   
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
 6274   8206   
index 9bd636f..b53f33f 100644
 6275         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        8207  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 6276   8208   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 6277   8209   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 6278   8210   
        }
 6279   8211   
 6280   8212   
        if let SignatureValues::QueryParams(values) = values {
 6281   8213   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 6282   8214   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 6283   8215   
 6284   8216   
            #[cfg(feature = "sigv4a")]
 6285   8217   
            if let Some(regions) = values.region_set {
 6286   8218   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 6287   8219   
            }
 6288   8220   
 6289   8221   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 6290   8222   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 6291   8223   
            add_param(
 6292   8224   
                &mut params,
 6293   8225   
                param::X_AMZ_SIGNED_HEADERS,
 6294   8226   
                values.signed_headers.as_str(),
 6295   8227   
            );
 6296   8228   
 6297   8229   
            if let Some(security_token) = values.security_token {
 6298   8230   
                add_param(
 6299   8231   
                    &mut params,
 6300   8232   
                    settings
 6301   8233   
                        .session_token_name_override
 6302   8234   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 6303   8235   
                    security_token,
 6304   8236   
                );
 6305   8237   
            }
 6306   8238   
        }
 6307         -
        // Sort by param name, and then by param value
        8239  +
        8240  +
        // Sort on the _encoded_ key/value pairs
        8241  +
        let mut params: Vec<(String, String)> = params
        8242  +
            .into_iter()
        8243  +
            .map(|x| {
        8244  +
                use aws_smithy_http::query::fmt_string;
        8245  +
                let enc_k = fmt_string(&x.0);
        8246  +
                let enc_v = fmt_string(&x.1);
        8247  +
                (enc_k, enc_v)
        8248  +
            })
        8249  +
            .collect();
        8250  +
 6308   8251   
        params.sort();
 6309   8252   
 6310   8253   
        let mut query = QueryWriter::new(uri);
 6311   8254   
        query.clear_params();
 6312   8255   
        for (key, value) in params {
 6313         -
            query.insert(&key, &value);
        8256  +
            query.insert_encoded(&key, &value);
 6314   8257   
        }
 6315   8258   
 6316   8259   
        let query = query.build_query();
 6317   8260   
        if query.is_empty() {
 6318   8261   
            None
 6319   8262   
        } else {
 6320   8263   
            Some(query)
 6321   8264   
        }
 6322   8265   
    }
 6323   8266   
 6324   8267   
    fn insert_host_header(
 6325   8268   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 6326   8269   
        uri: &Uri,
 6327   8270   
    ) -> HeaderValue {
 6328   8271   
        match canonical_headers.get(&HOST) {
 6329   8272   
            Some(header) => header.clone(),
 6330   8273   
            None => {
 6331   8274   
                let port = uri.port();
 6332   8275   
                let scheme = uri.scheme();
 6333   8276   
                let authority = uri
 6334   8277   
                    .authority()
 6335   8278   
                    .expect("request uri authority must be set for signing")
 6336   8279   
                    .as_str();
 6337   8280   
                let host = uri
 6338   8281   
                    .host()
 6339   8282   
                    .expect("request uri host must be set for signing");
 6340   8283   
 6341   8284   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 6342   8285   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 6343   8286   
                // sent in the Host header (and Hyper strips default ports if they are present)
 6344   8287   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 6345   8288   
            service,
 6346   8289   
            hashed_creq,
 6347   8290   
            signature_version: SignatureVersion::V4a,
 6348   8291   
        }
 6349   8292   
    }
 6350   8293   
}
 6351   8294   
 6352   8295   
impl fmt::Display for StringToSign<'_> {
 6353   8296   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 6354   8297   
        write!(
 6355   8298   
            f,
 6356   8299   
            "{}\n{}\n{}\n{}",
 6357   8300   
            self.algorithm,
 6358   8301   
            format_date_time(self.time),
 6359   8302   
            match self.signature_version {
 6360   8303   
                SignatureVersion::V4 => self.scope.to_string(),
 6361   8304   
                SignatureVersion::V4a => self.scope.v4a_display(),
 6362   8305   
            },
 6363   8306   
            self.hashed_creq
 6364   8307   
        )
 6365   8308   
    }
 6366   8309   
}
 6367   8310   
 6368   8311   
#[cfg(test)]
 6369   8312   
mod tests {
 6370   8313   
    use crate::date_time::test_parsers::parse_date_time;
 6371   8314   
    use crate::http_request::canonical_request::{
 6372   8315   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 6373   8316   
    };
 6374   8317   
    use crate::http_request::test;
        8318  +
    use crate::http_request::test::SigningSuiteTest;
 6375   8319   
    use crate::http_request::{
 6376   8320   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 6377   8321   
        SigningParams, SigningSettings,
 6378   8322   
    };
 6379   8323   
    use crate::sign::v4;
 6380   8324   
    use crate::sign::v4::sha256_hex_string;
 6381   8325   
    use aws_credential_types::Credentials;
 6382   8326   
    use aws_smithy_http::query_writer::QueryWriter;
 6383   8327   
    use aws_smithy_runtime_api::client::identity::Identity;
 6384   8328   
    use http0::{HeaderValue, Uri};
 6385   8329   
    use pretty_assertions::assert_eq;
 6386   8330   
    use proptest::{prelude::*, proptest};
 6387   8331   
    use std::borrow::Cow;
 6388   8332   
    use std::time::Duration;
 6389   8333   
 6390   8334   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 6391   8335   
        v4::signing_params::Builder::default()
 6392   8336   
            .identity(identity)
 6393   8337   
            .region("test-region")
 6394   8338   
            .name("testservicename")
 6395   8339   
            .time(parse_date_time("20210511T154045Z").unwrap())
 6396   8340   
            .settings(settings)
 6397   8341   
            .build()
 6398   8342   
            .unwrap()
 6399   8343   
            .into()
 6400   8344   
    }
 6401   8345   
 6402   8346   
    #[test]
 6403   8347   
    fn test_repeated_header() {
 6404         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8348  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8349  +
        let mut req = test.request();
 6405   8350   
        req.headers.push((
 6406   8351   
            "x-amz-object-attributes".to_string(),
 6407   8352   
            "Checksum".to_string(),
 6408   8353   
        ));
 6409   8354   
        req.headers.push((
 6410   8355   
            "x-amz-object-attributes".to_string(),
 6411   8356   
            "ObjectSize".to_string(),
 6412   8357   
        ));
 6413   8358   
        let req = SignableRequest::from(&req);
 6414   8359   
        let settings = SigningSettings {
 6415   8360   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6416   8361   
            session_token_mode: SessionTokenMode::Exclude,
 6417   8362   
            ..Default::default()
 6418   8363   
        };
 6419   8364   
        let identity = Credentials::for_tests().into();
 6420   8365   
        let signing_params = signing_params(&identity, settings);
 6421   8366   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6422   8367   
 6423   8368   
        assert_eq!(
 6424   8369   
            creq.values.signed_headers().to_string(),
 6425   8370   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 6426   8371   
        );
 6427   8372   
        assert_eq!(
 6428   8373   
            creq.header_values_for("x-amz-object-attributes"),
 6429   8374   
            "Checksum,ObjectSize",
 6430   8375   
        );
 6431   8376   
    }
 6432   8377   
 6433   8378   
    #[test]
 6434   8379   
    fn test_host_header_properly_handles_ports() {
 6435   8380   
        fn host_header_test_setup(endpoint: String) -> String {
 6436         -
            let mut req = test::v4::test_request("get-vanilla");
        8381  +
            let test = SigningSuiteTest::v4("get-vanilla");
        8382  +
            let mut req = test.request();
 6437   8383   
            req.uri = endpoint;
 6438   8384   
            let req = SignableRequest::from(&req);
 6439   8385   
            let settings = SigningSettings {
 6440   8386   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6441   8387   
                session_token_mode: SessionTokenMode::Exclude,
 6442   8388   
                ..Default::default()
 6443   8389   
            };
 6444   8390   
            let identity = Credentials::for_tests().into();
 6445   8391   
            let signing_params = signing_params(&identity, settings);
 6446   8392   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6447   8393   
            creq.header_values_for("host")
 6448   8394   
        }
 6449   8395   
 6450   8396   
        // HTTP request with 80 port should not be signed with that port
 6451   8397   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 6452   8398   
        assert_eq!(http_80_host_header, "localhost",);
 6453   8399   
 6454   8400   
        // HTTP request with non-80 port should be signed with that port
 6455   8401   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 6456   8402   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 6457   8403   
 6458   8404   
        // HTTPS request with 443 port should not be signed with that port
 6459   8405   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 6460   8406   
        assert_eq!(https_443_host_header, "localhost",);
 6461   8407   
 6462   8408   
        // HTTPS request with non-443 port should be signed with that port
 6463   8409   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 6464   8410   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 6465   8411   
    }
 6466   8412   
 6467   8413   
    #[test]
 6468   8414   
    fn test_set_xamz_sha_256() {
 6469         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8415  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8416  +
        let req = test.request();
 6470   8417   
        let req = SignableRequest::from(&req);
 6471   8418   
        let settings = SigningSettings {
 6472   8419   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6473   8420   
            session_token_mode: SessionTokenMode::Exclude,
 6474   8421   
            ..Default::default()
 6475   8422   
        };
 6476   8423   
        let identity = Credentials::for_tests().into();
 6477   8424   
        let mut signing_params = signing_params(&identity, settings);
 6478   8425   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6479   8426   
        assert_eq!(
 6480   8427   
            creq.values.content_sha256(),
 6481   8428   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 6482   8429   
        );
 6483   8430   
        // assert that the sha256 header was added
 6484   8431   
        assert_eq!(
 6485   8432   
            creq.values.signed_headers().as_str(),
 6486   8433   
            "host;x-amz-content-sha256;x-amz-date"
 6487   8434   
        );
 6488   8435   
 6489   8436   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 6490   8437   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6491   8438   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6492   8439   
    }
 6493   8440   
 6494   8441   
    #[test]
 6495   8442   
    fn test_unsigned_payload() {
 6496         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8443  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8444  +
        let mut req = test.request();
 6497   8445   
        req.set_body(SignableBody::UnsignedPayload);
 6498   8446   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 6499   8447   
 6500   8448   
        let settings = SigningSettings {
 6501   8449   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6502   8450   
            ..Default::default()
 6503   8451   
        };
 6504   8452   
        let identity = Credentials::for_tests().into();
 6505   8453   
        let signing_params = signing_params(&identity, settings);
 6506   8454   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6507   8455   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 6508   8456   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 6509   8457   
    }
 6510   8458   
 6511   8459   
    #[test]
 6512   8460   
    fn test_precomputed_payload() {
 6513   8461   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 6514         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8462  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8463  +
        let mut req = test.request();
 6515   8464   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 6516   8465   
        let req = SignableRequest::from(&req);
 6517   8466   
        let settings = SigningSettings {
 6518   8467   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6519   8468   
            ..Default::default()
 6520   8469   
        };
 6521   8470   
        let identity = Credentials::for_tests().into();
 6522   8471   
        let signing_params = signing_params(&identity, settings);
 6523   8472   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6524   8473   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 6525   8474   
        assert!(creq.to_string().ends_with(payload_hash));
 6526   8475   
    }
 6527   8476   
 6528   8477   
    #[test]
 6529   8478   
    fn test_generate_scope() {
 6530   8479   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 6531   8480   
        let scope = SigningScope {
 6532   8481   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6533   8482   
            region: "us-east-1",
 6534   8483   
            service: "iam",
 6535   8484   
        };
 6536   8485   
        assert_eq!(format!("{}\n", scope), expected);
 6537   8486   
    }
 6538   8487   
 6539   8488   
    #[test]
 6540   8489   
    fn test_string_to_sign() {
 6541   8490   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6542         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 6543         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        8491  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8492  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        8493  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 6544   8494   
        let encoded = sha256_hex_string(creq.as_bytes());
 6545   8495   
 6546   8496   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 6547   8497   
        assert_eq!(expected_sts, actual.to_string());
 6548   8498   
    }
 6549   8499   
 6550   8500   
    #[test]
 6551   8501   
    fn test_digest_of_canonical_request() {
 6552         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        8502  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8503  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 6553   8504   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 6554   8505   
        let actual = sha256_hex_string(creq.as_bytes());
 6555   8506   
        assert_eq!(expected, actual);
 6556   8507   
    }
 6557   8508   
 6558   8509   
    #[test]
 6559   8510   
    fn test_double_url_encode_path() {
 6560         -
        let req = test::v4::test_request("double-encode-path");
        8511  +
        let test = SigningSuiteTest::v4("double-encode-path");
        8512  +
        let req = test.request();
 6561   8513   
        let req = SignableRequest::from(&req);
 6562   8514   
        let identity = Credentials::for_tests().into();
 6563   8515   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6564   8516   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6565   8517   
 6566         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        8518  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6567   8519   
        let actual = format!("{}", creq);
 6568   8520   
        assert_eq!(actual, expected);
 6569   8521   
    }
 6570   8522   
 6571   8523   
    #[test]
 6572   8524   
    fn test_double_url_encode() {
 6573         -
        let req = test::v4::test_request("double-url-encode");
        8525  +
        let test = SigningSuiteTest::v4("double-url-encode");
        8526  +
        let req = test.request();
 6574   8527   
        let req = SignableRequest::from(&req);
 6575   8528   
        let identity = Credentials::for_tests().into();
 6576   8529   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6577   8530   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6578         -
 6579         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        8531  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6580   8532   
        let actual = format!("{}", creq);
 6581   8533   
        assert_eq!(actual, expected);
 6582   8534   
    }
 6583   8535   
 6584   8536   
    #[test]
 6585   8537   
    fn test_tilde_in_uri() {
 6586   8538   
        let req = http0::Request::builder()
 6587   8539   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 6588   8540   
        let req = SignableRequest::from(&req);
 6589   8541   
        let identity = Credentials::for_tests().into();
 6590   8542   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6591   8543   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6592   8544   
        assert_eq!(
 6593   8545   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 6594   8546   
            creq.params.as_deref(),
 6595   8547   
        );
 6596   8548   
    }
 6597   8549   
 6598   8550   
    #[test]
 6599   8551   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 6600   8552   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 6601   8553   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 6602   8554   
 6603   8555   
        let mut query_writer = QueryWriter::new(&uri);
 6604   8556   
        query_writer.insert("list-type", "2");
 6605   8557   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 6606   8558   
 6607   8559   
        let req = http0::Request::builder()
 6608   8560   
            .uri(query_writer.build_uri())
 6609   8561   
            .body("")
 6610   8562   
            .unwrap()
 6611   8563   
            .into();
 6612   8564   
        let req = SignableRequest::from(&req);
 6613   8565   
        let identity = Credentials::for_tests().into();
 6614   8566   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6615   8567   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6616   8568   
 6617   8569   
        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~";
 6618   8570   
        let actual = creq.params.unwrap();
 6619   8571   
        assert_eq!(expected, actual);
 6620   8572   
    }
 6621   8573   
 6622   8574   
    #[test]
 6623   8575   
    fn test_omit_session_token() {
 6624         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8576  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8577  +
        let req = test.request();
 6625   8578   
        let req = SignableRequest::from(&req);
 6626   8579   
        let settings = SigningSettings {
 6627   8580   
            session_token_mode: SessionTokenMode::Include,
 6628   8581   
            ..Default::default()
 6629   8582   
        };
 6630   8583   
        let identity = Credentials::for_tests_with_session_token().into();
 6631   8584   
        let mut signing_params = signing_params(&identity, settings);
 6632   8585   
 6633   8586   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6634   8587   
        assert_eq!(
 6635   8588   
            creq.values.signed_headers().as_str(),
 6636   8589   
            "host;x-amz-date;x-amz-security-token"
 6637   8590   
        );
 6638   8591   
        assert_eq!(
 6639   8592   
            creq.headers.get("x-amz-security-token").unwrap(),
 6640   8593   
            "notarealsessiontoken"
 6641   8594   
        );
 6642   8595   
 6643   8596   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 6644   8597   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6645   8598   
        assert_eq!(
 6646   8599   
            creq.headers.get("x-amz-security-token").unwrap(),
 6647   8600   
            "notarealsessiontoken"
 6648   8601   
        );
 6649   8602   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6650   8603   
    }
 6651   8604   
 6652   8605   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 6653   8606   
    #[test]
 6654   8607   
    fn non_presigning_header_exclusion() {
 6655   8608   
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
 6656   8609   
index c4bbbee..30b4743 100644
 6657         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        8610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 6658   8611   
@@ -478,436 +478,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 6659   8612   
        sensitive,
 6660   8613   
    });
 6661   8614   
}
 6662   8615   
 6663   8616   
// add signature to authorization header
 6664   8617   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 6665   8618   
fn build_authorization_header(
 6666   8619   
    access_key: &str,
 6667   8620   
    creq: &CanonicalRequest<'_>,
 6668   8621   
    sts: StringToSign<'_>,
 6669   8622   
    signature: &str,
 6670   8623   
    signature_version: SignatureVersion,
 6671   8624   
) -> String {
 6672   8625   
    let scope = match signature_version {
 6673   8626   
        SignatureVersion::V4 => sts.scope.to_string(),
 6674   8627   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 6675   8628   
    };
 6676   8629   
    format!(
 6677   8630   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 6678   8631   
        sts.algorithm,
 6679   8632   
        access_key,
 6680   8633   
        scope,
 6681   8634   
        creq.values.signed_headers().as_str(),
 6682   8635   
        signature
 6683   8636   
    )
 6684   8637   
}
 6685   8638   
#[cfg(test)]
 6686   8639   
mod tests {
 6687   8640   
    use crate::date_time::test_parsers::parse_date_time;
 6688   8641   
    use crate::http_request::sign::{add_header, SignableRequest};
        8642  +
    use crate::http_request::test::SigningSuiteTest;
 6689   8643   
    use crate::http_request::{
 6690         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        8644  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 6691   8645   
        SigningSettings,
 6692   8646   
    };
 6693   8647   
    use crate::sign::v4;
 6694   8648   
    use aws_credential_types::Credentials;
 6695   8649   
    use http0::{HeaderValue, Request};
 6696   8650   
    use pretty_assertions::assert_eq;
 6697   8651   
    use proptest::proptest;
 6698   8652   
    use std::borrow::Cow;
 6699   8653   
    use std::iter;
 6700         -
    use std::time::Duration;
 6701   8654   
 6702   8655   
    macro_rules! assert_req_eq {
 6703   8656   
        (http: $expected:expr, $actual:expr) => {
 6704   8657   
            let mut expected = ($expected).map(|_b|"body");
 6705   8658   
            let mut actual = ($actual).map(|_b|"body");
 6706   8659   
            make_headers_comparable(&mut expected);
 6707   8660   
            make_headers_comparable(&mut actual);
 6708   8661   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 6709   8662   
        };
 6710   8663   
        ($expected:tt, $actual:tt) => {
 6711   8664   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 6712   8665   
        };
 6713   8666   
    }
 6714   8667   
 6715   8668   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 6716   8669   
        for (_name, value) in request.headers_mut() {
 6717   8670   
            value.set_sensitive(false);
 6718   8671   
        }
 6719   8672   
    }
 6720   8673   
 6721         -
    #[test]
 6722         -
    fn test_sign_vanilla_with_headers() {
 6723         -
        let settings = SigningSettings::default();
 6724         -
        let identity = &Credentials::for_tests().into();
 6725         -
        let params = v4::SigningParams {
 6726         -
            identity,
 6727         -
            region: "us-east-1",
 6728         -
            name: "service",
 6729         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6730         -
            settings,
 6731         -
        }
 6732         -
        .into();
 6733         -
 6734         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6735         -
        let signable = SignableRequest::from(&original);
 6736         -
        let out = sign(signable, &params).unwrap();
 6737         -
        assert_eq!(
 6738         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 6739         -
            out.signature
 6740         -
        );
 6741         -
 6742         -
        let mut signed = original.as_http_request();
 6743         -
        out.output.apply_to_request_http0x(&mut signed);
 6744         -
 6745         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 6746         -
        assert_req_eq!(expected, signed);
 6747         -
    }
 6748         -
        8674  +
    // Sigv4A suite tests
 6749   8675   
    #[cfg(feature = "sigv4a")]
 6750         -
    mod sigv4a_tests {
 6751         -
        use super::*;
 6752         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 6753         -
        use crate::http_request::{sign, test, SigningParams};
 6754         -
        use crate::sign::v4a;
 6755         -
        use p256::ecdsa::signature::{Signature, Verifier};
 6756         -
        use p256::ecdsa::{DerSignature, SigningKey};
 6757         -
        use pretty_assertions::assert_eq;
 6758         -
 6759         -
        fn new_v4a_signing_params_from_context(
 6760         -
            test_context: &'_ test::v4a::TestContext,
 6761         -
            signature_location: SignatureLocation,
 6762         -
        ) -> SigningParams<'_> {
 6763         -
            let mut params = v4a::SigningParams::from(test_context);
 6764         -
            params.settings.signature_location = signature_location;
 6765         -
 6766         -
            params.into()
 6767         -
        }
 6768         -
 6769         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 6770         -
            let tc = test::v4a::test_context(test_name);
 6771         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 6772         -
 6773         -
            let req = test::v4a::test_request(test_name);
 6774         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 6775         -
            let signable_req = SignableRequest::from(&req);
 6776         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 6777         -
 6778         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 6779         -
 6780         -
            let expected_string_to_sign =
 6781         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 6782         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 6783         -
            let actual_string_to_sign = StringToSign::new_v4a(
 6784         -
                *params.time(),
 6785         -
                params.region_set().unwrap(),
 6786         -
                params.name(),
 6787         -
                hashed_creq,
 6788         -
            )
 6789         -
            .to_string();
 6790         -
 6791         -
            assert_eq!(
 6792         -
                expected_string_to_sign, actual_string_to_sign,
 6793         -
                "'string to sign' didn't match"
 6794         -
            );
        8676  +
    mod v4a_suite {
        8677  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 6795   8678   
 6796         -
            let out = sign(signable_req, &params).unwrap();
 6797         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 6798         -
            out.output
 6799         -
                .apply_to_request_http0x(&mut req.as_http_request());
 6800         -
 6801         -
            let creds = params.credentials().unwrap();
 6802         -
            let signing_key =
 6803         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 6804         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 6805         -
            let sig = sig
 6806         -
                .try_into()
 6807         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 6808         -
 6809         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 6810         -
            let peer_public_key = signing_key.verifying_key();
 6811         -
            let sts = actual_string_to_sign.as_bytes();
 6812         -
            peer_public_key.verify(sts, &sig).unwrap();
        8679  +
        #[test]
        8680  +
        fn test_get_header_key_duplicate() {
        8681  +
            run_test_suite_v4a("get-header-key-duplicate")
 6813   8682   
        }
 6814   8683   
 6815   8684   
        #[test]
 6816         -
        fn test_get_header_key_duplicate() {
 6817         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        8685  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8686  +
        fn test_get_header_value_multiline() {
        8687  +
            run_test_suite_v4a("get-header-value-multiline")
 6818   8688   
        }
 6819   8689   
 6820   8690   
        #[test]
 6821   8691   
        fn test_get_header_value_order() {
 6822         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        8692  +
            run_test_suite_v4a("get-header-value-order")
 6823   8693   
        }
 6824   8694   
 6825   8695   
        #[test]
 6826   8696   
        fn test_get_header_value_trim() {
 6827         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        8697  +
            run_test_suite_v4a("get-header-value-trim");
 6828   8698   
        }
 6829   8699   
 6830   8700   
        #[test]
 6831   8701   
        fn test_get_relative_normalized() {
 6832         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        8702  +
            run_test_suite_v4a("get-relative-normalized");
 6833   8703   
        }
 6834   8704   
 6835   8705   
        #[test]
 6836   8706   
        fn test_get_relative_relative_normalized() {
 6837         -
            run_v4a_test_suite(
 6838         -
                "get-relative-relative-normalized",
 6839         -
                SignatureLocation::Headers,
 6840         -
            );
        8707  +
            run_test_suite_v4a("get-relative-relative-normalized");
 6841   8708   
        }
 6842   8709   
 6843   8710   
        #[test]
 6844   8711   
        fn test_get_relative_relative_unnormalized() {
 6845         -
            run_v4a_test_suite(
 6846         -
                "get-relative-relative-unnormalized",
 6847         -
                SignatureLocation::Headers,
 6848         -
            );
        8712  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 6849   8713   
        }
 6850   8714   
 6851   8715   
        #[test]
 6852   8716   
        fn test_get_relative_unnormalized() {
 6853         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        8717  +
            run_test_suite_v4a("get-relative-unnormalized");
 6854   8718   
        }
 6855   8719   
 6856   8720   
        #[test]
 6857   8721   
        fn test_get_slash_dot_slash_normalized() {
 6858         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        8722  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 6859   8723   
        }
 6860   8724   
 6861   8725   
        #[test]
 6862   8726   
        fn test_get_slash_dot_slash_unnormalized() {
 6863         -
            run_v4a_test_suite(
 6864         -
                "get-slash-dot-slash-unnormalized",
 6865         -
                SignatureLocation::Headers,
 6866         -
            );
        8727  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 6867   8728   
        }
 6868   8729   
 6869   8730   
        #[test]
 6870   8731   
        fn test_get_slash_normalized() {
 6871         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        8732  +
            run_test_suite_v4a("get-slash-normalized");
 6872   8733   
        }
 6873   8734   
 6874   8735   
        #[test]
 6875   8736   
        fn test_get_slash_pointless_dot_normalized() {
 6876         -
            run_v4a_test_suite(
 6877         -
                "get-slash-pointless-dot-normalized",
 6878         -
                SignatureLocation::Headers,
 6879         -
            );
        8737  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 6880   8738   
        }
 6881   8739   
 6882   8740   
        #[test]
 6883   8741   
        fn test_get_slash_pointless_dot_unnormalized() {
 6884         -
            run_v4a_test_suite(
 6885         -
                "get-slash-pointless-dot-unnormalized",
 6886         -
                SignatureLocation::Headers,
 6887         -
            );
        8742  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 6888   8743   
        }
 6889   8744   
 6890   8745   
        #[test]
 6891   8746   
        fn test_get_slash_unnormalized() {
 6892         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        8747  +
            run_test_suite_v4a("get-slash-unnormalized");
 6893   8748   
        }
 6894   8749   
 6895   8750   
        #[test]
 6896   8751   
        fn test_get_slashes_normalized() {
 6897         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        8752  +
            run_test_suite_v4a("get-slashes-normalized");
 6898   8753   
        }
 6899   8754   
 6900   8755   
        #[test]
 6901   8756   
        fn test_get_slashes_unnormalized() {
 6902         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        8757  +
            run_test_suite_v4a("get-slashes-unnormalized");
        8758  +
        }
        8759  +
        8760  +
        #[test]
        8761  +
        #[ignore = "relies on single encode of path segments"]
        8762  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8763  +
        // skipped until we add control over double_uri_encode in context.json
        8764  +
        fn test_get_space_normalized() {
        8765  +
            run_test_suite_v4a("get-space-normalized");
        8766  +
        }
        8767  +
        8768  +
        #[test]
        8769  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8770  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8771  +
        fn test_get_space_unnormalized() {
        8772  +
            run_test_suite_v4a("get-space-unnormalized");
 6903   8773   
        }
 6904   8774   
 6905   8775   
        #[test]
 6906   8776   
        fn test_get_unreserved() {
 6907         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        8777  +
            run_test_suite_v4a("get-unreserved");
        8778  +
        }
        8779  +
        8780  +
        #[test]
        8781  +
        #[ignore = "httparse fails on invalid uri character"]
        8782  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8783  +
        fn test_get_utf8() {
        8784  +
            run_test_suite_v4a("get-utf8");
 6908   8785   
        }
 6909   8786   
 6910   8787   
        #[test]
 6911   8788   
        fn test_get_vanilla() {
 6912         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        8789  +
            run_test_suite_v4a("get-vanilla");
 6913   8790   
        }
 6914   8791   
 6915   8792   
        #[test]
 6916   8793   
        fn test_get_vanilla_empty_query_key() {
 6917         -
            run_v4a_test_suite(
 6918         -
                "get-vanilla-empty-query-key",
 6919         -
                SignatureLocation::QueryParams,
 6920         -
            );
        8794  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 6921   8795   
        }
 6922   8796   
 6923   8797   
        #[test]
 6924   8798   
        fn test_get_vanilla_query() {
 6925         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        8799  +
            run_test_suite_v4a("get-vanilla-query");
        8800  +
        }
        8801  +
        8802  +
        #[test]
        8803  +
        fn test_get_vanilla_query_order_encoded() {
        8804  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 6926   8805   
        }
 6927   8806   
 6928   8807   
        #[test]
 6929   8808   
        fn test_get_vanilla_query_order_key_case() {
 6930         -
            run_v4a_test_suite(
 6931         -
                "get-vanilla-query-order-key-case",
 6932         -
                SignatureLocation::QueryParams,
 6933         -
            );
        8809  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 6934   8810   
        }
 6935   8811   
 6936   8812   
        #[test]
 6937   8813   
        fn test_get_vanilla_query_unreserved() {
 6938         -
            run_v4a_test_suite(
 6939         -
                "get-vanilla-query-unreserved",
 6940         -
                SignatureLocation::QueryParams,
 6941         -
            );
        8814  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        8815  +
        }
        8816  +
        8817  +
        #[test]
        8818  +
        #[ignore = "httparse fails on invalid uri character"]
        8819  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8820  +
        fn test_get_vanilla_utf8_query() {
        8821  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 6942   8822   
        }
 6943   8823   
 6944   8824   
        #[test]
 6945   8825   
        fn test_get_vanilla_with_session_token() {
 6946         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        8826  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 6947   8827   
        }
 6948   8828   
 6949   8829   
        #[test]
 6950   8830   
        fn test_post_header_key_case() {
 6951         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        8831  +
            run_test_suite_v4a("post-header-key-case");
 6952   8832   
        }
 6953   8833   
 6954   8834   
        #[test]
 6955   8835   
        fn test_post_header_key_sort() {
 6956         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        8836  +
            run_test_suite_v4a("post-header-key-sort");
 6957   8837   
        }
 6958   8838   
 6959   8839   
        #[test]
 6960   8840   
        fn test_post_header_value_case() {
 6961         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        8841  +
            run_test_suite_v4a("post-header-value-case");
 6962   8842   
        }
 6963   8843   
 6964   8844   
        #[test]
 6965   8845   
        fn test_post_sts_header_after() {
 6966         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        8846  +
            run_test_suite_v4a("post-sts-header-after");
 6967   8847   
        }
 6968   8848   
 6969   8849   
        #[test]
 6970   8850   
        fn test_post_sts_header_before() {
 6971         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        8851  +
            run_test_suite_v4a("post-sts-header-before");
 6972   8852   
        }
 6973   8853   
 6974   8854   
        #[test]
 6975   8855   
        fn test_post_vanilla() {
 6976         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        8856  +
            run_test_suite_v4a("post-vanilla");
 6977   8857   
        }
 6978   8858   
 6979   8859   
        #[test]
 6980   8860   
        fn test_post_vanilla_empty_query_value() {
 6981         -
            run_v4a_test_suite(
 6982         -
                "post-vanilla-empty-query-value",
 6983         -
                SignatureLocation::QueryParams,
 6984         -
            );
        8861  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 6985   8862   
        }
 6986   8863   
 6987   8864   
        #[test]
 6988   8865   
        fn test_post_vanilla_query() {
 6989         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        8866  +
            run_test_suite_v4a("post-vanilla-query");
 6990   8867   
        }
 6991   8868   
 6992   8869   
        #[test]
 6993   8870   
        fn test_post_x_www_form_urlencoded() {
 6994         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        8871  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 6995   8872   
        }
 6996   8873   
 6997   8874   
        #[test]
 6998   8875   
        fn test_post_x_www_form_urlencoded_parameters() {
 6999         -
            run_v4a_test_suite(
 7000         -
                "post-x-www-form-urlencoded-parameters",
 7001         -
                SignatureLocation::QueryParams,
 7002         -
            );
        8876  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 7003   8877   
        }
 7004   8878   
    }
 7005   8879   
 7006   8880   
    #[test]
 7007   8881   
    fn test_sign_url_escape() {
 7008         -
        let test = "double-encode-path";
        8882  +
        let test = SigningSuiteTest::v4("double-encode-path");
 7009   8883   
        let settings = SigningSettings::default();
 7010   8884   
        let identity = &Credentials::for_tests().into();
 7011   8885   
        let params = v4::SigningParams {
 7012   8886   
            identity,
 7013   8887   
            region: "us-east-1",
 7014   8888   
            name: "service",
 7015   8889   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7016   8890   
            settings,
 7017   8891   
        }
 7018   8892   
        .into();
 7019   8893   
 7020         -
        let original = test::v4::test_request(test);
        8894  +
        let original = test.request();
 7021   8895   
        let signable = SignableRequest::from(&original);
 7022   8896   
        let out = sign(signable, &params).unwrap();
 7023   8897   
        assert_eq!(
 7024   8898   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 7025   8899   
            out.signature
 7026   8900   
        );
 7027   8901   
 7028   8902   
        let mut signed = original.as_http_request();
 7029   8903   
        out.output.apply_to_request_http0x(&mut signed);
 7030   8904   
 7031         -
        let expected = test::v4::test_signed_request(test);
 7032         -
        assert_req_eq!(expected, signed);
 7033         -
    }
 7034         -
 7035         -
    #[test]
 7036         -
    fn test_sign_vanilla_with_query_params() {
 7037         -
        let settings = SigningSettings {
 7038         -
            signature_location: SignatureLocation::QueryParams,
 7039         -
            expires_in: Some(Duration::from_secs(35)),
 7040         -
            ..Default::default()
 7041         -
        };
 7042         -
        let identity = &Credentials::for_tests().into();
 7043         -
        let params = v4::SigningParams {
 7044         -
            identity,
 7045         -
            region: "us-east-1",
 7046         -
            name: "service",
 7047         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 7048         -
            settings,
 7049         -
        }
 7050         -
        .into();
 7051         -
 7052         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 7053         -
        let signable = SignableRequest::from(&original);
 7054         -
        let out = sign(signable, &params).unwrap();
 7055         -
        assert_eq!(
 7056         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 7057         -
            out.signature
 7058         -
        );
 7059         -
 7060         -
        let mut signed = original.as_http_request();
 7061         -
        out.output.apply_to_request_http0x(&mut signed);
 7062         -
 7063         -
        let expected =
 7064         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        8905  +
        let expected = test.signed_request(SignatureLocation::Headers);
 7065   8906   
        assert_req_eq!(expected, signed);
 7066   8907   
    }
 7067   8908   
 7068   8909   
    #[test]
 7069   8910   
    fn test_sign_headers_utf8() {
 7070   8911   
        let settings = SigningSettings::default();
 7071   8912   
        let identity = &Credentials::for_tests().into();
 7072   8913   
        let params = v4::SigningParams {
 7073   8914   
            identity,
 7074   8915   
            region: "us-east-1",
 7075   8916   
            name: "service",
 7076   8917   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7077   8918   
            settings,
 7078   8919   
        }
 7079   8920   
        .into();
 7080   8921   
 7081   8922   
        let original = http0::Request::builder()
 7082   8923   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 7083   8924   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 7084   8925   
            .body("")
 7085   8926   
            .unwrap()
 7086   8927   
            .into();
 7087   8928   
        let signable = SignableRequest::from(&original);
 7088   8929   
        let out = sign(signable, &params).unwrap();
 7089   8930   
        assert_eq!(
 7090   8931   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 7091   8932   
            out.signature
 7092   8933   
        );
 7093   8934   
 7094   8935   
        let mut signed = original.as_http_request();
 7095   8936   
@@ -1138,31 +1026,236 @@ mod tests {
 7096   8937   
        let mut request = http::Request::builder()
 7097   8938   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 7098   8939   
            .body("")
 7099   8940   
            .unwrap();
 7100   8941   
 7101   8942   
        instructions.apply_to_request_http1x(&mut request);
 7102   8943   
 7103   8944   
        assert_eq!(
 7104   8945   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 7105   8946   
            request.uri().path_and_query().unwrap().to_string()
 7106   8947   
        );
 7107   8948   
    }
 7108   8949   
 7109   8950   
    #[test]
 7110   8951   
    fn test_debug_signable_body() {
 7111   8952   
        let sut = SignableBody::Bytes(b"hello signable body");
 7112   8953   
        assert_eq!(
 7113   8954   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 7114   8955   
            format!("{sut:?}")
 7115   8956   
        );
 7116   8957   
 7117   8958   
        let sut = SignableBody::UnsignedPayload;
 7118   8959   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 7119   8960   
 7120   8961   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 7121   8962   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 7122   8963   
 7123   8964   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 7124   8965   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 7125   8966   
    }
        8967  +
        8968  +
    // v4 test suite
        8969  +
    mod v4_suite {
        8970  +
        use crate::http_request::test::run_test_suite_v4;
        8971  +
        8972  +
        #[test]
        8973  +
        fn test_get_header_key_duplicate() {
        8974  +
            run_test_suite_v4("get-header-key-duplicate");
        8975  +
        }
        8976  +
        8977  +
        #[test]
        8978  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8979  +
        fn test_get_header_value_multiline() {
        8980  +
            run_test_suite_v4("get-header-value-multiline");
        8981  +
        }
        8982  +
        8983  +
        #[test]
        8984  +
        fn test_get_header_value_order() {
        8985  +
            run_test_suite_v4("get-header-value-order");
        8986  +
        }
        8987  +
        8988  +
        #[test]
        8989  +
        fn test_get_header_value_trim() {
        8990  +
            run_test_suite_v4("get-header-value-trim");
        8991  +
        }
        8992  +
        8993  +
        #[test]
        8994  +
        fn test_get_relative_normalized() {
        8995  +
            run_test_suite_v4("get-relative-normalized");
        8996  +
        }
        8997  +
        8998  +
        #[test]
        8999  +
        fn test_get_relative_relative_normalized() {
        9000  +
            run_test_suite_v4("get-relative-relative-normalized");
        9001  +
        }
        9002  +
        9003  +
        #[test]
        9004  +
        fn test_get_relative_relative_unnormalized() {
        9005  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        9006  +
        }
        9007  +
        9008  +
        #[test]
        9009  +
        fn test_get_relative_unnormalized() {
        9010  +
            run_test_suite_v4("get-relative-unnormalized");
        9011  +
        }
        9012  +
        9013  +
        #[test]
        9014  +
        fn test_get_slash_dot_slash_normalized() {
        9015  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        9016  +
        }
        9017  +
        9018  +
        #[test]
        9019  +
        fn test_get_slash_dot_slash_unnormalized() {
        9020  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        9021  +
        }
        9022  +
        9023  +
        #[test]
        9024  +
        fn test_get_slash_normalized() {
        9025  +
            run_test_suite_v4("get-slash-normalized");
        9026  +
        }
        9027  +
        9028  +
        #[test]
        9029  +
        fn test_get_slash_pointless_dot_normalized() {
        9030  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        9031  +
        }
        9032  +
        9033  +
        #[test]
        9034  +
        fn test_get_slash_pointless_dot_unnormalized() {
        9035  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        9036  +
        }
        9037  +
        9038  +
        #[test]
        9039  +
        fn test_get_slash_unnormalized() {
        9040  +
            run_test_suite_v4("get-slash-unnormalized");
        9041  +
        }
        9042  +
        9043  +
        #[test]
        9044  +
        fn test_get_slashes_normalized() {
        9045  +
            run_test_suite_v4("get-slashes-normalized");
        9046  +
        }
        9047  +
        9048  +
        #[test]
        9049  +
        fn test_get_slashes_unnormalized() {
        9050  +
            run_test_suite_v4("get-slashes-unnormalized");
        9051  +
        }
        9052  +
        9053  +
        #[test]
        9054  +
        #[ignore = "relies on single encode of path segments"]
        9055  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        9056  +
        // skipped until we add control over double_uri_encode in context.json
        9057  +
        fn test_get_space_normalized() {
        9058  +
            run_test_suite_v4("get-space-normalized");
        9059  +
        }
        9060  +
        9061  +
        #[test]
        9062  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        9063  +
        // the input request has unencoded space ' ' in the path which fails to parse
        9064  +
        fn test_get_space_unnormalized() {
        9065  +
            run_test_suite_v4("get-space-unnormalized");
        9066  +
        }
        9067  +
        9068  +
        #[test]
        9069  +
        fn test_get_unreserved() {
        9070  +
            run_test_suite_v4("get-unreserved");
        9071  +
        }
        9072  +
        9073  +
        #[test]
        9074  +
        #[ignore = "httparse fails on invalid uri character"]
        9075  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9076  +
        fn test_get_utf8() {
        9077  +
            run_test_suite_v4("get-utf8");
        9078  +
        }
        9079  +
        9080  +
        #[test]
        9081  +
        fn test_get_vanilla() {
        9082  +
            run_test_suite_v4("get-vanilla");
        9083  +
        }
        9084  +
        9085  +
        #[test]
        9086  +
        fn test_get_vanilla_empty_query_key() {
        9087  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        9088  +
        }
        9089  +
        9090  +
        #[test]
        9091  +
        fn test_get_vanilla_query() {
        9092  +
            run_test_suite_v4("get-vanilla-query");
        9093  +
        }
        9094  +
        9095  +
        #[test]
        9096  +
        fn test_get_vanilla_query_order_encoded() {
        9097  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        9098  +
        }
        9099  +
        9100  +
        #[test]
        9101  +
        fn test_get_vanilla_query_order_key_case() {
        9102  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        9103  +
        }
        9104  +
        9105  +
        #[test]
        9106  +
        fn test_get_vanilla_query_unreserved() {
        9107  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        9108  +
        }
        9109  +
        9110  +
        #[test]
        9111  +
        #[ignore = "httparse fails on invalid uri character"]
        9112  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9113  +
        fn test_get_vanilla_utf8_query() {
        9114  +
            run_test_suite_v4("get-vanilla-utf8-query");
        9115  +
        }
        9116  +
        9117  +
        #[test]
        9118  +
        fn test_get_vanilla_with_session_token() {
        9119  +
            run_test_suite_v4("get-vanilla-with-session-token");
        9120  +
        }
        9121  +
        9122  +
        #[test]
        9123  +
        fn test_post_header_key_case() {
        9124  +
            run_test_suite_v4("post-header-key-case");
        9125  +
        }
        9126  +
        9127  +
        #[test]
        9128  +
        fn test_post_header_key_sort() {
        9129  +
            run_test_suite_v4("post-header-key-sort");
        9130  +
        }
        9131  +
        9132  +
        #[test]
        9133  +
        fn test_post_header_value_case() {
        9134  +
            run_test_suite_v4("post-header-value-case");
        9135  +
        }
        9136  +
        9137  +
        #[test]
        9138  +
        fn test_post_sts_header_after() {
        9139  +
            run_test_suite_v4("post-sts-header-after");
        9140  +
        }
        9141  +
        9142  +
        #[test]
        9143  +
        fn test_post_sts_header_before() {
        9144  +
            run_test_suite_v4("post-sts-header-before");
        9145  +
        }
        9146  +
        9147  +
        #[test]
        9148  +
        fn test_post_vanilla() {
        9149  +
            run_test_suite_v4("post-vanilla");
        9150  +
        }
        9151  +
        9152  +
        #[test]
        9153  +
        fn test_post_vanilla_empty_query_value() {
        9154  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        9155  +
        }
        9156  +
        9157  +
        #[test]
        9158  +
        fn test_post_vanilla_query() {
        9159  +
            run_test_suite_v4("post-vanilla-query");
        9160  +
        }
        9161  +
        9162  +
        #[test]
        9163  +
        fn test_post_x_www_form_urlencoded() {
        9164  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        9165  +
        }
        9166  +
        9167  +
        #[test]
        9168  +
        fn test_post_x_www_form_urlencoded_parameters() {
        9169  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        9170  +
        }
        9171  +
    }
 7126   9172   
}
 7127   9173   
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
 7128   9174   
index be6c496..86eec20 100644
 7129         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        9175  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 7130   9176   
@@ -1,242 +1,453 @@
 7131   9177   
/*
 7132   9178   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 7133   9179   
 * SPDX-License-Identifier: Apache-2.0
 7134   9180   
 */
 7135   9181   
 7136   9182   
//! Functions shared between the tests of several modules.
 7137   9183   
 7138         -
use crate::http_request::{SignableBody, SignableRequest};
        9184  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        9185  +
use crate::http_request::{
        9186  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        9187  +
    SigningSettings,
        9188  +
};
        9189  +
use aws_credential_types::Credentials;
        9190  +
use aws_smithy_runtime_api::client::identity::Identity;
 7139   9191   
use http0::{Method, Uri};
        9192  +
use std::borrow::Cow;
 7140   9193   
use std::error::Error as StdError;
        9194  +
use std::time::{Duration, SystemTime};
        9195  +
use time::format_description::well_known::Rfc3339;
        9196  +
use time::OffsetDateTime;
        9197  +
        9198  +
/// Common test suite collection
        9199  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        9200  +
enum Collection {
        9201  +
    V4,
        9202  +
    V4A,
        9203  +
}
 7141   9204   
 7142         -
pub(crate) mod v4 {
 7143         -
    use super::*;
        9205  +
/// A test from the common CRT test suite
        9206  +
#[derive(Debug, Clone)]
        9207  +
pub(crate) struct SigningSuiteTest {
        9208  +
    test_name: &'static str,
        9209  +
    collection: Collection,
        9210  +
}
 7144   9211   
 7145         -
    fn path(name: &str, ext: &str) -> String {
 7146         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        9212  +
impl SigningSuiteTest {
        9213  +
    /// Create a new test from the V4 test suite
        9214  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        9215  +
        Self {
        9216  +
            test_name,
        9217  +
            collection: Collection::V4,
        9218  +
        }
 7147   9219   
    }
 7148   9220   
 7149         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 7150         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 7151         -
        read(&path(name, "creq")).trim().to_string()
        9221  +
    /// Create a new test from the V4a test suite
        9222  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        9223  +
        Self {
        9224  +
            test_name,
        9225  +
            collection: Collection::V4A,
        9226  +
        }
 7152   9227   
    }
 7153   9228   
 7154         -
    pub(crate) fn test_sts(name: &str) -> String {
 7155         -
        read(&path(name, "sts"))
        9229  +
    /// Get the path to a file in this test suite directory
        9230  +
    fn path(&self, filename: &str) -> String {
        9231  +
        let dir = match self.collection {
        9232  +
            Collection::V4 => "v4",
        9233  +
            Collection::V4A => "v4a",
        9234  +
        };
        9235  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 7156   9236   
    }
 7157   9237   
 7158         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7159         -
        test_parsed_request(name, "req")
        9238  +
    /// Get the HTTP request for the test
        9239  +
    pub(crate) fn request(&self) -> TestRequest {
        9240  +
        test_parsed_request(&self.path("request.txt"))
 7160   9241   
    }
 7161   9242   
 7162         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 7163         -
        test_parsed_request(name, "sreq")
        9243  +
    /// Get the signed HTTP request for the test
        9244  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        9245  +
        match signature_location {
        9246  +
            SignatureLocation::QueryParams => {
        9247  +
                test_parsed_request(&self.path("query-signed-request.txt"))
        9248  +
            }
        9249  +
            SignatureLocation::Headers => {
        9250  +
                test_parsed_request(&self.path("header-signed-request.txt"))
        9251  +
            }
        9252  +
        }
 7164   9253   
    }
 7165   9254   
 7166         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 7167         -
        test_parsed_request(name, "qpsreq")
        9255  +
    /// Get the canonical request for the test
        9256  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        9257  +
        match signature_location {
        9258  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        9259  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
        9260  +
        }
 7168   9261   
    }
 7169   9262   
 7170         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 7171         -
        let path = path(name, ext);
 7172         -
        match parse_request(read(&path).as_bytes()) {
 7173         -
            Ok(parsed) => parsed,
 7174         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        9263  +
    /// Get the string to sign for the test
        9264  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
        9265  +
        match signature_location {
        9266  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        9267  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 7175   9268   
        }
 7176   9269   
    }
 7177   9270   
 7178         -
    #[test]
 7179         -
    fn test_parse() {
 7180         -
        test_request("post-header-key-case");
        9271  +
    /// Get the signature for the test
        9272  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
        9273  +
        match signature_location {
        9274  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        9275  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        9276  +
        }
 7181   9277   
    }
 7182   9278   
 7183         -
    #[test]
 7184         -
    fn test_read_query_params() {
 7185         -
        test_request("get-vanilla-query-order-key-case");
        9279  +
    /// Get the test context for the test
        9280  +
    pub(crate) fn context(&self) -> TestContext {
        9281  +
        let context = read(&self.path("context.json"));
        9282  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        9283  +
        tc_builder.build()
 7186   9284   
    }
 7187   9285   
}
 7188   9286   
 7189         -
#[cfg(feature = "sigv4a")]
 7190         -
pub(crate) mod v4a {
 7191         -
    use super::*;
 7192         -
    use crate::http_request::{
 7193         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 7194         -
    };
 7195         -
    use aws_credential_types::Credentials;
 7196         -
    use aws_smithy_runtime_api::client::identity::Identity;
 7197         -
    use serde_derive::Deserialize;
 7198         -
    use std::time::{Duration, SystemTime};
 7199         -
    use time::format_description::well_known::Rfc3339;
 7200         -
    use time::OffsetDateTime;
 7201         -
 7202         -
    fn path(test_name: &str, definition_name: &str) -> String {
 7203         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        9287  +
fn test_parsed_request(path: &str) -> TestRequest {
        9288  +
    match parse_request(read(path).as_bytes()) {
        9289  +
        Ok(parsed) => parsed,
        9290  +
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 7204   9291   
    }
        9292  +
}
 7205   9293   
 7206         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7207         -
        test_parsed_request(&path(name, "request"))
 7208         -
    }
        9294  +
fn new_v4_signing_params_from_context(
        9295  +
    test_context: &'_ TestContext,
        9296  +
    signature_location: SignatureLocation,
        9297  +
) -> crate::http_request::SigningParams<'_> {
        9298  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        9299  +
    params.settings.signature_location = signature_location;
        9300  +
    params.into()
        9301  +
}
 7209   9302   
 7210         -
    pub(crate) fn test_canonical_request(
 7211         -
        name: &str,
 7212         -
        signature_location: SignatureLocation,
 7213         -
    ) -> String {
 7214         -
        match signature_location {
 7215         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 7216         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        9303  +
/// Run the given test from the v4 suite for both header and query
        9304  +
/// signature locations
        9305  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        9306  +
    run_v4_test(test_name, SignatureLocation::Headers);
        9307  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        9308  +
}
        9309  +
        9310  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        9311  +
    assert_eq!(expected.scheme(), actual.scheme());
        9312  +
    assert_eq!(expected.authority(), actual.authority());
        9313  +
    assert_eq!(expected.path(), actual.path());
        9314  +
        9315  +
    // query params may be out of order
        9316  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9317  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        9318  +
    expected_params.sort();
        9319  +
        9320  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9321  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        9322  +
    actual_params.sort();
        9323  +
        9324  +
    assert_eq!(expected_params, actual_params);
        9325  +
}
        9326  +
        9327  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        9328  +
    let expected = expected.as_http_request();
        9329  +
    let actual = actual;
        9330  +
    assert_eq!(expected.method(), actual.method());
        9331  +
    assert_eq!(
        9332  +
        expected.headers().len(),
        9333  +
        actual.headers().len(),
        9334  +
        "extra or missing headers"
        9335  +
    );
        9336  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        9337  +
    assert_uri_eq(expected.uri(), actual.uri());
        9338  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        9339  +
}
        9340  +
        9341  +
/// Run the given test from the v4 suite for the given signature location
        9342  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        9343  +
    let test = SigningSuiteTest::v4(test_name);
        9344  +
    let tc = test.context();
        9345  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        9346  +
        9347  +
    let req = test.request();
        9348  +
    let expected_creq = test.canonical_request(signature_location);
        9349  +
    let signable_req = SignableRequest::from(&req);
        9350  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9351  +
        9352  +
    // check canonical request
        9353  +
    assert_eq!(
        9354  +
        expected_creq,
        9355  +
        actual_creq.to_string(),
        9356  +
        "canonical request didn't match (signature location: {signature_location:?})"
        9357  +
    );
        9358  +
        9359  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        9360  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9361  +
    let actual_string_to_sign = StringToSign::new_v4(
        9362  +
        *params.time(),
        9363  +
        params.region().unwrap(),
        9364  +
        params.name(),
        9365  +
        hashed_creq,
        9366  +
    )
        9367  +
    .to_string();
        9368  +
        9369  +
    // check string to sign
        9370  +
    assert_eq!(
        9371  +
        expected_string_to_sign, actual_string_to_sign,
        9372  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        9373  +
    );
        9374  +
        9375  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        9376  +
    let mut signed = req.as_http_request();
        9377  +
    out.output.apply_to_request_http0x(&mut signed);
        9378  +
        9379  +
    // check signature
        9380  +
    assert_eq!(
        9381  +
        test.signature(signature_location),
        9382  +
        out.signature,
        9383  +
        "signature didn't match (signature location: {signature_location:?})"
        9384  +
    );
        9385  +
        9386  +
    let expected = test.signed_request(signature_location);
        9387  +
    assert_requests_eq(expected, signed);
        9388  +
}
        9389  +
        9390  +
/// Test suite context.json
        9391  +
pub(crate) struct TestContext {
        9392  +
    pub(crate) identity: Identity,
        9393  +
    pub(crate) expiration_in_seconds: u64,
        9394  +
    pub(crate) normalize: bool,
        9395  +
    pub(crate) region: String,
        9396  +
    pub(crate) service: String,
        9397  +
    pub(crate) timestamp: String,
        9398  +
    pub(crate) omit_session_token: bool,
        9399  +
    pub(crate) sign_body: bool,
        9400  +
}
        9401  +
        9402  +
// Serde has limitations requiring this odd workaround.
        9403  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        9404  +
fn return_true() -> bool {
        9405  +
    true
        9406  +
}
        9407  +
        9408  +
#[derive(serde_derive::Deserialize)]
        9409  +
pub(crate) struct TestContextBuilder {
        9410  +
    credentials: TestContextCreds,
        9411  +
    expiration_in_seconds: u64,
        9412  +
    normalize: bool,
        9413  +
    region: String,
        9414  +
    service: String,
        9415  +
    timestamp: String,
        9416  +
    #[serde(default)]
        9417  +
    omit_session_token: bool,
        9418  +
    #[serde(default = "return_true")]
        9419  +
    sign_body: bool,
        9420  +
}
        9421  +
        9422  +
impl TestContextBuilder {
        9423  +
    pub(crate) fn build(self) -> TestContext {
        9424  +
        let identity = Identity::new(
        9425  +
            Credentials::from_keys(
        9426  +
                &self.credentials.access_key_id,
        9427  +
                &self.credentials.secret_access_key,
        9428  +
                self.credentials.token.clone(),
        9429  +
            ),
        9430  +
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
        9431  +
        );
        9432  +
        9433  +
        TestContext {
        9434  +
            identity,
        9435  +
            expiration_in_seconds: self.expiration_in_seconds,
        9436  +
            normalize: self.normalize,
        9437  +
            region: self.region,
        9438  +
            service: self.service,
        9439  +
            timestamp: self.timestamp,
        9440  +
            omit_session_token: self.omit_session_token,
        9441  +
            sign_body: self.sign_body,
 7217   9442   
        }
 7218   9443   
    }
        9444  +
}
 7219   9445   
 7220         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
 7221         -
        match signature_location {
 7222         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 7223         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        9446  +
#[derive(serde_derive::Deserialize)]
        9447  +
pub(crate) struct TestContextCreds {
        9448  +
    access_key_id: String,
        9449  +
    secret_access_key: String,
        9450  +
    token: Option<String>,
        9451  +
}
        9452  +
        9453  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        9454  +
    fn from(tc: &'a TestContext) -> Self {
        9455  +
        crate::sign::v4::SigningParams {
        9456  +
            identity: &tc.identity,
        9457  +
            region: &tc.region,
        9458  +
            name: &tc.service,
        9459  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        9460  +
                .unwrap()
        9461  +
                .into(),
        9462  +
            settings: SigningSettings {
        9463  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        9464  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        9465  +
                uri_path_normalization_mode: tc.normalize.into(),
        9466  +
                session_token_mode: if tc.omit_session_token {
        9467  +
                    SessionTokenMode::Exclude
        9468  +
                } else {
        9469  +
                    SessionTokenMode::Include
        9470  +
                },
        9471  +
                payload_checksum_kind: if tc.sign_body {
        9472  +
                    PayloadChecksumKind::XAmzSha256
        9473  +
                } else {
        9474  +
                    PayloadChecksumKind::NoHeader
        9475  +
                },
        9476  +
                ..Default::default()
        9477  +
            },
 7224   9478   
        }
 7225   9479   
    }
        9480  +
}
 7226   9481   
 7227         -
    fn test_parsed_request(path: &str) -> TestRequest {
 7228         -
        match parse_request(read(path).as_bytes()) {
 7229         -
            Ok(parsed) => parsed,
 7230         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
 7231         -
        }
        9482  +
#[cfg(feature = "sigv4a")]
        9483  +
pub(crate) mod v4a {
        9484  +
    use super::*;
        9485  +
    use crate::http_request::{
        9486  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        9487  +
    };
        9488  +
    use crate::sign::v4a;
        9489  +
    use p256::ecdsa::signature::{Signature, Verifier};
        9490  +
    use p256::ecdsa::{DerSignature, SigningKey};
        9491  +
    use std::time::Duration;
        9492  +
    use time::format_description::well_known::Rfc3339;
        9493  +
    use time::OffsetDateTime;
        9494  +
        9495  +
    fn new_v4a_signing_params_from_context(
        9496  +
        test_context: &'_ TestContext,
        9497  +
        signature_location: SignatureLocation,
        9498  +
    ) -> crate::http_request::SigningParams<'_> {
        9499  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        9500  +
        params.settings.signature_location = signature_location;
        9501  +
        params.into()
 7232   9502   
    }
 7233   9503   
 7234         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 7235         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 7236         -
        let context = read(&path);
 7237         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 7238         -
        tc_builder.build()
        9504  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        9505  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        9506  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
 7239   9507   
    }
 7240   9508   
 7241         -
    pub(crate) struct TestContext {
 7242         -
        pub(crate) identity: Identity,
 7243         -
        pub(crate) expiration_in_seconds: u64,
 7244         -
        pub(crate) normalize: bool,
 7245         -
        pub(crate) region: String,
 7246         -
        pub(crate) service: String,
 7247         -
        pub(crate) timestamp: String,
 7248         -
        pub(crate) omit_session_token: bool,
 7249         -
        pub(crate) sign_body: bool,
        9509  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        9510  +
        let test = SigningSuiteTest::v4a(test_name);
        9511  +
        let tc = test.context();
        9512  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        9513  +
        9514  +
        let req = test.request();
        9515  +
        let expected_creq = test.canonical_request(signature_location);
        9516  +
        let signable_req = SignableRequest::from(&req);
        9517  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9518  +
        9519  +
        assert_eq!(
        9520  +
            expected_creq,
        9521  +
            actual_creq.to_string(),
        9522  +
            "canonical request didn't match (signature location: {signature_location:?})"
        9523  +
        );
        9524  +
        9525  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        9526  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9527  +
        let actual_string_to_sign = StringToSign::new_v4a(
        9528  +
            *params.time(),
        9529  +
            params.region_set().unwrap(),
        9530  +
            params.name(),
        9531  +
            hashed_creq,
        9532  +
        )
        9533  +
        .to_string();
        9534  +
        9535  +
        assert_eq!(
        9536  +
            expected_string_to_sign, actual_string_to_sign,
        9537  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        9538  +
        );
        9539  +
        9540  +
        let out = sign(signable_req, &params).unwrap();
        9541  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        9542  +
        out.output
        9543  +
            .apply_to_request_http0x(&mut req.as_http_request());
        9544  +
        9545  +
        let creds = params.credentials().unwrap();
        9546  +
        let signing_key =
        9547  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        9548  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        9549  +
        let sig = sig
        9550  +
            .try_into()
        9551  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        9552  +
        9553  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        9554  +
        let peer_public_key = signing_key.verifying_key();
        9555  +
        let sts = actual_string_to_sign.as_bytes();
        9556  +
        peer_public_key.verify(sts, &sig).unwrap();
        9557  +
        // TODO(sigv4a) - use public.key.json as verifying key?
 7250   9558   
    }
 7251   9559   
 7252   9560   
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 7253   9561   
        fn from(tc: &'a TestContext) -> Self {
 7254   9562   
            crate::sign::v4a::SigningParams {
 7255   9563   
                identity: &tc.identity,
 7256   9564   
                region_set: &tc.region,
 7257   9565   
                name: &tc.service,
 7258   9566   
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 7259   9567   
                    .unwrap()
 7260   9568   
                    .into(),
 7261   9569   
                settings: SigningSettings {
 7262   9570   
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 7263   9571   
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 7264   9572   
                    uri_path_normalization_mode: tc.normalize.into(),
 7265   9573   
                    session_token_mode: if tc.omit_session_token {
 7266   9574   
                        SessionTokenMode::Exclude
 7267   9575   
                    } else {
 7268   9576   
                        SessionTokenMode::Include
 7269   9577   
                    },
 7270   9578   
                    payload_checksum_kind: if tc.sign_body {
 7271   9579   
                        PayloadChecksumKind::XAmzSha256
 7272   9580   
                    } else {
 7273   9581   
                        PayloadChecksumKind::NoHeader
 7274   9582   
                    },
 7275   9583   
                    ..Default::default()
 7276   9584   
                },
 7277   9585   
            }
 7278   9586   
        }
 7279   9587   
    }
 7280   9588   
 7281         -
    // Serde has limitations requiring this odd workaround.
 7282         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 7283         -
    fn return_true() -> bool {
 7284         -
        true
 7285         -
    }
 7286         -
 7287         -
    #[derive(Deserialize)]
 7288         -
    pub(crate) struct TestContextBuilder {
 7289         -
        credentials: TestContextCreds,
 7290         -
        expiration_in_seconds: u64,
 7291         -
        normalize: bool,
 7292         -
        region: String,
 7293         -
        service: String,
 7294         -
        timestamp: String,
 7295         -
        #[serde(default)]
 7296         -
        omit_session_token: bool,
 7297         -
        #[serde(default = "return_true")]
 7298         -
        sign_body: bool,
 7299         -
    }
 7300         -
 7301         -
    impl TestContextBuilder {
 7302         -
        pub(crate) fn build(self) -> TestContext {
 7303         -
            let identity = Identity::new(
 7304         -
                Credentials::from_keys(
 7305         -
                    &self.credentials.access_key_id,
 7306         -
                    &self.credentials.secret_access_key,
 7307         -
                    self.credentials.token.clone(),
 7308         -
                ),
 7309         -
                Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 7310         -
            );
 7311         -
 7312         -
            TestContext {
 7313         -
                identity,
 7314         -
                expiration_in_seconds: self.expiration_in_seconds,
 7315         -
                normalize: self.normalize,
 7316         -
                region: self.region,
 7317         -
                service: self.service,
 7318         -
                timestamp: self.timestamp,
 7319         -
                omit_session_token: self.omit_session_token,
 7320         -
                sign_body: self.sign_body,
 7321         -
            }
 7322         -
        }
 7323         -
    }
 7324         -
 7325         -
    #[derive(Deserialize)]
 7326         -
    pub(crate) struct TestContextCreds {
 7327         -
        access_key_id: String,
 7328         -
        secret_access_key: String,
 7329         -
        token: Option<String>,
 7330         -
    }
 7331         -
 7332   9589   
    #[test]
 7333   9590   
    fn test_parse() {
 7334         -
        let req = test_request("post-header-key-case");
        9591  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 7335   9592   
        assert_eq!(req.method, "POST");
 7336   9593   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7337   9594   
        assert!(req.headers.is_empty());
 7338   9595   
    }
 7339   9596   
 7340   9597   
    #[test]
 7341   9598   
    fn test_read_query_params() {
 7342         -
        let req = test_request("get-header-value-trim");
        9599  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 7343   9600   
        assert_eq!(req.method, "GET");
 7344   9601   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7345   9602   
        assert!(!req.headers.is_empty());
 7346   9603   
    }
 7347   9604   
}
 7348   9605   
 7349   9606   
fn read(path: &str) -> String {
 7350   9607   
    println!("Loading `{}` for test case...", path);
 7351   9608   
    let v = {
 7352   9609   
        match std::fs::read_to_string(path) {
 7353   9610   
            // This replacement is necessary for tests to pass on Windows, as reading the
 7354   9611   
            // test snapshots from the file system results in CRLF line endings being inserted.
 7355   9612   
            Ok(value) => value.replace("\r\n", "\n"),
 7356   9613   
            Err(err) => {
 7357   9614   
                panic!("failed to load test case `{}`: {}", path, err);
 7358   9615   
            }
 7359   9616   
        }
 7360   9617   
    };
 7361   9618   
 7362   9619   
    v.trim().to_string()
 7363   9620   
}
 7364   9621   
 7365   9622   
pub(crate) struct TestRequest {
 7366   9623   
    pub(crate) uri: String,
 7367   9624   
    pub(crate) method: String,
 7368   9625   
    pub(crate) headers: Vec<(String, String)>,
 7369   9626   
    pub(crate) body: TestSignedBody,
 7370   9627   
}
 7371   9628   
 7372   9629   
pub(crate) enum TestSignedBody {
 7373   9630   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 7374   9631   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 7375   9632   
                    )
 7376   9633   
                })
 7377   9634   
                .collect::<Vec<_>>(),
 7378   9635   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 7379   9636   
        }
 7380   9637   
    }
 7381   9638   
}
 7382   9639   
 7383   9640   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 7384   9641   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 7385   9642   
        SignableRequest::new(
 7386   9643   
            &request.method,
 7387   9644   
            &request.uri,
 7388   9645   
            request
 7389   9646   
                .headers
 7390   9647   
                .iter()
 7391   9648   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 7392   9649   
            request.body.as_signable_body(),
 7393   9650   
        )
 7394   9651   
        .expect("URI MUST be valid")
 7395   9652   
    }
 7396   9653   
}
 7397   9654   
 7398   9655   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 7399   9656   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 7400   9657   
    // httparse 1.5 requires two trailing newlines to head the header section.
 7401   9658   
    let mut with_newline = Vec::from(s);
 7402   9659   
    with_newline.push(b'\n');
 7403   9660   
    let mut req = httparse::Request::new(&mut headers);
 7404         -
    let _ = req.parse(&with_newline).unwrap();
        9661  +
    let status = req.parse(&with_newline).unwrap();
        9662  +
        9663  +
    let body = if status.is_complete() {
        9664  +
        let body_offset = status.unwrap();
        9665  +
        // ignore the newline we added, take from original
        9666  +
        &s[body_offset..]
        9667  +
    } else {
        9668  +
        &[]
        9669  +
    };
 7405   9670   
 7406   9671   
    let mut uri_builder = Uri::builder().scheme("https");
 7407   9672   
    if let Some(path) = req.path {
 7408   9673   
        uri_builder = uri_builder.path_and_query(path);
 7409   9674   
    }
 7410   9675   
 7411   9676   
    let mut headers = vec![];
 7412   9677   
    for header in req.headers {
 7413   9678   
        let name = header.name.to_lowercase();
 7414   9679   
        if name == "host" {
 7415   9680   
            uri_builder = uri_builder.authority(header.value);
 7416   9681   
        } else if !name.is_empty() {
 7417   9682   
            headers.push((
 7418   9683   
                header.name.to_string(),
 7419   9684   
                std::str::from_utf8(header.value)?.to_string(),
 7420   9685   
            ));
 7421   9686   
        }
 7422   9687   
    }
 7423   9688   
 7424   9689   
    Ok(TestRequest {
 7425   9690   
        uri: uri_builder.build()?.to_string(),
 7426   9691   
        method: req.method.unwrap().to_string(),
 7427   9692   
        headers,
 7428         -
        body: TestSignedBody::Bytes(vec![]),
        9693  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 7429   9694   
    })
 7430   9695   
}
 7431   9696   
 7432   9697   
#[test]
 7433   9698   
fn test_parse_headers() {
 7434   9699   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 7435   9700   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 7436   9701   
    assert_eq!(
 7437   9702   
        httparse::parse_headers(buf, &mut headers),
 7438   9703   
        Ok(httparse::Status::Complete((
 7439   9704   
            56,
 7440   9705   
            &[
 7441   9706   
                httparse::Header {
 7442   9707   
                    name: "Host",
 7443   9708   
                    value: b"example.amazonaws.com",
 7444   9709   
                },
 7445   9710   
                httparse::Header {
 7446   9711   
                    name: "X-Amz-Date",
 7447   9712   
                    value: b"20150830T123600Z",
 7448   9713   
                }
 7449   9714   
            ][..]
 7450   9715   
        )))
 7451   9716   
    );
 7452   9717   
}
 7453   9718   
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
 7454   9719   
index a208453..fc00249 100644
 7455         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        9720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 7456   9721   
@@ -168,52 +168,54 @@ pub mod signing_params {
 7457   9722   
        );
 7458   9723   
 7459   9724   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 7460   9725   
        /// a required argument was not given.
 7461   9726   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 7462   9727   
            Ok(SigningParams {
 7463   9728   
                identity: self
 7464   9729   
                    .identity
 7465   9730   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 7466   9731   
                region: self
 7467   9732   
                    .region
 7468   9733   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 7469   9734   
                name: self
 7470   9735   
                    .name
 7471   9736   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 7472   9737   
                time: self
 7473   9738   
                    .time
 7474   9739   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 7475   9740   
                settings: self
 7476   9741   
                    .settings
 7477   9742   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 7478   9743   
            })
 7479   9744   
        }
 7480   9745   
    }
 7481   9746   
}
 7482   9747   
 7483   9748   
#[cfg(test)]
 7484   9749   
mod tests {
 7485   9750   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 7486   9751   
    use crate::date_time::test_parsers::parse_date_time;
 7487         -
    use crate::http_request::test;
 7488   9752   
 7489   9753   
    #[test]
 7490   9754   
    fn test_signature_calculation() {
 7491   9755   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 7492         -
        let creq = test::v4::test_canonical_request("iam");
        9756  +
        let creq = r#"AWS4-HMAC-SHA256
        9757  +
20150830T123600Z
        9758  +
20150830/us-east-1/iam/aws4_request
        9759  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 7493   9760   
        let time = parse_date_time("20150830T123600Z").unwrap();
 7494   9761   
 7495   9762   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 7496   9763   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 7497   9764   
 7498   9765   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 7499   9766   
        assert_eq!(expected, &signature);
 7500   9767   
    }
 7501   9768   
 7502   9769   
    #[test]
 7503   9770   
    fn sign_payload_empty_string() {
 7504   9771   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 7505   9772   
        let actual = sha256_hex_string([]);
 7506   9773   
        assert_eq!(expected, actual);
 7507   9774   
    }
 7508   9775   
}
 7509   9776   
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
 7510   9777   
index ce78c38..8c2f591 100644
 7511         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        9778  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 7512   9779   
@@ -1,43 +1,43 @@
 7513   9780   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7514   9781   
[package]
 7515   9782   
name = "aws-smithy-checksums"
 7516   9783   
version = "0.63.5"
 7517   9784   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 7518   9785   
description = "Checksum calculation and verification callbacks"
 7519   9786   
edition = "2021"
 7520   9787   
license = "Apache-2.0"
 7521   9788   
repository = "https://github.com/smithy-lang/smithy-rs"
 7522   9789   
[package.metadata.docs.rs]
 7523   9790   
all-features = true
 7524   9791   
targets = ["x86_64-unknown-linux-gnu"]
 7525   9792   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7526   9793   
rustdoc-args = ["--cfg", "docsrs"]
 7527   9794   
 7528   9795   
[dependencies]
 7529   9796   
bytes = "1.10.0"
 7530   9797   
crc-fast = "1.3.0"
 7531   9798   
hex = "0.4.3"
 7532   9799   
http = "0.2.9"
 7533   9800   
http-body = "0.4.5"
 7534   9801   
md-5 = "0.10"
 7535   9802   
pin-project-lite = "0.2.14"
 7536   9803   
sha1 = "0.10"
 7537   9804   
sha2 = "0.10"
 7538   9805   
tracing = "0.1.40"
 7539   9806   
 7540   9807   
[dependencies.aws-smithy-http]
 7541   9808   
path = "../aws-smithy-http"
 7542         -
version = "0.62.2"
        9809  +
version = "0.62.3"
 7543   9810   
 7544   9811   
[dependencies.aws-smithy-types]
 7545   9812   
path = "../aws-smithy-types"
 7546   9813   
version = "1.3.2"
 7547   9814   
 7548   9815   
[dev-dependencies]
 7549   9816   
bytes-utils = "0.1.2"
 7550   9817   
pretty_assertions = "1.3"
 7551   9818   
tracing-test = "0.2.1"
 7552   9819   
 7553   9820   
[dev-dependencies.tokio]
 7554   9821   
version = "1.23.1"
 7555   9822   
features = ["macros", "rt"]
 7556   9823   
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
 7557   9824   
index 970c99e..d3c7a49 100644
 7558         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        9825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 7559   9826   
@@ -1,34 +1,34 @@
 7560   9827   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7561   9828   
[package]
 7562   9829   
name = "aws-smithy-http"
 7563         -
version = "0.62.2"
        9830  +
version = "0.62.3"
 7564   9831   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7565   9832   
description = "Smithy HTTP logic for smithy-rs."
 7566   9833   
edition = "2021"
 7567   9834   
license = "Apache-2.0"
 7568   9835   
repository = "https://github.com/smithy-lang/smithy-rs"
 7569   9836   
[package.metadata.docs.rs]
 7570   9837   
all-features = true
 7571   9838   
targets = ["x86_64-unknown-linux-gnu"]
 7572   9839   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7573   9840   
rustdoc-args = ["--cfg", "docsrs"]
 7574   9841   
 7575   9842   
[features]
 7576   9843   
event-stream = ["aws-smithy-eventstream"]
 7577   9844   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 7578   9845   
 7579   9846   
[dependencies]
 7580   9847   
bytes = "1.10.0"
 7581   9848   
bytes-utils = "0.1"
 7582   9849   
percent-encoding = "2.3.1"
 7583   9850   
pin-project-lite = "0.2.14"
 7584   9851   
pin-utils = "0.1.0"
 7585   9852   
tracing = "0.1.40"
 7586   9853   
futures-core = "0.3.31"
 7587   9854   
 7588   9855   
[dependencies.aws-smithy-eventstream]
 7589   9856   
path = "../aws-smithy-eventstream"
 7590   9857   
optional = true
 7591   9858   
version = "0.60.10"
 7592   9859   
 7593   9860   
[dependencies.aws-smithy-runtime-api]
 7594   9861   
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
 7595   9862   
index 508f7a2..361545e 100644
 7596         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        9863  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 7597   9864   
@@ -1,27 +1,27 @@
 7598   9865   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7599   9866   
[[bin]]
 7600   9867   
name = "read_many_from_str"
 7601   9868   
path = "fuzz_targets/read_many_from_str.rs"
 7602   9869   
test = false
 7603   9870   
doc = false
 7604   9871   
 7605   9872   
[package]
 7606   9873   
name = "aws-smithy-http-fuzz"
 7607   9874   
version = "0.0.0"
 7608   9875   
authors = ["Automatically generated"]
 7609   9876   
publish = false
 7610   9877   
edition = "2021"
 7611   9878   
 7612   9879   
[package.metadata]
 7613   9880   
cargo-fuzz = true
 7614   9881   
 7615   9882   
[dependencies]
 7616   9883   
libfuzzer-sys = "=0.4.7"
 7617   9884   
http = "0.2.3"
 7618   9885   
 7619   9886   
[dependencies.aws-smithy-http]
 7620   9887   
path = ".."
 7621         -
version = "0.62.2"
        9888  +
version = "0.62.3"
 7622   9889   
 7623   9890   
[workspace]
 7624   9891   
members = ["."]
 7625   9892   
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
 7626   9893   
index fef41d0..2792229 100644
 7627         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        9894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 7628   9895   
@@ -25,68 +25,74 @@ impl QueryWriter {
 7629   9896   
    pub fn new(uri: &Uri) -> Self {
 7630   9897   
        let new_path_and_query = uri
 7631   9898   
            .path_and_query()
 7632   9899   
            .map(|pq| pq.to_string())
 7633   9900   
            .unwrap_or_default();
 7634   9901   
        let prefix = if uri.query().is_none() {
 7635   9902   
            Some('?')
 7636   9903   
        } else if !uri.query().unwrap_or_default().is_empty() {
 7637   9904   
            Some('&')
 7638   9905   
        } else {
 7639   9906   
            None
 7640   9907   
        };
 7641   9908   
        QueryWriter {
 7642   9909   
            base_uri: uri.clone(),
 7643   9910   
            new_path_and_query,
 7644   9911   
            prefix,
 7645   9912   
        }
 7646   9913   
    }
 7647   9914   
 7648   9915   
    /// Clears all query parameters.
 7649   9916   
    pub fn clear_params(&mut self) {
 7650   9917   
        if let Some(index) = self.new_path_and_query.find('?') {
 7651   9918   
            self.new_path_and_query.truncate(index);
 7652   9919   
            self.prefix = Some('?');
 7653   9920   
        }
 7654   9921   
    }
 7655   9922   
 7656   9923   
    /// Inserts a new query parameter. The key and value are percent encoded
 7657   9924   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 7658   9925   
    pub fn insert(&mut self, k: &str, v: &str) {
        9926  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        9927  +
    }
        9928  +
    
        9929  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        9930  +
    /// as is.
        9931  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 7659   9932   
        if let Some(prefix) = self.prefix {
 7660   9933   
            self.new_path_and_query.push(prefix);
 7661   9934   
        }
 7662   9935   
        self.prefix = Some('&');
 7663         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        9936  +
        self.new_path_and_query.push_str(encoded_k);
 7664   9937   
        self.new_path_and_query.push('=');
 7665         -
 7666         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
        9938  +
        self.new_path_and_query.push_str(encoded_v)
        9939  +
        
 7667   9940   
    }
 7668   9941   
 7669   9942   
    /// Returns just the built query string.
 7670   9943   
    pub fn build_query(self) -> String {
 7671   9944   
        self.build_uri().query().unwrap_or_default().to_string()
 7672   9945   
    }
 7673   9946   
 7674   9947   
    /// Returns a full [`Uri`] with the query string updated.
 7675   9948   
    pub fn build_uri(self) -> Uri {
 7676   9949   
        let mut parts = self.base_uri.into_parts();
 7677   9950   
        parts.path_and_query = Some(
 7678   9951   
            self.new_path_and_query
 7679   9952   
                .parse()
 7680   9953   
                .expect("adding query should not invalidate URI"),
 7681   9954   
        );
 7682   9955   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 7683   9956   
    }
 7684   9957   
}
 7685   9958   
 7686   9959   
#[cfg(test)]
 7687   9960   
mod test {
 7688   9961   
    use super::QueryWriter;
 7689   9962   
    use http_02x::Uri;
 7690   9963   
 7691   9964   
    #[test]
 7692   9965   
    fn empty_uri() {
 7693   9966   
        let uri = Uri::from_static("http://www.example.com");
 7694   9967   
        let mut query_writer = QueryWriter::new(&uri);
 7695   9968   
        query_writer.insert("key", "val%ue");
 7696   9969   
        query_writer.insert("another", "value");
 7697   9970   
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
 7698   9971   
index f108978..df7a9fe 100644
 7699         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        9972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 7700   9973   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 7701   9974   
 7702   9975   
[package.metadata.smithy-rs-release-tooling]
 7703   9976   
stable = true
 7704   9977   
[package.metadata.cargo-udeps.ignore]
 7705   9978   
normal = ["aws-smithy-http"]
 7706   9979   
 7707   9980   
[features]
 7708   9981   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 7709   9982   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 7710   9983   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 7711   9984   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 7712   9985   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 7713   9986   
rt-tokio = ["tokio/rt"]
 7714   9987   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 7715   9988   
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"]
 7716   9989   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 7717   9990   
 7718   9991   
[dependencies]
 7719   9992   
bytes = "1.10.0"
 7720   9993   
fastrand = "2.3.0"
 7721   9994   
pin-project-lite = "0.2.14"
 7722   9995   
pin-utils = "0.1.0"
 7723   9996   
tracing = "0.1.40"
 7724   9997   
 7725   9998   
[dependencies.aws-smithy-async]
 7726   9999   
path = "../aws-smithy-async"
 7727  10000   
version = "1.2.5"
 7728  10001   
 7729  10002   
[dependencies.aws-smithy-http]
 7730  10003   
path = "../aws-smithy-http"
 7731         -
version = "0.62.2"
       10004  +
version = "0.62.3"
 7732  10005   
 7733  10006   
[dependencies.aws-smithy-observability]
 7734  10007   
path = "../aws-smithy-observability"
 7735  10008   
version = "0.1.3"
 7736  10009   
 7737  10010   
[dependencies.aws-smithy-runtime-api]
 7738  10011   
path = "../aws-smithy-runtime-api"
 7739  10012   
version = "1.8.5"
 7740  10013   
 7741  10014   
[dependencies.aws-smithy-types]
 7742  10015   
path = "../aws-smithy-types"
 7743  10016   
features = ["http-body-0-4-x"]
 7744  10017   
version = "1.3.2"
 7745  10018   
 7746  10019   
[dependencies.aws-smithy-http-client]
 7747  10020   
path = "../aws-smithy-http-client"
 7748  10021   
optional = true
 7749  10022   
version = "1.0.6"
 7750  10023   
 7751  10024   
[dependencies.http-02x]
 7752  10025   
package = "http"
 7753  10026   
version = "0.2.9"
 7754  10027   
 7755  10028   
[dependencies.http-1x]
 7756  10029   
package = "http"
 7757  10030   
version = "1"
 7758  10031   
 7759  10032   
[dependencies.http-body-04x]
 7760  10033   
package = "http-body"
 7761  10034   
version = "0.4.5"
 7762  10035   
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
 7763  10036   
index 4e050c6..f58eb1c 100644
 7764         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
       10037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 7765  10038   
@@ -1,33 +1,33 @@
 7766  10039   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7767  10040   
[package]
 7768  10041   
name = "aws-smithy-wasm"
 7769  10042   
version = "0.1.4"
 7770  10043   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 7771  10044   
description = "Smithy WebAssembly configuration for smithy-rs."
 7772  10045   
edition = "2021"
 7773  10046   
license = "Apache-2.0"
 7774  10047   
repository = "https://github.com/awslabs/smithy-rs"
 7775  10048   
[package.metadata.docs.rs]
 7776  10049   
all-features = true
 7777  10050   
targets = ["x86_64-unknown-linux-gnu"]
 7778  10051   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7779  10052   
rustdoc-args = ["--cfg", "docsrs"]
 7780  10053   
 7781  10054   
[dependencies]
 7782  10055   
bytes = "1.10.0"
 7783  10056   
http = "1.0.0"
 7784  10057   
tracing = "0.1.40"
 7785  10058   
wasi = "0.12.1"
 7786  10059   
 7787  10060   
[dependencies.aws-smithy-runtime-api]
 7788  10061   
path = "../aws-smithy-runtime-api"
 7789  10062   
features = ["http-1x"]
 7790  10063   
version = "1.8.5"
 7791  10064   
 7792  10065   
[dependencies.aws-smithy-http]
 7793  10066   
path = "../aws-smithy-http"
 7794         -
version = "0.62.2"
       10067  +
version = "0.62.3"
 7795  10068   
 7796  10069   
[dependencies.aws-smithy-types]
 7797  10070   
path = "../aws-smithy-types"
 7798  10071   
version = "1.3.2"
 7799  10072   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7800  10073   
index a880648..139e808 100644
 7801         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
       10074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 7802  10075   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 7803  10076   
edition = "2021"
 7804  10077   
license = "Apache-2.0"
 7805  10078   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7806  10079   
rust-version = "1.86.0"
 7807  10080   
readme = "README.md"
 7808  10081   
[package.metadata.smithy]
 7809  10082   
codegen-version = "ci"
 7810  10083   
[package.metadata.docs.rs]
 7811  10084   
all-features = true
 7812  10085   
targets = ["x86_64-unknown-linux-gnu"]
 7813  10086   
[dependencies.aws-credential-types]
 7814  10087   
path = "../aws-credential-types"
 7815  10088   
version = "1.2.4"
 7816  10089   
 7817  10090   
[dependencies.aws-runtime]
 7818  10091   
path = "../aws-runtime"
 7819  10092   
features = ["event-stream"]
 7820  10093   
version = "1.5.9"
 7821  10094   
 7822  10095   
[dependencies.aws-smithy-async]
 7823  10096   
path = "../aws-smithy-async"
 7824  10097   
version = "1.2.5"
 7825  10098   
 7826  10099   
[dependencies.aws-smithy-eventstream]
 7827  10100   
path = "../aws-smithy-eventstream"
 7828  10101   
version = "0.60.10"
 7829  10102   
 7830  10103   
[dependencies.aws-smithy-http]
 7831  10104   
path = "../aws-smithy-http"
 7832  10105   
features = ["event-stream"]
 7833         -
version = "0.62.2"
       10106  +
version = "0.62.3"
 7834  10107   
 7835  10108   
[dependencies.aws-smithy-json]
 7836  10109   
path = "../aws-smithy-json"
 7837  10110   
version = "0.61.4"
 7838  10111   
 7839  10112   
[dependencies.aws-smithy-runtime]
 7840  10113   
path = "../aws-smithy-runtime"
 7841  10114   
features = ["client"]
 7842  10115   
version = "1.8.5"
 7843  10116   
 7844  10117   
[dependencies.aws-smithy-runtime-api]
 7845  10118   
path = "../aws-smithy-runtime-api"
 7846  10119   
features = ["client", "http-02x"]
 7847  10120   
version = "1.8.5"
 7848  10121   
 7849  10122   
[dependencies.aws-smithy-types]
 7850  10123   
path = "../aws-smithy-types"
 7851  10124   
version = "1.3.2"
 7852  10125   
 7853  10126   
[dependencies.aws-types]
 7854  10127   
path = "../aws-types"
 7855  10128   
version = "1.3.8"
 7856  10129   
 7857  10130   
[dependencies.bytes]
 7858  10131   
version = "1.4.0"
 7859  10132   
 7860  10133   
[dependencies.fastrand]
 7861  10134   
version = "2.0.0"
 7862  10135   
 7863  10136   
[dependencies.http]
 7864  10137   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7865  10138   
index 415ecc9..667d12b 100644
 7866         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
       10139  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7867  10140   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 7868  10141   
edition = "2021"
 7869  10142   
license = "Apache-2.0"
 7870  10143   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7871  10144   
rust-version = "1.86.0"
 7872  10145   
readme = "README.md"
 7873  10146   
[package.metadata.smithy]
 7874  10147   
codegen-version = "ci"
 7875  10148   
[package.metadata.docs.rs]
 7876  10149   
all-features = true
 7877  10150   
targets = ["x86_64-unknown-linux-gnu"]
 7878  10151   
[dependencies.aws-credential-types]
 7879  10152   
path = "../aws-credential-types"
 7880  10153   
version = "1.2.4"
 7881  10154   
 7882  10155   
[dependencies.aws-runtime]
 7883  10156   
path = "../aws-runtime"
 7884  10157   
features = ["event-stream"]
 7885  10158   
version = "1.5.9"
 7886  10159   
 7887  10160   
[dependencies.aws-smithy-async]
 7888  10161   
path = "../aws-smithy-async"
 7889  10162   
version = "1.2.5"
 7890  10163   
 7891  10164   
[dependencies.aws-smithy-eventstream]
 7892  10165   
path = "../aws-smithy-eventstream"
 7893  10166   
version = "0.60.10"
 7894  10167   
 7895  10168   
[dependencies.aws-smithy-http]
 7896  10169   
path = "../aws-smithy-http"
 7897  10170   
features = ["event-stream"]
 7898         -
version = "0.62.2"
       10171  +
version = "0.62.3"
 7899  10172   
 7900  10173   
[dependencies.aws-smithy-json]
 7901  10174   
path = "../aws-smithy-json"
 7902  10175   
version = "0.61.4"
 7903  10176   
 7904  10177   
[dependencies.aws-smithy-runtime]
 7905  10178   
path = "../aws-smithy-runtime"
 7906  10179   
features = ["client"]
 7907  10180   
version = "1.8.5"
 7908  10181   
 7909  10182   
[dependencies.aws-smithy-runtime-api]
 7910  10183   
path = "../aws-smithy-runtime-api"
 7911  10184   
features = ["client", "http-02x"]
 7912  10185   
version = "1.8.5"
 7913  10186   
 7914  10187   
[dependencies.aws-smithy-types]
 7915  10188   
path = "../aws-smithy-types"
 7916  10189   
version = "1.3.2"
 7917  10190   
 7918  10191   
[dependencies.aws-types]
 7919  10192   
path = "../aws-types"
 7920  10193   
version = "1.3.8"
 7921  10194   
 7922  10195   
[dependencies.bytes]
 7923  10196   
version = "1.4.0"
 7924  10197   
 7925  10198   
[dependencies.fastrand]
 7926  10199   
version = "2.0.0"
 7927  10200   
 7928  10201   
[dependencies.http]
 7929  10202   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7930  10203   
index 8871cab..ed88de6 100644
 7931         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
       10204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7932  10205   
@@ -1,61 +1,61 @@
 7933  10206   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7934  10207   
[package]
 7935  10208   
name = "aws-sdk-codecatalyst"
 7936  10209   
version = "0.0.0-local"
 7937  10210   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7938  10211   
description = "AWS SDK for Amazon CodeCatalyst"
 7939  10212   
edition = "2021"
 7940  10213   
license = "Apache-2.0"
 7941  10214   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7942  10215   
rust-version = "1.86.0"
 7943  10216   
readme = "README.md"
 7944  10217   
[package.metadata.smithy]
 7945  10218   
codegen-version = "ci"
 7946  10219   
[package.metadata.docs.rs]
 7947  10220   
all-features = true
 7948  10221   
targets = ["x86_64-unknown-linux-gnu"]
 7949  10222   
[dependencies.aws-credential-types]
 7950  10223   
path = "../aws-credential-types"
 7951  10224   
version = "1.2.4"
 7952  10225   
 7953  10226   
[dependencies.aws-runtime]
 7954  10227   
path = "../aws-runtime"
 7955  10228   
version = "1.5.9"
 7956  10229   
 7957  10230   
[dependencies.aws-smithy-async]
 7958  10231   
path = "../aws-smithy-async"
 7959  10232   
version = "1.2.5"
 7960  10233   
 7961  10234   
[dependencies.aws-smithy-http]
 7962  10235   
path = "../aws-smithy-http"
 7963         -
version = "0.62.2"
       10236  +
version = "0.62.3"
 7964  10237   
 7965  10238   
[dependencies.aws-smithy-json]
 7966  10239   
path = "../aws-smithy-json"
 7967  10240   
version = "0.61.4"
 7968  10241   
 7969  10242   
[dependencies.aws-smithy-runtime]
 7970  10243   
path = "../aws-smithy-runtime"
 7971  10244   
features = ["client", "http-auth"]
 7972  10245   
version = "1.8.5"
 7973  10246   
 7974  10247   
[dependencies.aws-smithy-runtime-api]
 7975  10248   
path = "../aws-smithy-runtime-api"
 7976  10249   
features = ["client", "http-02x", "http-auth"]
 7977  10250   
version = "1.8.5"
 7978  10251   
 7979  10252   
[dependencies.aws-smithy-types]
 7980  10253   
path = "../aws-smithy-types"
 7981  10254   
version = "1.3.2"
 7982  10255   
 7983  10256   
[dependencies.aws-types]
 7984  10257   
path = "../aws-types"
 7985  10258   
version = "1.3.8"
 7986  10259   
 7987  10260   
[dependencies.bytes]
 7988  10261   
version = "1.4.0"
 7989  10262   
 7990  10263   
[dependencies.fastrand]
 7991  10264   
version = "2.0.0"
 7992  10265   
 7993  10266   
[dependencies.http]
 7994  10267   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7995  10268   
index 89573ff..05238af 100644
 7996         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
       10269  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7997  10270   
@@ -1,61 +1,61 @@
 7998  10271   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7999  10272   
[package]
 8000  10273   
name = "aws-sdk-config"
 8001  10274   
version = "0.0.0-local"
 8002  10275   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8003  10276   
description = "AWS SDK for AWS Config"
 8004  10277   
edition = "2021"
 8005  10278   
license = "Apache-2.0"
 8006  10279   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8007  10280   
rust-version = "1.86.0"
 8008  10281   
readme = "README.md"
 8009  10282   
[package.metadata.smithy]
 8010  10283   
codegen-version = "ci"
 8011  10284   
[package.metadata.docs.rs]
 8012  10285   
all-features = true
 8013  10286   
targets = ["x86_64-unknown-linux-gnu"]
 8014  10287   
[dependencies.aws-credential-types]
 8015  10288   
path = "../aws-credential-types"
 8016  10289   
version = "1.2.4"
 8017  10290   
 8018  10291   
[dependencies.aws-runtime]
 8019  10292   
path = "../aws-runtime"
 8020  10293   
version = "1.5.9"
 8021  10294   
 8022  10295   
[dependencies.aws-smithy-async]
 8023  10296   
path = "../aws-smithy-async"
 8024  10297   
version = "1.2.5"
 8025  10298   
 8026  10299   
[dependencies.aws-smithy-http]
 8027  10300   
path = "../aws-smithy-http"
 8028         -
version = "0.62.2"
       10301  +
version = "0.62.3"
 8029  10302   
 8030  10303   
[dependencies.aws-smithy-json]
 8031  10304   
path = "../aws-smithy-json"
 8032  10305   
version = "0.61.4"
 8033  10306   
 8034  10307   
[dependencies.aws-smithy-runtime]
 8035  10308   
path = "../aws-smithy-runtime"
 8036  10309   
features = ["client"]
 8037  10310   
version = "1.8.5"
 8038  10311   
 8039  10312   
[dependencies.aws-smithy-runtime-api]
 8040  10313   
path = "../aws-smithy-runtime-api"
 8041  10314   
features = ["client", "http-02x"]
 8042  10315   
version = "1.8.5"
 8043  10316   
 8044  10317   
[dependencies.aws-smithy-types]
 8045  10318   
path = "../aws-smithy-types"
 8046  10319   
version = "1.3.2"
 8047  10320   
 8048  10321   
[dependencies.aws-types]
 8049  10322   
path = "../aws-types"
 8050  10323   
version = "1.3.8"
 8051  10324   
 8052  10325   
[dependencies.bytes]
 8053  10326   
version = "1.4.0"
 8054  10327   
 8055  10328   
[dependencies.fastrand]
 8056  10329   
version = "2.0.0"
 8057  10330   
 8058  10331   
[dependencies.http]
 8059  10332   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8060  10333   
index d397c58..2c1062b 100644
 8061         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
       10334  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8062  10335   
@@ -1,61 +1,61 @@
 8063  10336   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8064  10337   
[package]
 8065  10338   
name = "aws-sdk-dynamodb"
 8066  10339   
version = "0.0.0-local"
 8067  10340   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8068  10341   
description = "AWS SDK for Amazon DynamoDB"
 8069  10342   
edition = "2021"
 8070  10343   
license = "Apache-2.0"
 8071  10344   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8072  10345   
rust-version = "1.86.0"
 8073  10346   
readme = "README.md"
 8074  10347   
[package.metadata.smithy]
 8075  10348   
codegen-version = "ci"
 8076  10349   
[package.metadata.docs.rs]
 8077  10350   
all-features = true
 8078  10351   
targets = ["x86_64-unknown-linux-gnu"]
 8079  10352   
[dependencies.aws-credential-types]
 8080  10353   
path = "../aws-credential-types"
 8081  10354   
version = "1.2.4"
 8082  10355   
 8083  10356   
[dependencies.aws-runtime]
 8084  10357   
path = "../aws-runtime"
 8085  10358   
version = "1.5.9"
 8086  10359   
 8087  10360   
[dependencies.aws-smithy-async]
 8088  10361   
path = "../aws-smithy-async"
 8089  10362   
version = "1.2.5"
 8090  10363   
 8091  10364   
[dependencies.aws-smithy-http]
 8092  10365   
path = "../aws-smithy-http"
 8093         -
version = "0.62.2"
       10366  +
version = "0.62.3"
 8094  10367   
 8095  10368   
[dependencies.aws-smithy-json]
 8096  10369   
path = "../aws-smithy-json"
 8097  10370   
version = "0.61.4"
 8098  10371   
 8099  10372   
[dependencies.aws-smithy-runtime]
 8100  10373   
path = "../aws-smithy-runtime"
 8101  10374   
features = ["client"]
 8102  10375   
version = "1.8.5"
 8103  10376   
 8104  10377   
[dependencies.aws-smithy-runtime-api]
 8105  10378   
path = "../aws-smithy-runtime-api"
 8106  10379   
features = ["client", "http-02x"]
 8107  10380   
version = "1.8.5"
 8108  10381   
 8109  10382   
[dependencies.aws-smithy-types]
 8110  10383   
path = "../aws-smithy-types"
 8111  10384   
version = "1.3.2"
 8112  10385   
 8113  10386   
[dependencies.aws-types]
 8114  10387   
path = "../aws-types"
 8115  10388   
version = "1.3.8"
 8116  10389   
 8117  10390   
[dependencies.bytes]
 8118  10391   
version = "1.4.0"
 8119  10392   
 8120  10393   
[dependencies.fastrand]
 8121  10394   
version = "2.0.0"
 8122  10395   
 8123  10396   
[dependencies.http]
 8124  10397   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8125  10398   
index c0ba315..46168af 100644
 8126         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
       10399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8127  10400   
@@ -1,61 +1,61 @@
 8128  10401   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8129  10402   
[package]
 8130  10403   
name = "aws-sdk-ec2"
 8131  10404   
version = "0.0.0-local"
 8132  10405   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8133  10406   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 8134  10407   
edition = "2021"
 8135  10408   
license = "Apache-2.0"
 8136  10409   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8137  10410   
rust-version = "1.86.0"
 8138  10411   
readme = "README.md"
 8139  10412   
[package.metadata.smithy]
 8140  10413   
codegen-version = "ci"
 8141  10414   
[package.metadata.docs.rs]
 8142  10415   
all-features = true
 8143  10416   
targets = ["x86_64-unknown-linux-gnu"]
 8144  10417   
[dependencies.aws-credential-types]
 8145  10418   
path = "../aws-credential-types"
 8146  10419   
version = "1.2.4"
 8147  10420   
 8148  10421   
[dependencies.aws-runtime]
 8149  10422   
path = "../aws-runtime"
 8150  10423   
version = "1.5.9"
 8151  10424   
 8152  10425   
[dependencies.aws-smithy-async]
 8153  10426   
path = "../aws-smithy-async"
 8154  10427   
version = "1.2.5"
 8155  10428   
 8156  10429   
[dependencies.aws-smithy-http]
 8157  10430   
path = "../aws-smithy-http"
 8158         -
version = "0.62.2"
       10431  +
version = "0.62.3"
 8159  10432   
 8160  10433   
[dependencies.aws-smithy-json]
 8161  10434   
path = "../aws-smithy-json"
 8162  10435   
version = "0.61.4"
 8163  10436   
 8164  10437   
[dependencies.aws-smithy-query]
 8165  10438   
path = "../aws-smithy-query"
 8166  10439   
version = "0.60.7"
 8167  10440   
 8168  10441   
[dependencies.aws-smithy-runtime]
 8169  10442   
path = "../aws-smithy-runtime"
 8170  10443   
features = ["client"]
 8171  10444   
version = "1.8.5"
 8172  10445   
 8173  10446   
[dependencies.aws-smithy-runtime-api]
 8174  10447   
path = "../aws-smithy-runtime-api"
 8175  10448   
features = ["client", "http-02x"]
 8176  10449   
version = "1.8.5"
 8177  10450   
 8178  10451   
[dependencies.aws-smithy-types]
 8179  10452   
path = "../aws-smithy-types"
 8180  10453   
version = "1.3.2"
 8181  10454   
 8182  10455   
[dependencies.aws-smithy-xml]
 8183  10456   
path = "../aws-smithy-xml"
 8184  10457   
version = "0.60.10"
 8185  10458   
 8186  10459   
[dependencies.aws-types]
 8187  10460   
path = "../aws-types"
 8188  10461   
version = "1.3.8"
 8189  10462   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8190  10463   
index 4474d17..095d40e 100644
 8191         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
       10464  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8192  10465   
@@ -1,61 +1,61 @@
 8193  10466   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8194  10467   
[package]
 8195  10468   
name = "aws-sdk-ecs"
 8196  10469   
version = "0.0.0-local"
 8197  10470   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8198  10471   
description = "AWS SDK for Amazon EC2 Container Service"
 8199  10472   
edition = "2021"
 8200  10473   
license = "Apache-2.0"
 8201  10474   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8202  10475   
rust-version = "1.86.0"
 8203  10476   
readme = "README.md"
 8204  10477   
[package.metadata.smithy]
 8205  10478   
codegen-version = "ci"
 8206  10479   
[package.metadata.docs.rs]
 8207  10480   
all-features = true
 8208  10481   
targets = ["x86_64-unknown-linux-gnu"]
 8209  10482   
[dependencies.aws-credential-types]
 8210  10483   
path = "../aws-credential-types"
 8211  10484   
version = "1.2.4"
 8212  10485   
 8213  10486   
[dependencies.aws-runtime]
 8214  10487   
path = "../aws-runtime"
 8215  10488   
version = "1.5.9"
 8216  10489   
 8217  10490   
[dependencies.aws-smithy-async]
 8218  10491   
path = "../aws-smithy-async"
 8219  10492   
version = "1.2.5"
 8220  10493   
 8221  10494   
[dependencies.aws-smithy-http]
 8222  10495   
path = "../aws-smithy-http"
 8223         -
version = "0.62.2"
       10496  +
version = "0.62.3"
 8224  10497   
 8225  10498   
[dependencies.aws-smithy-json]
 8226  10499   
path = "../aws-smithy-json"
 8227  10500   
version = "0.61.4"
 8228  10501   
 8229  10502   
[dependencies.aws-smithy-runtime]
 8230  10503   
path = "../aws-smithy-runtime"
 8231  10504   
features = ["client"]
 8232  10505   
version = "1.8.5"
 8233  10506   
 8234  10507   
[dependencies.aws-smithy-runtime-api]
 8235  10508   
path = "../aws-smithy-runtime-api"
 8236  10509   
features = ["client", "http-02x"]
 8237  10510   
version = "1.8.5"
 8238  10511   
 8239  10512   
[dependencies.aws-smithy-types]
 8240  10513   
path = "../aws-smithy-types"
 8241  10514   
version = "1.3.2"
 8242  10515   
 8243  10516   
[dependencies.aws-types]
 8244  10517   
path = "../aws-types"
 8245  10518   
version = "1.3.8"
 8246  10519   
 8247  10520   
[dependencies.bytes]
 8248  10521   
version = "1.4.0"
 8249  10522   
 8250  10523   
[dependencies.fastrand]
 8251  10524   
version = "2.0.0"
 8252  10525   
 8253  10526   
[dependencies.http]
 8254  10527   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8255  10528   
index 15b1d77..16d7d89 100644
 8256         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
       10529  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8257  10530   
@@ -1,65 +1,65 @@
 8258  10531   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8259  10532   
[package]
 8260  10533   
name = "aws-sdk-glacier"
 8261  10534   
version = "0.0.0-local"
 8262  10535   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8263  10536   
description = "AWS SDK for Amazon Glacier"
 8264  10537   
edition = "2021"
 8265  10538   
license = "Apache-2.0"
 8266  10539   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8267  10540   
rust-version = "1.86.0"
 8268  10541   
readme = "README.md"
 8269  10542   
[package.metadata.smithy]
 8270  10543   
codegen-version = "ci"
 8271  10544   
[package.metadata.docs.rs]
 8272  10545   
all-features = true
 8273  10546   
targets = ["x86_64-unknown-linux-gnu"]
 8274  10547   
[dependencies.aws-credential-types]
 8275  10548   
path = "../aws-credential-types"
 8276  10549   
version = "1.2.4"
 8277  10550   
 8278  10551   
[dependencies.aws-runtime]
 8279  10552   
path = "../aws-runtime"
 8280  10553   
version = "1.5.9"
 8281  10554   
 8282  10555   
[dependencies.aws-sigv4]
 8283  10556   
path = "../aws-sigv4"
 8284         -
version = "1.3.3"
       10557  +
version = "1.3.4"
 8285  10558   
 8286  10559   
[dependencies.aws-smithy-async]
 8287  10560   
path = "../aws-smithy-async"
 8288  10561   
version = "1.2.5"
 8289  10562   
 8290  10563   
[dependencies.aws-smithy-http]
 8291  10564   
path = "../aws-smithy-http"
 8292         -
version = "0.62.2"
       10565  +
version = "0.62.3"
 8293  10566   
 8294  10567   
[dependencies.aws-smithy-json]
 8295  10568   
path = "../aws-smithy-json"
 8296  10569   
version = "0.61.4"
 8297  10570   
 8298  10571   
[dependencies.aws-smithy-runtime]
 8299  10572   
path = "../aws-smithy-runtime"
 8300  10573   
features = ["client"]
 8301  10574   
version = "1.8.5"
 8302  10575   
 8303  10576   
[dependencies.aws-smithy-runtime-api]
 8304  10577   
path = "../aws-smithy-runtime-api"
 8305  10578   
features = ["client", "http-02x"]
 8306  10579   
version = "1.8.5"
 8307  10580   
 8308  10581   
[dependencies.aws-smithy-types]
 8309  10582   
path = "../aws-smithy-types"
 8310  10583   
version = "1.3.2"
 8311  10584   
 8312  10585   
[dependencies.aws-types]
 8313  10586   
path = "../aws-types"
 8314  10587   
version = "1.3.8"
 8315  10588   
 8316  10589   
[dependencies.bytes]
 8317  10590   
version = "1.4.0"
 8318  10591   
 8319  10592   
[dependencies.fastrand]
 8320  10593   
version = "2.0.0"
 8321  10594   
 8322  10595   
[dependencies.hex]
 8323  10596   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8324  10597   
index d718a3a..65e6f24 100644
 8325         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
       10598  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8326  10599   
@@ -1,61 +1,61 @@
 8327  10600   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8328  10601   
[package]
 8329  10602   
name = "aws-sdk-iam"
 8330  10603   
version = "0.0.0-local"
 8331  10604   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8332  10605   
description = "AWS SDK for AWS Identity and Access Management"
 8333  10606   
edition = "2021"
 8334  10607   
license = "Apache-2.0"
 8335  10608   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8336  10609   
rust-version = "1.86.0"
 8337  10610   
readme = "README.md"
 8338  10611   
[package.metadata.smithy]
 8339  10612   
codegen-version = "ci"
 8340  10613   
[package.metadata.docs.rs]
 8341  10614   
all-features = true
 8342  10615   
targets = ["x86_64-unknown-linux-gnu"]
 8343  10616   
[dependencies.aws-credential-types]
 8344  10617   
path = "../aws-credential-types"
 8345  10618   
version = "1.2.4"
 8346  10619   
 8347  10620   
[dependencies.aws-runtime]
 8348  10621   
path = "../aws-runtime"
 8349  10622   
version = "1.5.9"
 8350  10623   
 8351  10624   
[dependencies.aws-smithy-async]
 8352  10625   
path = "../aws-smithy-async"
 8353  10626   
version = "1.2.5"
 8354  10627   
 8355  10628   
[dependencies.aws-smithy-http]
 8356  10629   
path = "../aws-smithy-http"
 8357         -
version = "0.62.2"
       10630  +
version = "0.62.3"
 8358  10631   
 8359  10632   
[dependencies.aws-smithy-json]
 8360  10633   
path = "../aws-smithy-json"
 8361  10634   
version = "0.61.4"
 8362  10635   
 8363  10636   
[dependencies.aws-smithy-query]
 8364  10637   
path = "../aws-smithy-query"
 8365  10638   
version = "0.60.7"
 8366  10639   
 8367  10640   
[dependencies.aws-smithy-runtime]
 8368  10641   
path = "../aws-smithy-runtime"
 8369  10642   
features = ["client"]
 8370  10643   
version = "1.8.5"
 8371  10644   
 8372  10645   
[dependencies.aws-smithy-runtime-api]
 8373  10646   
path = "../aws-smithy-runtime-api"
 8374  10647   
features = ["client", "http-02x"]
 8375  10648   
version = "1.8.5"
 8376  10649   
 8377  10650   
[dependencies.aws-smithy-types]
 8378  10651   
path = "../aws-smithy-types"
 8379  10652   
version = "1.3.2"
 8380  10653   
 8381  10654   
[dependencies.aws-smithy-xml]
 8382  10655   
path = "../aws-smithy-xml"
 8383  10656   
version = "0.60.10"
 8384  10657   
 8385  10658   
[dependencies.aws-types]
 8386  10659   
path = "../aws-types"
 8387  10660   
version = "1.3.8"
 8388  10661   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8389  10662   
index 0ed4302..3d828a5 100644
 8390         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
       10663  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8391  10664   
@@ -1,61 +1,61 @@
 8392  10665   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8393  10666   
[package]
 8394  10667   
name = "aws-sdk-kms"
 8395  10668   
version = "0.0.0-local"
 8396  10669   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8397  10670   
description = "AWS SDK for AWS Key Management Service"
 8398  10671   
edition = "2021"
 8399  10672   
license = "Apache-2.0"
 8400  10673   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8401  10674   
rust-version = "1.86.0"
 8402  10675   
readme = "README.md"
 8403  10676   
[package.metadata.smithy]
 8404  10677   
codegen-version = "ci"
 8405  10678   
[package.metadata.docs.rs]
 8406  10679   
all-features = true
 8407  10680   
targets = ["x86_64-unknown-linux-gnu"]
 8408  10681   
[dependencies.aws-credential-types]
 8409  10682   
path = "../aws-credential-types"
 8410  10683   
version = "1.2.4"
 8411  10684   
 8412  10685   
[dependencies.aws-runtime]
 8413  10686   
path = "../aws-runtime"
 8414  10687   
version = "1.5.9"
 8415  10688   
 8416  10689   
[dependencies.aws-smithy-async]
 8417  10690   
path = "../aws-smithy-async"
 8418  10691   
version = "1.2.5"
 8419  10692   
 8420  10693   
[dependencies.aws-smithy-http]
 8421  10694   
path = "../aws-smithy-http"
 8422         -
version = "0.62.2"
       10695  +
version = "0.62.3"
 8423  10696   
 8424  10697   
[dependencies.aws-smithy-json]
 8425  10698   
path = "../aws-smithy-json"
 8426  10699   
version = "0.61.4"
 8427  10700   
 8428  10701   
[dependencies.aws-smithy-runtime]
 8429  10702   
path = "../aws-smithy-runtime"
 8430  10703   
features = ["client"]
 8431  10704   
version = "1.8.5"
 8432  10705   
 8433  10706   
[dependencies.aws-smithy-runtime-api]
 8434  10707   
path = "../aws-smithy-runtime-api"
 8435  10708   
features = ["client", "http-02x"]
 8436  10709   
version = "1.8.5"
 8437  10710   
 8438  10711   
[dependencies.aws-smithy-types]
 8439  10712   
path = "../aws-smithy-types"
 8440  10713   
version = "1.3.2"
 8441  10714   
 8442  10715   
[dependencies.aws-types]
 8443  10716   
path = "../aws-types"
 8444  10717   
version = "1.3.8"
 8445  10718   
 8446  10719   
[dependencies.bytes]
 8447  10720   
version = "1.4.0"
 8448  10721   
 8449  10722   
[dependencies.fastrand]
 8450  10723   
version = "2.0.0"
 8451  10724   
 8452  10725   
[dependencies.http]
 8453  10726   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8454  10727   
index 6518dfc..6b94752 100644
 8455         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
       10728  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8456  10729   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 8457  10730   
edition = "2021"
 8458  10731   
license = "Apache-2.0"
 8459  10732   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8460  10733   
rust-version = "1.86.0"
 8461  10734   
readme = "README.md"
 8462  10735   
[package.metadata.smithy]
 8463  10736   
codegen-version = "ci"
 8464  10737   
[package.metadata.docs.rs]
 8465  10738   
all-features = true
 8466  10739   
targets = ["x86_64-unknown-linux-gnu"]
 8467  10740   
[dependencies.aws-credential-types]
 8468  10741   
path = "../aws-credential-types"
 8469  10742   
version = "1.2.4"
 8470  10743   
 8471  10744   
[dependencies.aws-runtime]
 8472  10745   
path = "../aws-runtime"
 8473  10746   
features = ["event-stream"]
 8474  10747   
version = "1.5.9"
 8475  10748   
 8476  10749   
[dependencies.aws-smithy-async]
 8477  10750   
path = "../aws-smithy-async"
 8478  10751   
version = "1.2.5"
 8479  10752   
 8480  10753   
[dependencies.aws-smithy-eventstream]
 8481  10754   
path = "../aws-smithy-eventstream"
 8482  10755   
version = "0.60.10"
 8483  10756   
 8484  10757   
[dependencies.aws-smithy-http]
 8485  10758   
path = "../aws-smithy-http"
 8486  10759   
features = ["event-stream"]
 8487         -
version = "0.62.2"
       10760  +
version = "0.62.3"
 8488  10761   
 8489  10762   
[dependencies.aws-smithy-json]
 8490  10763   
path = "../aws-smithy-json"
 8491  10764   
version = "0.61.4"
 8492  10765   
 8493  10766   
[dependencies.aws-smithy-runtime]
 8494  10767   
path = "../aws-smithy-runtime"
 8495  10768   
features = ["client"]
 8496  10769   
version = "1.8.5"
 8497  10770   
 8498  10771   
[dependencies.aws-smithy-runtime-api]
 8499  10772   
path = "../aws-smithy-runtime-api"
 8500  10773   
features = ["client", "http-02x"]
 8501  10774   
version = "1.8.5"
 8502  10775   
 8503  10776   
[dependencies.aws-smithy-types]
 8504  10777   
path = "../aws-smithy-types"
 8505  10778   
version = "1.3.2"
 8506  10779   
 8507  10780   
[dependencies.aws-types]
 8508  10781   
path = "../aws-types"
 8509  10782   
version = "1.3.8"
 8510  10783   
 8511  10784   
[dependencies.bytes]
 8512  10785   
version = "1.4.0"
 8513  10786   
 8514  10787   
[dependencies.fastrand]
 8515  10788   
version = "2.0.0"
 8516  10789   
 8517  10790   
[dependencies.http]
 8518  10791   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8519  10792   
index dabb0e0..34cbc15 100644
 8520         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
       10793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8521  10794   
@@ -1,65 +1,65 @@
 8522  10795   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8523  10796   
[package]
 8524  10797   
name = "aws-sdk-polly"
 8525  10798   
version = "0.0.0-local"
 8526  10799   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8527  10800   
description = "AWS SDK for Amazon Polly"
 8528  10801   
edition = "2021"
 8529  10802   
license = "Apache-2.0"
 8530  10803   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8531  10804   
rust-version = "1.86.0"
 8532  10805   
readme = "README.md"
 8533  10806   
[package.metadata.smithy]
 8534  10807   
codegen-version = "ci"
 8535  10808   
[package.metadata.docs.rs]
 8536  10809   
all-features = true
 8537  10810   
targets = ["x86_64-unknown-linux-gnu"]
 8538  10811   
[dependencies.aws-credential-types]
 8539  10812   
path = "../aws-credential-types"
 8540  10813   
version = "1.2.4"
 8541  10814   
 8542  10815   
[dependencies.aws-runtime]
 8543  10816   
path = "../aws-runtime"
 8544  10817   
version = "1.5.9"
 8545  10818   
 8546  10819   
[dependencies.aws-sigv4]
 8547  10820   
path = "../aws-sigv4"
 8548         -
version = "1.3.3"
       10821  +
version = "1.3.4"
 8549  10822   
 8550  10823   
[dependencies.aws-smithy-async]
 8551  10824   
path = "../aws-smithy-async"
 8552  10825   
version = "1.2.5"
 8553  10826   
 8554  10827   
[dependencies.aws-smithy-http]
 8555  10828   
path = "../aws-smithy-http"
 8556         -
version = "0.62.2"
       10829  +
version = "0.62.3"
 8557  10830   
 8558  10831   
[dependencies.aws-smithy-json]
 8559  10832   
path = "../aws-smithy-json"
 8560  10833   
version = "0.61.4"
 8561  10834   
 8562  10835   
[dependencies.aws-smithy-runtime]
 8563  10836   
path = "../aws-smithy-runtime"
 8564  10837   
features = ["client"]
 8565  10838   
version = "1.8.5"
 8566  10839   
 8567  10840   
[dependencies.aws-smithy-runtime-api]
 8568  10841   
path = "../aws-smithy-runtime-api"
 8569  10842   
features = ["client", "http-02x"]
 8570  10843   
version = "1.8.5"
 8571  10844   
 8572  10845   
[dependencies.aws-smithy-types]
 8573  10846   
path = "../aws-smithy-types"
 8574  10847   
version = "1.3.2"
 8575  10848   
 8576  10849   
[dependencies.aws-types]
 8577  10850   
path = "../aws-types"
 8578  10851   
version = "1.3.8"
 8579  10852   
 8580  10853   
[dependencies.bytes]
 8581  10854   
version = "1.4.0"
 8582  10855   
 8583  10856   
[dependencies.fastrand]
 8584  10857   
version = "2.0.0"
 8585  10858   
 8586  10859   
[dependencies.http]
 8587  10860   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8588  10861   
index a884716..f3d8713 100644
 8589         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
       10862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8590  10863   
@@ -1,61 +1,61 @@
 8591  10864   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8592  10865   
[package]
 8593  10866   
name = "aws-sdk-qldbsession"
 8594  10867   
version = "0.0.0-local"
 8595  10868   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8596  10869   
description = "AWS SDK for Amazon QLDB Session"
 8597  10870   
edition = "2021"
 8598  10871   
license = "Apache-2.0"
 8599  10872   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8600  10873   
rust-version = "1.86.0"
 8601  10874   
readme = "README.md"
 8602  10875   
[package.metadata.smithy]
 8603  10876   
codegen-version = "ci"
 8604  10877   
[package.metadata.docs.rs]
 8605  10878   
all-features = true
 8606  10879   
targets = ["x86_64-unknown-linux-gnu"]
 8607  10880   
[dependencies.aws-credential-types]
 8608  10881   
path = "../aws-credential-types"
 8609  10882   
version = "1.2.4"
 8610  10883   
 8611  10884   
[dependencies.aws-runtime]
 8612  10885   
path = "../aws-runtime"
 8613  10886   
version = "1.5.9"
 8614  10887   
 8615  10888   
[dependencies.aws-smithy-async]
 8616  10889   
path = "../aws-smithy-async"
 8617  10890   
version = "1.2.5"
 8618  10891   
 8619  10892   
[dependencies.aws-smithy-http]
 8620  10893   
path = "../aws-smithy-http"
 8621         -
version = "0.62.2"
       10894  +
version = "0.62.3"
 8622  10895   
 8623  10896   
[dependencies.aws-smithy-json]
 8624  10897   
path = "../aws-smithy-json"
 8625  10898   
version = "0.61.4"
 8626  10899   
 8627  10900   
[dependencies.aws-smithy-runtime]
 8628  10901   
path = "../aws-smithy-runtime"
 8629  10902   
features = ["client"]
 8630  10903   
version = "1.8.5"
 8631  10904   
 8632  10905   
[dependencies.aws-smithy-runtime-api]
 8633  10906   
path = "../aws-smithy-runtime-api"
 8634  10907   
features = ["client", "http-02x"]
 8635  10908   
version = "1.8.5"
 8636  10909   
 8637  10910   
[dependencies.aws-smithy-types]
 8638  10911   
path = "../aws-smithy-types"
 8639  10912   
version = "1.3.2"
 8640  10913   
 8641  10914   
[dependencies.aws-types]
 8642  10915   
path = "../aws-types"
 8643  10916   
version = "1.3.8"
 8644  10917   
 8645  10918   
[dependencies.bytes]
 8646  10919   
version = "1.4.0"
 8647  10920   
 8648  10921   
[dependencies.fastrand]
 8649  10922   
version = "2.0.0"
 8650  10923   
 8651  10924   
[dependencies.http]
 8652  10925   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8653  10926   
index 32a7dc9..a2c752d 100644
 8654         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
       10927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8655  10928   
@@ -1,61 +1,61 @@
 8656  10929   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8657  10930   
[package]
 8658  10931   
name = "aws-sdk-route53"
 8659  10932   
version = "0.0.0-local"
 8660  10933   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8661  10934   
description = "AWS SDK for Amazon Route 53"
 8662  10935   
edition = "2021"
 8663  10936   
license = "Apache-2.0"
 8664  10937   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8665  10938   
rust-version = "1.86.0"
 8666  10939   
readme = "README.md"
 8667  10940   
[package.metadata.smithy]
 8668  10941   
codegen-version = "ci"
 8669  10942   
[package.metadata.docs.rs]
 8670  10943   
all-features = true
 8671  10944   
targets = ["x86_64-unknown-linux-gnu"]
 8672  10945   
[dependencies.aws-credential-types]
 8673  10946   
path = "../aws-credential-types"
 8674  10947   
version = "1.2.4"
 8675  10948   
 8676  10949   
[dependencies.aws-runtime]
 8677  10950   
path = "../aws-runtime"
 8678  10951   
version = "1.5.9"
 8679  10952   
 8680  10953   
[dependencies.aws-smithy-async]
 8681  10954   
path = "../aws-smithy-async"
 8682  10955   
version = "1.2.5"
 8683  10956   
 8684  10957   
[dependencies.aws-smithy-http]
 8685  10958   
path = "../aws-smithy-http"
 8686         -
version = "0.62.2"
       10959  +
version = "0.62.3"
 8687  10960   
 8688  10961   
[dependencies.aws-smithy-json]
 8689  10962   
path = "../aws-smithy-json"
 8690  10963   
version = "0.61.4"
 8691  10964   
 8692  10965   
[dependencies.aws-smithy-runtime]
 8693  10966   
path = "../aws-smithy-runtime"
 8694  10967   
features = ["client"]
 8695  10968   
version = "1.8.5"
 8696  10969   
 8697  10970   
[dependencies.aws-smithy-runtime-api]
 8698  10971   
path = "../aws-smithy-runtime-api"
 8699  10972   
features = ["client", "http-02x"]
 8700  10973   
version = "1.8.5"
 8701  10974   
 8702  10975   
[dependencies.aws-smithy-types]
 8703  10976   
path = "../aws-smithy-types"
 8704  10977   
version = "1.3.2"
 8705  10978   
 8706  10979   
[dependencies.aws-smithy-xml]
 8707  10980   
path = "../aws-smithy-xml"
 8708  10981   
version = "0.60.10"
 8709  10982   
 8710  10983   
[dependencies.aws-types]
 8711  10984   
path = "../aws-types"
 8712  10985   
version = "1.3.8"
 8713  10986   
 8714  10987   
[dependencies.fastrand]
 8715  10988   
version = "2.0.0"
 8716  10989   
 8717  10990   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8718  10991   
index f65e261..2f6bec0 100644
 8719         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       10992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8720  10993   
@@ -1,75 +1,75 @@
 8721  10994   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8722  10995   
[package]
 8723  10996   
name = "aws-sdk-s3"
 8724  10997   
version = "0.0.0-local"
 8725  10998   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8726  10999   
description = "AWS SDK for Amazon Simple Storage Service"
 8727  11000   
edition = "2021"
 8728  11001   
license = "Apache-2.0"
 8729  11002   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8730  11003   
rust-version = "1.86.0"
 8731  11004   
readme = "README.md"
 8732  11005   
[package.metadata.smithy]
 8733  11006   
codegen-version = "ci"
 8734  11007   
[package.metadata.docs.rs]
 8735  11008   
all-features = true
 8736  11009   
targets = ["x86_64-unknown-linux-gnu"]
 8737  11010   
[dependencies.aws-credential-types]
 8738  11011   
path = "../aws-credential-types"
 8739  11012   
version = "1.2.4"
 8740  11013   
 8741  11014   
[dependencies.aws-runtime]
 8742  11015   
path = "../aws-runtime"
 8743  11016   
features = ["event-stream", "http-02x"]
 8744  11017   
version = "1.5.9"
 8745  11018   
 8746  11019   
[dependencies.aws-sigv4]
 8747  11020   
path = "../aws-sigv4"
 8748         -
version = "1.3.3"
       11021  +
version = "1.3.4"
 8749  11022   
 8750  11023   
[dependencies.aws-smithy-async]
 8751  11024   
path = "../aws-smithy-async"
 8752  11025   
version = "1.2.5"
 8753  11026   
 8754  11027   
[dependencies.aws-smithy-checksums]
 8755  11028   
path = "../aws-smithy-checksums"
 8756  11029   
version = "0.63.5"
 8757  11030   
 8758  11031   
[dependencies.aws-smithy-eventstream]
 8759  11032   
path = "../aws-smithy-eventstream"
 8760  11033   
version = "0.60.10"
 8761  11034   
 8762  11035   
[dependencies.aws-smithy-http]
 8763  11036   
path = "../aws-smithy-http"
 8764  11037   
features = ["event-stream"]
 8765         -
version = "0.62.2"
       11038  +
version = "0.62.3"
 8766  11039   
 8767  11040   
[dependencies.aws-smithy-json]
 8768  11041   
path = "../aws-smithy-json"
 8769  11042   
version = "0.61.4"
 8770  11043   
 8771  11044   
[dependencies.aws-smithy-runtime]
 8772  11045   
path = "../aws-smithy-runtime"
 8773  11046   
features = ["client"]
 8774  11047   
version = "1.8.5"
 8775  11048   
 8776  11049   
[dependencies.aws-smithy-runtime-api]
 8777  11050   
path = "../aws-smithy-runtime-api"
 8778  11051   
features = ["client", "http-02x"]
 8779  11052   
version = "1.8.5"
 8780  11053   
 8781  11054   
[dependencies.aws-smithy-types]
 8782  11055   
path = "../aws-smithy-types"
 8783  11056   
version = "1.3.2"
 8784  11057   
 8785  11058   
[dependencies.aws-smithy-xml]
 8786  11059   
path = "../aws-smithy-xml"
 8787  11060   
version = "0.60.10"
 8788  11061   
 8789  11062   
[dependencies.aws-types]
 8790  11063   
path = "../aws-types"
 8791  11064   
version = "1.3.8"
 8792  11065   
 8793  11066   
[dependencies.bytes]
 8794  11067   
version = "1.4.0"
 8795  11068   
 8796  11069   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8797  11070   
index b4d1cdd..861c0cc 100644
 8798         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       11071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 8799  11072   
@@ -1,61 +1,61 @@
 8800  11073   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8801  11074   
[package]
 8802  11075   
name = "aws-sdk-s3control"
 8803  11076   
version = "0.0.0-local"
 8804  11077   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8805  11078   
description = "AWS SDK for AWS S3 Control"
 8806  11079   
edition = "2021"
 8807  11080   
license = "Apache-2.0"
 8808  11081   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8809  11082   
rust-version = "1.86.0"
 8810  11083   
readme = "README.md"
 8811  11084   
[package.metadata.smithy]
 8812  11085   
codegen-version = "ci"
 8813  11086   
[package.metadata.docs.rs]
 8814  11087   
all-features = true
 8815  11088   
targets = ["x86_64-unknown-linux-gnu"]
 8816  11089   
[dependencies.aws-credential-types]
 8817  11090   
path = "../aws-credential-types"
 8818  11091   
version = "1.2.4"
 8819  11092   
 8820  11093   
[dependencies.aws-runtime]
 8821  11094   
path = "../aws-runtime"
 8822  11095   
version = "1.5.9"
 8823  11096   
 8824  11097   
[dependencies.aws-smithy-async]
 8825  11098   
path = "../aws-smithy-async"
 8826  11099   
version = "1.2.5"
 8827  11100   
 8828  11101   
[dependencies.aws-smithy-http]
 8829  11102   
path = "../aws-smithy-http"
 8830         -
version = "0.62.2"
       11103  +
version = "0.62.3"
 8831  11104   
 8832  11105   
[dependencies.aws-smithy-json]
 8833  11106   
path = "../aws-smithy-json"
 8834  11107   
version = "0.61.4"
 8835  11108   
 8836  11109   
[dependencies.aws-smithy-runtime]
 8837  11110   
path = "../aws-smithy-runtime"
 8838  11111   
features = ["client"]
 8839  11112   
version = "1.8.5"
 8840  11113   
 8841  11114   
[dependencies.aws-smithy-runtime-api]
 8842  11115   
path = "../aws-smithy-runtime-api"
 8843  11116   
features = ["client", "http-02x"]
 8844  11117   
version = "1.8.5"
 8845  11118   
 8846  11119   
[dependencies.aws-smithy-types]
 8847  11120   
path = "../aws-smithy-types"
 8848  11121   
version = "1.3.2"
 8849  11122   
 8850  11123   
[dependencies.aws-smithy-xml]
 8851  11124   
path = "../aws-smithy-xml"
 8852  11125   
version = "0.60.10"
 8853  11126   
 8854  11127   
[dependencies.aws-types]
 8855  11128   
path = "../aws-types"
 8856  11129   
version = "1.3.8"
 8857  11130   
 8858  11131   
[dependencies.fastrand]
 8859  11132   
version = "2.0.0"
 8860  11133   
 8861  11134   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8862  11135   
index 2cde182..fc367f4 100644
 8863         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       11136  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8864  11137   
@@ -1,61 +1,61 @@
 8865  11138   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8866  11139   
[package]
 8867  11140   
name = "aws-sdk-sso"
 8868  11141   
version = "0.0.0-local"
 8869  11142   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8870  11143   
description = "AWS SDK for AWS Single Sign-On"
 8871  11144   
edition = "2021"
 8872  11145   
license = "Apache-2.0"
 8873  11146   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8874  11147   
rust-version = "1.86.0"
 8875  11148   
readme = "README.md"
 8876  11149   
[package.metadata.smithy]
 8877  11150   
codegen-version = "ci"
 8878  11151   
[package.metadata.docs.rs]
 8879  11152   
all-features = true
 8880  11153   
targets = ["x86_64-unknown-linux-gnu"]
 8881  11154   
[dependencies.aws-credential-types]
 8882  11155   
path = "../aws-credential-types"
 8883  11156   
version = "1.2.4"
 8884  11157   
 8885  11158   
[dependencies.aws-runtime]
 8886  11159   
path = "../aws-runtime"
 8887  11160   
version = "1.5.9"
 8888  11161   
 8889  11162   
[dependencies.aws-smithy-async]
 8890  11163   
path = "../aws-smithy-async"
 8891  11164   
version = "1.2.5"
 8892  11165   
 8893  11166   
[dependencies.aws-smithy-http]
 8894  11167   
path = "../aws-smithy-http"
 8895         -
version = "0.62.2"
       11168  +
version = "0.62.3"
 8896  11169   
 8897  11170   
[dependencies.aws-smithy-json]
 8898  11171   
path = "../aws-smithy-json"
 8899  11172   
version = "0.61.4"
 8900  11173   
 8901  11174   
[dependencies.aws-smithy-runtime]
 8902  11175   
path = "../aws-smithy-runtime"
 8903  11176   
features = ["client"]
 8904  11177   
version = "1.8.5"
 8905  11178   
 8906  11179   
[dependencies.aws-smithy-runtime-api]
 8907  11180   
path = "../aws-smithy-runtime-api"
 8908  11181   
features = ["client", "http-02x"]
 8909  11182   
version = "1.8.5"
 8910  11183   
 8911  11184   
[dependencies.aws-smithy-types]
 8912  11185   
path = "../aws-smithy-types"
 8913  11186   
version = "1.3.2"
 8914  11187   
 8915  11188   
[dependencies.aws-types]
 8916  11189   
path = "../aws-types"
 8917  11190   
version = "1.3.8"
 8918  11191   
 8919  11192   
[dependencies.bytes]
 8920  11193   
version = "1.4.0"
 8921  11194   
 8922  11195   
[dependencies.fastrand]
 8923  11196   
version = "2.0.0"
 8924  11197   
 8925  11198   
[dependencies.http]
 8926  11199   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8927  11200   
index 7a34c16..588d0bd 100644
 8928         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       11201  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8929  11202   
@@ -1,61 +1,61 @@
 8930  11203   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8931  11204   
[package]
 8932  11205   
name = "aws-sdk-ssooidc"
 8933  11206   
version = "0.0.0-local"
 8934  11207   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8935  11208   
description = "AWS SDK for AWS SSO OIDC"
 8936  11209   
edition = "2021"
 8937  11210   
license = "Apache-2.0"
 8938  11211   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8939  11212   
rust-version = "1.86.0"
 8940  11213   
readme = "README.md"
 8941  11214   
[package.metadata.smithy]
 8942  11215   
codegen-version = "ci"
 8943  11216   
[package.metadata.docs.rs]
 8944  11217   
all-features = true
 8945  11218   
targets = ["x86_64-unknown-linux-gnu"]
 8946  11219   
[dependencies.aws-credential-types]
 8947  11220   
path = "../aws-credential-types"
 8948  11221   
version = "1.2.4"
 8949  11222   
 8950  11223   
[dependencies.aws-runtime]
 8951  11224   
path = "../aws-runtime"
 8952  11225   
version = "1.5.9"
 8953  11226   
 8954  11227   
[dependencies.aws-smithy-async]
 8955  11228   
path = "../aws-smithy-async"
 8956  11229   
version = "1.2.5"
 8957  11230   
 8958  11231   
[dependencies.aws-smithy-http]
 8959  11232   
path = "../aws-smithy-http"
 8960         -
version = "0.62.2"
       11233  +
version = "0.62.3"
 8961  11234   
 8962  11235   
[dependencies.aws-smithy-json]
 8963  11236   
path = "../aws-smithy-json"
 8964  11237   
version = "0.61.4"
 8965  11238   
 8966  11239   
[dependencies.aws-smithy-runtime]
 8967  11240   
path = "../aws-smithy-runtime"
 8968  11241   
features = ["client"]
 8969  11242   
version = "1.8.5"
 8970  11243   
 8971  11244   
[dependencies.aws-smithy-runtime-api]
 8972  11245   
path = "../aws-smithy-runtime-api"
 8973  11246   
features = ["client", "http-02x"]
 8974  11247   
version = "1.8.5"
 8975  11248   
 8976  11249   
[dependencies.aws-smithy-types]
 8977  11250   
path = "../aws-smithy-types"
 8978  11251   
version = "1.3.2"
 8979  11252   
 8980  11253   
[dependencies.aws-types]
 8981  11254   
path = "../aws-types"
 8982  11255   
version = "1.3.8"
 8983  11256   
 8984  11257   
[dependencies.bytes]
 8985  11258   
version = "1.4.0"
 8986  11259   
 8987  11260   
[dependencies.fastrand]
 8988  11261   
version = "2.0.0"
 8989  11262   
 8990  11263   
[dependencies.http]
 8991  11264   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8992  11265   
index 895dfb3..f2ce34e 100644
 8993         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       11266  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8994  11267   
@@ -1,61 +1,61 @@
 8995  11268   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8996  11269   
[package]
 8997  11270   
name = "aws-sdk-sts"
 8998  11271   
version = "0.0.0-local"
 8999  11272   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9000  11273   
description = "AWS SDK for AWS Security Token Service"
 9001  11274   
edition = "2021"
 9002  11275   
license = "Apache-2.0"
 9003  11276   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9004  11277   
rust-version = "1.86.0"
 9005  11278   
readme = "README.md"
 9006  11279   
[package.metadata.smithy]
 9007  11280   
codegen-version = "ci"
 9008  11281   
[package.metadata.docs.rs]
 9009  11282   
all-features = true
 9010  11283   
targets = ["x86_64-unknown-linux-gnu"]
 9011  11284   
[dependencies.aws-credential-types]
 9012  11285   
path = "../aws-credential-types"
 9013  11286   
version = "1.2.4"
 9014  11287   
 9015  11288   
[dependencies.aws-runtime]
 9016  11289   
path = "../aws-runtime"
 9017  11290   
version = "1.5.9"
 9018  11291   
 9019  11292   
[dependencies.aws-smithy-async]
 9020  11293   
path = "../aws-smithy-async"
 9021  11294   
version = "1.2.5"
 9022  11295   
 9023  11296   
[dependencies.aws-smithy-http]
 9024  11297   
path = "../aws-smithy-http"
 9025         -
version = "0.62.2"
       11298  +
version = "0.62.3"
 9026  11299   
 9027  11300   
[dependencies.aws-smithy-json]
 9028  11301   
path = "../aws-smithy-json"
 9029  11302   
version = "0.61.4"
 9030  11303   
 9031  11304   
[dependencies.aws-smithy-query]
 9032  11305   
path = "../aws-smithy-query"
 9033  11306   
version = "0.60.7"
 9034  11307   
 9035  11308   
[dependencies.aws-smithy-runtime]
 9036  11309   
path = "../aws-smithy-runtime"
 9037  11310   
features = ["client"]
 9038  11311   
version = "1.8.5"
 9039  11312   
 9040  11313   
[dependencies.aws-smithy-runtime-api]
 9041  11314   
path = "../aws-smithy-runtime-api"
 9042  11315   
features = ["client", "http-02x"]
 9043  11316   
version = "1.8.5"
 9044  11317   
 9045  11318   
[dependencies.aws-smithy-types]
 9046  11319   
path = "../aws-smithy-types"
 9047  11320   
version = "1.3.2"
 9048  11321   
 9049  11322   
[dependencies.aws-smithy-xml]
 9050  11323   
path = "../aws-smithy-xml"
 9051  11324   
version = "0.60.10"
 9052  11325   
 9053  11326   
[dependencies.aws-types]
 9054  11327   
path = "../aws-types"
 9055  11328   
version = "1.3.8"
 9056  11329   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9057  11330   
index d556561..91178b6 100644
 9058         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       11331  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9059  11332   
@@ -1,61 +1,61 @@
 9060  11333   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9061  11334   
[package]
 9062  11335   
name = "aws-sdk-timestreamquery"
 9063  11336   
version = "0.0.0-local"
 9064  11337   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9065  11338   
description = "AWS SDK for Amazon Timestream Query"
 9066  11339   
edition = "2021"
 9067  11340   
license = "Apache-2.0"
 9068  11341   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9069  11342   
rust-version = "1.86.0"
 9070  11343   
readme = "README.md"
 9071  11344   
[package.metadata.smithy]
 9072  11345   
codegen-version = "ci"
 9073  11346   
[package.metadata.docs.rs]
 9074  11347   
all-features = true
 9075  11348   
targets = ["x86_64-unknown-linux-gnu"]
 9076  11349   
[dependencies.aws-credential-types]
 9077  11350   
path = "../aws-credential-types"
 9078  11351   
version = "1.2.4"
 9079  11352   
 9080  11353   
[dependencies.aws-runtime]
 9081  11354   
path = "../aws-runtime"
 9082  11355   
version = "1.5.9"
 9083  11356   
 9084  11357   
[dependencies.aws-smithy-async]
 9085  11358   
path = "../aws-smithy-async"
 9086  11359   
version = "1.2.5"
 9087  11360   
 9088  11361   
[dependencies.aws-smithy-http]
 9089  11362   
path = "../aws-smithy-http"
 9090         -
version = "0.62.2"
       11363  +
version = "0.62.3"
 9091  11364   
 9092  11365   
[dependencies.aws-smithy-json]
 9093  11366   
path = "../aws-smithy-json"
 9094  11367   
version = "0.61.4"
 9095  11368   
 9096  11369   
[dependencies.aws-smithy-runtime]
 9097  11370   
path = "../aws-smithy-runtime"
 9098  11371   
features = ["client"]
 9099  11372   
version = "1.8.5"
 9100  11373   
 9101  11374   
[dependencies.aws-smithy-runtime-api]
 9102  11375   
path = "../aws-smithy-runtime-api"
 9103  11376   
features = ["client", "http-02x"]
 9104  11377   
version = "1.8.5"
 9105  11378   
 9106  11379   
[dependencies.aws-smithy-types]
 9107  11380   
path = "../aws-smithy-types"
 9108  11381   
version = "1.3.2"
 9109  11382   
 9110  11383   
[dependencies.aws-types]
 9111  11384   
path = "../aws-types"
 9112  11385   
version = "1.3.8"
 9113  11386   
 9114  11387   
[dependencies.bytes]
 9115  11388   
version = "1.4.0"
 9116  11389   
 9117  11390   
[dependencies.fastrand]
 9118  11391   
version = "2.0.0"
 9119  11392   
 9120  11393   
[dependencies.http]
 9121  11394   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9122  11395   
index 0c56e4c..95731e3 100644
 9123         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       11396  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9124  11397   
@@ -1,61 +1,61 @@
 9125  11398   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9126  11399   
[package]
 9127  11400   
name = "aws-sdk-timestreamwrite"
 9128  11401   
version = "0.0.0-local"
 9129  11402   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9130  11403   
description = "AWS SDK for Amazon Timestream Write"
 9131  11404   
edition = "2021"
 9132  11405   
license = "Apache-2.0"
 9133  11406   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9134  11407   
rust-version = "1.86.0"
 9135  11408   
readme = "README.md"
 9136  11409   
[package.metadata.smithy]
 9137  11410   
codegen-version = "ci"
 9138  11411   
[package.metadata.docs.rs]
 9139  11412   
all-features = true
 9140  11413   
targets = ["x86_64-unknown-linux-gnu"]
 9141  11414   
[dependencies.aws-credential-types]
 9142  11415   
path = "../aws-credential-types"
 9143  11416   
version = "1.2.4"
 9144  11417   
 9145  11418   
[dependencies.aws-runtime]
 9146  11419   
path = "../aws-runtime"
 9147  11420   
version = "1.5.9"
 9148  11421   
 9149  11422   
[dependencies.aws-smithy-async]
 9150  11423   
path = "../aws-smithy-async"
 9151  11424   
version = "1.2.5"
 9152  11425   
 9153  11426   
[dependencies.aws-smithy-http]
 9154  11427   
path = "../aws-smithy-http"
 9155         -
version = "0.62.2"
       11428  +
version = "0.62.3"
 9156  11429   
 9157  11430   
[dependencies.aws-smithy-json]
 9158  11431   
path = "../aws-smithy-json"
 9159  11432   
version = "0.61.4"
 9160  11433   
 9161  11434   
[dependencies.aws-smithy-runtime]
 9162  11435   
path = "../aws-smithy-runtime"
 9163  11436   
features = ["client"]
 9164  11437   
version = "1.8.5"
 9165  11438   
 9166  11439   
[dependencies.aws-smithy-runtime-api]
 9167  11440   
path = "../aws-smithy-runtime-api"
 9168  11441   
features = ["client", "http-02x"]
 9169  11442   
version = "1.8.5"
 9170  11443   
 9171  11444   
[dependencies.aws-smithy-types]
 9172  11445   
path = "../aws-smithy-types"
 9173  11446   
version = "1.3.2"
 9174  11447   
 9175  11448   
[dependencies.aws-types]
 9176  11449   
path = "../aws-types"
 9177  11450   
version = "1.3.8"
 9178  11451   
 9179  11452   
[dependencies.bytes]
 9180  11453   
version = "1.4.0"
 9181  11454   
 9182  11455   
[dependencies.fastrand]
 9183  11456   
version = "2.0.0"
 9184  11457   
 9185  11458   
[dependencies.http]
 9186  11459   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9187  11460   
index 5b35037..9fb220a 100644
 9188         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       11461  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9189  11462   
@@ -1,71 +1,71 @@
 9190  11463   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9191  11464   
[package]
 9192  11465   
name = "aws-sdk-transcribestreaming"
 9193  11466   
version = "0.0.0-local"
 9194  11467   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9195  11468   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 9196  11469   
edition = "2021"
 9197  11470   
license = "Apache-2.0"
 9198  11471   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9199  11472   
rust-version = "1.86.0"
 9200  11473   
readme = "README.md"
 9201  11474   
[package.metadata.smithy]
 9202  11475   
codegen-version = "ci"
 9203  11476   
[package.metadata.docs.rs]
 9204  11477   
all-features = true
 9205  11478   
targets = ["x86_64-unknown-linux-gnu"]
 9206  11479   
[dependencies.aws-credential-types]
 9207  11480   
path = "../aws-credential-types"
 9208  11481   
version = "1.2.4"
 9209  11482   
 9210  11483   
[dependencies.aws-runtime]
 9211  11484   
path = "../aws-runtime"
 9212  11485   
features = ["event-stream"]
 9213  11486   
version = "1.5.9"
 9214  11487   
 9215  11488   
[dependencies.aws-sigv4]
 9216  11489   
path = "../aws-sigv4"
 9217         -
version = "1.3.3"
       11490  +
version = "1.3.4"
 9218  11491   
 9219  11492   
[dependencies.aws-smithy-async]
 9220  11493   
path = "../aws-smithy-async"
 9221  11494   
version = "1.2.5"
 9222  11495   
 9223  11496   
[dependencies.aws-smithy-eventstream]
 9224  11497   
path = "../aws-smithy-eventstream"
 9225  11498   
version = "0.60.10"
 9226  11499   
 9227  11500   
[dependencies.aws-smithy-http]
 9228  11501   
path = "../aws-smithy-http"
 9229  11502   
features = ["event-stream"]
 9230         -
version = "0.62.2"
       11503  +
version = "0.62.3"
 9231  11504   
 9232  11505   
[dependencies.aws-smithy-json]
 9233  11506   
path = "../aws-smithy-json"
 9234  11507   
version = "0.61.4"
 9235  11508   
 9236  11509   
[dependencies.aws-smithy-runtime]
 9237  11510   
path = "../aws-smithy-runtime"
 9238  11511   
features = ["client"]
 9239  11512   
version = "1.8.5"
 9240  11513