AWS SDK

AWS SDK

rev. 3964b40d6806bc3f52bd311e2c791030c3325f2c (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.req

@@ -1,0 +3,0 @@
    1         -
GET /?Param1=value2&Param1=Value1 HTTP/1.1
    2         -
Host:example.amazonaws.com
    3         -
X-Amz-Date:20150830T123600Z

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.sreq

@@ -1,0 +4,0 @@
    1         -
GET /?Param1=value2&Param1=Value1 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=eedbc4e291e521cf13422ffca22be7d2eb8146eecf653089df300a15b2382bd1

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.authz

@@ -1,0 +8276,10511 @@
    1         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5772eed61e12b33fae39ee5e7012498b51d56abc0abb7c60486157bd471c4694
              \
 No newline at end of file
    2      0   
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.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.req
    3      1   
deleted file mode 100644
    4      2   
index 9255bee..0000000
    5         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.req
           3  +
++ /dev/null
    6      4   
@@ -1,3 +0,0 @@
    7         -
GET /?Param1=value2&Param1=value1 HTTP/1.1
    8         -
Host:example.amazonaws.com
    9         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
   10      5   
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.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.sreq
   11      6   
deleted file mode 100644
   12      7   
index 4793e21..0000000
   13         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.sreq
           8  +
++ /dev/null
   14      9   
@@ -1,4 +0,0 @@
   15         -
GET /?Param1=value2&Param1=value1 HTTP/1.1
   16         -
Host:example.amazonaws.com
   17         -
X-Amz-Date:20150830T123600Z
   18         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5772eed61e12b33fae39ee5e7012498b51d56abc0abb7c60486157bd471c4694
              \
 No newline at end of file
   19     10   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.authz
   20     11   
deleted file mode 100644
   21     12   
index a44ca5b..0000000
   22         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.authz
          13  +
++ /dev/null
   23     14   
@@ -1 +0,0 @@
   24         -
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
   25     15   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.authz
   26     16   
deleted file mode 100644
   27     17   
index 551c027..0000000
   28         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.authz
          18  +
++ /dev/null
   29     19   
@@ -1 +0,0 @@
   30         -
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
   31     20   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sreq
   32     21   
deleted file mode 100644
   33     22   
index d739b01..0000000
   34         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sreq
          23  +
++ /dev/null
   35     24   
@@ -1,4 +0,0 @@
   36         -
GET / HTTP/1.1
   37         -
Host:example.amazonaws.com
   38         -
X-Amz-Date:20150830T123600Z
   39         -
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
   40     25   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.authz
   41     26   
deleted file mode 100644
   42     27   
index e016c3d..0000000
   43         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.authz
          28  +
++ /dev/null
   44     29   
@@ -1 +0,0 @@
   45         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
   46     30   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sreq
   47     31   
deleted file mode 100644
   48     32   
index 7baf4c8..0000000
   49         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sreq
          33  +
++ /dev/null
   50     34   
@@ -1,4 +0,0 @@
   51         -
GET /?ሴ=bar HTTP/1.1
   52         -
Host:example.amazonaws.com
   53         -
X-Amz-Date:20150830T123600Z
   54         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
   55     35   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.authz
   56     36   
deleted file mode 100644
   57     37   
index 551c027..0000000
   58         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.authz
          38  +
++ /dev/null
   59     39   
@@ -1 +0,0 @@
   60         -
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
   61     40   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sreq
   62     41   
deleted file mode 100644
   63     42   
index d739b01..0000000
   64         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sreq
          43  +
++ /dev/null
   65     44   
@@ -1,4 +0,0 @@
   66         -
GET / HTTP/1.1
   67         -
Host:example.amazonaws.com
   68         -
X-Amz-Date:20150830T123600Z
   69         -
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
   70     45   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/iam/iam.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/iam/iam.creq
   71     46   
deleted file mode 100644
   72     47   
index 1336241..0000000
   73         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/iam/iam.creq
          48  +
++ /dev/null
   74     49   
@@ -1,4 +0,0 @@
   75         -
AWS4-HMAC-SHA256
   76         -
20150830T123600Z
   77         -
20150830/us-east-1/iam/aws4_request
   78         -
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59
   79     50   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.authz
   80     51   
deleted file mode 100644
   81     52   
index 551c027..0000000
   82         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.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=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
   85     55   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sreq
   86     56   
deleted file mode 100644
   87     57   
index cbdebe2..0000000
   88         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sreq
          58  +
++ /dev/null
   89     59   
@@ -1,4 +0,0 @@
   90         -
GET /example1/example2/../.. 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=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
   94     60   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.authz
   95     61   
deleted file mode 100644
   96     62   
index 551c027..0000000
   97         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.authz
          63  +
++ /dev/null
   98     64   
@@ -1 +0,0 @@
   99         -
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
  100     65   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sreq
  101     66   
deleted file mode 100644
  102     67   
index 4f59e7d..0000000
  103         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sreq
          68  +
++ /dev/null
  104     69   
@@ -1,4 +0,0 @@
  105         -
GET /example/.. HTTP/1.1
  106         -
Host:example.amazonaws.com
  107         -
X-Amz-Date:20150830T123600Z
  108         -
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
  109     70   
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.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.authz
  110     71   
deleted file mode 100644
  111     72   
index 551c027..0000000
  112         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash-dot-slash/get-slash-dot-slash.authz
          73  +
++ /dev/null
  113     74   
@@ -1 +0,0 @@
  114         -
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
  115     75   
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
  116     76   
deleted file mode 100644
  117     77   
index 23a2b41..0000000
  118         -
-- 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
          78  +
++ /dev/null
  119     79   
@@ -1,4 +0,0 @@
  120         -
GET /./ HTTP/1.1
  121         -
Host:example.amazonaws.com
  122         -
X-Amz-Date:20150830T123600Z
  123         -
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
  124     80   
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
  125     81   
deleted file mode 100644
  126     82   
index b76ca1e..0000000
  127         -
-- 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
          83  +
++ /dev/null
  128     84   
@@ -1 +0,0 @@
  129         -
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
  130     85   
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
  131     86   
deleted file mode 100644
  132     87   
index 8096609..0000000
  133         -
-- 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
          88  +
++ /dev/null
  134     89   
@@ -1,4 +0,0 @@
  135         -
GET /./example HTTP/1.1
  136         -
Host:example.amazonaws.com
  137         -
X-Amz-Date:20150830T123600Z
  138         -
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
  139     90   
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
  140     91   
deleted file mode 100644
  141     92   
index 551c027..0000000
  142         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.authz
          93  +
++ /dev/null
  143     94   
@@ -1 +0,0 @@
  144         -
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
  145     95   
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
  146     96   
deleted file mode 100644
  147     97   
index cde31b4..0000000
  148         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq
          98  +
++ /dev/null
  149     99   
@@ -1,4 +0,0 @@
  150         -
GET // HTTP/1.1
  151         -
Host:example.amazonaws.com
  152         -
X-Amz-Date:20150830T123600Z
  153         -
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
  154    100   
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
  155    101   
deleted file mode 100644
  156    102   
index 307c105..0000000
  157         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.authz
         103  +
++ /dev/null
  158    104   
@@ -1 +0,0 @@
  159         -
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
  160    105   
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
  161    106   
deleted file mode 100644
  162    107   
index c84a80d..0000000
  163         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq
         108  +
++ /dev/null
  164    109   
@@ -1,4 +0,0 @@
  165         -
GET //example// HTTP/1.1
  166         -
Host:example.amazonaws.com
  167         -
X-Amz-Date:20150830T123600Z
  168         -
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
  169    110   
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
  170    111   
deleted file mode 100644
  171    112   
index 832d8a5..0000000
  172         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz
         113  +
++ /dev/null
  173    114   
@@ -1 +0,0 @@
  174         -
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
  175    115   
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
  176    116   
deleted file mode 100644
  177    117   
index eefa20c..0000000
  178         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq
         118  +
++ /dev/null
  179    119   
@@ -1,4 +0,0 @@
  180         -
GET /example space/ HTTP/1.1
  181         -
Host:example.amazonaws.com
  182         -
X-Amz-Date:20150830T123600Z
  183         -
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
  184    120   
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
  185    121   
deleted file mode 100644
  186    122   
index c2fcb27..0000000
  187         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt
         123  +
++ /dev/null
  188    124   
@@ -1,3 +0,0 @@
  189         -
A note about signing requests to Amazon S3:
  190         -

  191         -
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
  192    125   
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
  193    126   
deleted file mode 100644
  194    127   
index 89e572e..0000000
  195         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
         128  +
++ /dev/null
  196    129   
@@ -1 +0,0 @@
  197         -
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
  198    130   
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
  199    131   
deleted file mode 100644
  200    132   
index fcf23ce..0000000
  201         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
         133  +
++ /dev/null
  202    134   
@@ -1,4 +0,0 @@
  203         -
POST / HTTP/1.1
  204         -
Host:example.amazonaws.com
  205         -
X-Amz-Date:20150830T123600Z
  206         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
  207    135   
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
  208    136   
deleted file mode 100644
  209    137   
index a62589f..0000000
  210         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
         138  +
++ /dev/null
  211    139   
@@ -1 +0,0 @@
  212         -
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
  213    140   
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
  214    141   
deleted file mode 100644
  215    142   
index b4b78a1..0000000
  216         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
         143  +
++ /dev/null
  217    144   
@@ -1,5 +0,0 @@
  218         -
POST / HTTP/1.1
  219         -
Host:example.amazonaws.com
  220         -
My-Header1:value1
  221         -
X-Amz-Date:20150830T123600Z
  222         -
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
  223    145   
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
  224    146   
deleted file mode 100644
  225    147   
index d9e52a3..0000000
  226         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
         148  +
++ /dev/null
  227    149   
@@ -1 +0,0 @@
  228         -
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
  229    150   
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
  230    151   
deleted file mode 100644
  231    152   
index 99c3210..0000000
  232         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
         153  +
++ /dev/null
  233    154   
@@ -1,5 +0,0 @@
  234         -
POST / HTTP/1.1
  235         -
Host:example.amazonaws.com
  236         -
My-Header1:VALUE1
  237         -
X-Amz-Date:20150830T123600Z
  238         -
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
  239    155   
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
  240    156   
deleted file mode 100644
  241    157   
index 89e572e..0000000
  242         -
-- 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
         158  +
++ /dev/null
  243    159   
@@ -1 +0,0 @@
  244         -
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
  245    160   
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
  246    161   
deleted file mode 100644
  247    162   
index 64aa046..0000000
  248         -
-- 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
         163  +
++ /dev/null
  249    164   
@@ -1 +0,0 @@
  250         -
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
  251    165   
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
  252    166   
deleted file mode 100644
  253    167   
index cc34282..0000000
  254         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
         168  +
++ /dev/null
  255    169   
@@ -1,15 +0,0 @@
  256         -
A note about using temporary security credentials:
  257         -

  258         -
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).
  259         -

  260         -
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.
  261         -

  262         -
The test suite has 2 examples:
  263         -

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

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

  268         -
The test suite uses this example value for X-Amz-Security-Token:
  269         -

  270         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
  271    170   
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
  272    171   
deleted file mode 100644
  273    172   
index 44280cd..0000000
  274         -
-- 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
         173  +
++ /dev/null
  275    174   
@@ -1 +0,0 @@
  276         -
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
  277    175   
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
  278    176   
deleted file mode 100644
  279    177   
index 82af150..0000000
  280         -
-- 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
         178  +
++ /dev/null
  281    179   
@@ -1,4 +0,0 @@
  282         -
POST /?Param1=value1 HTTP/1.1
  283         -
Host:example.amazonaws.com
  284         -
X-Amz-Date:20150830T123600Z
  285         -
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
  286    180   
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
  287    181   
deleted file mode 100644
  288    182   
index 44280cd..0000000
  289         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
         183  +
++ /dev/null
  290    184   
@@ -1 +0,0 @@
  291         -
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
  292    185   
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
  293    186   
deleted file mode 100644
  294    187   
index 82af150..0000000
  295         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
         188  +
++ /dev/null
  296    189   
@@ -1,4 +0,0 @@
  297         -
POST /?Param1=value1 HTTP/1.1
  298         -
Host:example.amazonaws.com
  299         -
X-Amz-Date:20150830T123600Z
  300         -
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
  301    190   
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
  302    191   
deleted file mode 100644
  303    192   
index 89e572e..0000000
  304         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
         193  +
++ /dev/null
  305    194   
@@ -1 +0,0 @@
  306         -
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
  307    195   
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
  308    196   
deleted file mode 100644
  309    197   
index a5ada0d..0000000
  310         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
         198  +
++ /dev/null
  311    199   
@@ -1,4 +0,0 @@
  312         -
POST / HTTP/1.1
  313         -
Host:example.amazonaws.com
  314         -
X-Amz-Date:20150830T123600Z
  315         -
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
  316    200   
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
  317    201   
deleted file mode 100644
  318    202   
index df90ca3..0000000
  319         -
-- 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
         203  +
++ /dev/null
  320    204   
@@ -1 +0,0 @@
  321         -
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
  322    205   
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
  323    206   
deleted file mode 100644
  324    207   
index 457b0d5..0000000
  325         -
-- 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
         208  +
++ /dev/null
  326    209   
@@ -1,9 +0,0 @@
  327         -
POST
  328         -
/
  329         -
Param1=value1
  330         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  331         -
host:example.amazonaws.com
  332         -
x-amz-date:20150830T123600Z
  333         -
  334         -
content-type;host;x-amz-date
  335         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  336    210   
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
  337    211   
deleted file mode 100644
  338    212   
index b8ecb89..0000000
  339         -
-- 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
         213  +
++ /dev/null
  340    214   
@@ -1,7 +0,0 @@
  341         -
POST / HTTP/1.1
  342         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  343         -
Host:example.amazonaws.com
  344         -
X-Amz-Date:20150830T123600Z
  345         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  346         -
  347         -
Param1=value1
              \
 No newline at end of file
  348    215   
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
  349    216   
deleted file mode 100644
  350    217   
index 79077d2..0000000
  351         -
-- 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
         218  +
++ /dev/null
  352    219   
@@ -1 +0,0 @@
  353         -
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
  354    220   
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
  355    221   
deleted file mode 100644
  356    222   
index 7852617..0000000
  357         -
-- 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
         223  +
++ /dev/null
  358    224   
@@ -1,4 +0,0 @@
  359         -
POST / HTTP/1.1
  360         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  361         -
Host:example.amazonaws.com
  362         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  363    225   
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
  364    226   
deleted file mode 100644
  365    227   
index 3e2e571..0000000
  366         -
-- 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
         228  +
++ /dev/null
  367    229   
@@ -1,4 +0,0 @@
  368         -
POST / HTTP/1.1
  369         -
Host:example.amazonaws.com
  370         -
X-Amz-Date:20150830T123600Z
  371         -
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
  372    230   
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
  373    231   
deleted file mode 100644
  374    232   
index 89ceae8..0000000
  375         -
-- 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
         233  +
++ /dev/null
  376    234   
@@ -1,4 +0,0 @@
  377         -
AWS4-HMAC-SHA256
  378         -
20150830T123600Z
  379         -
20150830/us-east-1/service/aws4_request
  380         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  381    235   
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
  382    236   
deleted file mode 100755
  383    237   
index d645695..0000000
  384         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
         238  +
++ /dev/null
  385    239   
@@ -1,202 +0,0 @@
  386         -
  387         -
                                 Apache License
  388         -
                           Version 2.0, January 2004
  389         -
                        http://www.apache.org/licenses/
  390         -
  391         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  392         -
  393         -
   1. Definitions.
  394         -
  395         -
      "License" shall mean the terms and conditions for use, reproduction,
  396         -
      and distribution as defined by Sections 1 through 9 of this document.
  397         -
  398         -
      "Licensor" shall mean the copyright owner or entity authorized by
  399         -
      the copyright owner that is granting the License.
  400         -
  401         -
      "Legal Entity" shall mean the union of the acting entity and all
  402         -
      other entities that control, are controlled by, or are under common
  403         -
      control with that entity. For the purposes of this definition,
  404         -
      "control" means (i) the power, direct or indirect, to cause the
  405         -
      direction or management of such entity, whether by contract or
  406         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  407         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  408         -
  409         -
      "You" (or "Your") shall mean an individual or Legal Entity
  410         -
      exercising permissions granted by this License.
  411         -
  412         -
      "Source" form shall mean the preferred form for making modifications,
  413         -
      including but not limited to software source code, documentation
  414         -
      source, and configuration files.
  415         -
  416         -
      "Object" form shall mean any form resulting from mechanical
  417         -
      transformation or translation of a Source form, including but
  418         -
      not limited to compiled object code, generated documentation,
  419         -
      and conversions to other media types.
  420         -
  421         -
      "Work" shall mean the work of authorship, whether in Source or
  422         -
      Object form, made available under the License, as indicated by a
  423         -
      copyright notice that is included in or attached to the work
  424         -
      (an example is provided in the Appendix below).
  425         -
  426         -
      "Derivative Works" shall mean any work, whether in Source or Object
  427         -
      form, that is based on (or derived from) the Work and for which the
  428         -
      editorial revisions, annotations, elaborations, or other modifications
  429         -
      represent, as a whole, an original work of authorship. For the purposes
  430         -
      of this License, Derivative Works shall not include works that remain
  431         -
      separable from, or merely link (or bind by name) to the interfaces of,
  432         -
      the Work and Derivative Works thereof.
  433         -
  434         -
      "Contribution" shall mean any work of authorship, including
  435         -
      the original version of the Work and any modifications or additions
  436         -
      to that Work or Derivative Works thereof, that is intentionally
  437         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  438         -
      or by an individual or Legal Entity authorized to submit on behalf of
  439         -
      the copyright owner. For the purposes of this definition, "submitted"
  440         -
      means any form of electronic, verbal, or written communication sent
  441         -
      to the Licensor or its representatives, including but not limited to
  442         -
      communication on electronic mailing lists, source code control systems,
  443         -
      and issue tracking systems that are managed by, or on behalf of, the
  444         -
      Licensor for the purpose of discussing and improving the Work, but
  445         -
      excluding communication that is conspicuously marked or otherwise
  446         -
      designated in writing by the copyright owner as "Not a Contribution."
  447         -
  448         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  449         -
      on behalf of whom a Contribution has been received by Licensor and
  450         -
      subsequently incorporated within the Work.
  451         -
  452         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  453         -
      this License, each Contributor hereby grants to You a perpetual,
  454         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  455         -
      copyright license to reproduce, prepare Derivative Works of,
  456         -
      publicly display, publicly perform, sublicense, and distribute the
  457         -
      Work and such Derivative Works in Source or Object form.
  458         -
  459         -
   3. Grant of Patent License. Subject to the terms and conditions of
  460         -
      this License, each Contributor hereby grants to You a perpetual,
  461         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  462         -
      (except as stated in this section) patent license to make, have made,
  463         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  464         -
      where such license applies only to those patent claims licensable
  465         -
      by such Contributor that are necessarily infringed by their
  466         -
      Contribution(s) alone or by combination of their Contribution(s)
  467         -
      with the Work to which such Contribution(s) was submitted. If You
  468         -
      institute patent litigation against any entity (including a
  469         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  470         -
      or a Contribution incorporated within the Work constitutes direct
  471         -
      or contributory patent infringement, then any patent licenses
  472         -
      granted to You under this License for that Work shall terminate
  473         -
      as of the date such litigation is filed.
  474         -
  475         -
   4. Redistribution. You may reproduce and distribute copies of the
  476         -
      Work or Derivative Works thereof in any medium, with or without
  477         -
      modifications, and in Source or Object form, provided that You
  478         -
      meet the following conditions:
  479         -
  480         -
      (a) You must give any other recipients of the Work or
  481         -
          Derivative Works a copy of this License; and
  482         -
  483         -
      (b) You must cause any modified files to carry prominent notices
  484         -
          stating that You changed the files; and
  485         -
  486         -
      (c) You must retain, in the Source form of any Derivative Works
  487         -
          that You distribute, all copyright, patent, trademark, and
  488         -
          attribution notices from the Source form of the Work,
  489         -
          excluding those notices that do not pertain to any part of
  490         -
          the Derivative Works; and
  491         -
  492         -
      (d) If the Work includes a "NOTICE" text file as part of its
  493         -
          distribution, then any Derivative Works that You distribute must
  494         -
          include a readable copy of the attribution notices contained
  495         -
          within such NOTICE file, excluding those notices that do not
  496         -
          pertain to any part of the Derivative Works, in at least one
  497         -
          of the following places: within a NOTICE text file distributed
  498         -
          as part of the Derivative Works; within the Source form or
  499         -
          documentation, if provided along with the Derivative Works; or,
  500         -
          within a display generated by the Derivative Works, if and
  501         -
          wherever such third-party notices normally appear. The contents
  502         -
          of the NOTICE file are for informational purposes only and
  503         -
          do not modify the License. You may add Your own attribution
  504         -
          notices within Derivative Works that You distribute, alongside
  505         -
          or as an addendum to the NOTICE text from the Work, provided
  506         -
          that such additional attribution notices cannot be construed
  507         -
          as modifying the License.
  508         -
  509         -
      You may add Your own copyright statement to Your modifications and
  510         -
      may provide additional or different license terms and conditions
  511         -
      for use, reproduction, or distribution of Your modifications, or
  512         -
      for any such Derivative Works as a whole, provided Your use,
  513         -
      reproduction, and distribution of the Work otherwise complies with
  514         -
      the conditions stated in this License.
  515         -
  516         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  517         -
      any Contribution intentionally submitted for inclusion in the Work
  518         -
      by You to the Licensor shall be under the terms and conditions of
  519         -
      this License, without any additional terms or conditions.
  520         -
      Notwithstanding the above, nothing herein shall supersede or modify
  521         -
      the terms of any separate license agreement you may have executed
  522         -
      with Licensor regarding such Contributions.
  523         -
  524         -
   6. Trademarks. This License does not grant permission to use the trade
  525         -
      names, trademarks, service marks, or product names of the Licensor,
  526         -
      except as required for reasonable and customary use in describing the
  527         -
      origin of the Work and reproducing the content of the NOTICE file.
  528         -
  529         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  530         -
      agreed to in writing, Licensor provides the Work (and each
  531         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  532         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  533         -
      implied, including, without limitation, any warranties or conditions
  534         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  535         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  536         -
      appropriateness of using or redistributing the Work and assume any
  537         -
      risks associated with Your exercise of permissions under this License.
  538         -
  539         -
   8. Limitation of Liability. In no event and under no legal theory,
  540         -
      whether in tort (including negligence), contract, or otherwise,
  541         -
      unless required by applicable law (such as deliberate and grossly
  542         -
      negligent acts) or agreed to in writing, shall any Contributor be
  543         -
      liable to You for damages, including any direct, indirect, special,
  544         -
      incidental, or consequential damages of any character arising as a
  545         -
      result of this License or out of the use or inability to use the
  546         -
      Work (including but not limited to damages for loss of goodwill,
  547         -
      work stoppage, computer failure or malfunction, or any and all
  548         -
      other commercial damages or losses), even if such Contributor
  549         -
      has been advised of the possibility of such damages.
  550         -
  551         -
   9. Accepting Warranty or Additional Liability. While redistributing
  552         -
      the Work or Derivative Works thereof, You may choose to offer,
  553         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  554         -
      or other liability obligations and/or rights consistent with this
  555         -
      License. However, in accepting such obligations, You may act only
  556         -
      on Your own behalf and on Your sole responsibility, not on behalf
  557         -
      of any other Contributor, and only if You agree to indemnify,
  558         -
      defend, and hold each Contributor harmless for any liability
  559         -
      incurred by, or claims asserted against, such Contributor by reason
  560         -
      of your accepting any such warranty or additional liability.
  561         -
  562         -
   END OF TERMS AND CONDITIONS
  563         -
  564         -
   APPENDIX: How to apply the Apache License to your work.
  565         -
  566         -
      To apply the Apache License to your work, attach the following
  567         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  568         -
      replaced with your own identifying information. (Don't include
  569         -
      the brackets!)  The text should be enclosed in the appropriate
  570         -
      comment syntax for the file format. We also recommend that a
  571         -
      file or class name and description of purpose be included on the
  572         -
      same "printed page" as the copyright notice for easier
  573         -
      identification within third-party archives.
  574         -
  575         -
   Copyright [yyyy] [name of copyright owner]
  576         -
  577         -
   Licensed under the Apache License, Version 2.0 (the "License");
  578         -
   you may not use this file except in compliance with the License.
  579         -
   You may obtain a copy of the License at
  580         -
  581         -
       http://www.apache.org/licenses/LICENSE-2.0
  582         -
  583         -
   Unless required by applicable law or agreed to in writing, software
  584         -
   distributed under the License is distributed on an "AS IS" BASIS,
  585         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  586         -
   See the License for the specific language governing permissions and
  587         -
   limitations under the License.
  588    240   
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
  589    241   
deleted file mode 100755
  590    242   
index d85f69e..0000000
  591         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         243  +
++ /dev/null
  592    244   
@@ -1,2 +0,0 @@
  593         -
AWS Signature Version 4a Test Suite
  594         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  595    245   
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
  596    246   
deleted file mode 100644
  597    247   
index c716622..0000000
  598         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         248  +
++ /dev/null
  599    249   
@@ -1,24 +0,0 @@
  600         -
Where did the files in this directory come from?
  601         -
================================================
  602         -
  603         -
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.
  604         -
  605         -
Signature Version 4A Test Suite
  606         -
------------------------------
  607         -
  608         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  609         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  610         -
  611         -
Each test group contains several files that you can use to validate most of the tasks described in
  612         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  613         -
  614         -
- context.json - Credentials and signer options to use when signing test requests
  615         -
- request.txt - The web request to be signed.
  616         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  617         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  618         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  619         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  620         -
  621         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  622         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  623         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  624    250   
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
  625    251   
deleted file mode 100644
  626    252   
index 45771c7..0000000
  627         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         253  +
++ /dev/null
  628    254   
@@ -1,12 +0,0 @@
  629         -
{
  630         -
    "credentials": {
  631         -
        "access_key_id": "AKIDEXAMPLE",
  632         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  633         -
    },
  634         -
    "expiration_in_seconds": 3600,
  635         -
    "normalize": true,
  636         -
    "region": "us-east-1",
  637         -
    "service": "service",
  638         -
    "sign_body": false,
  639         -
    "timestamp": "2015-08-30T12:36:00Z"
  640         -
}
  641    255   
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
  642    256   
deleted file mode 100644
  643    257   
index 45771c7..0000000
  644         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         258  +
++ /dev/null
  645    259   
@@ -1,12 +0,0 @@
  646         -
{
  647         -
    "credentials": {
  648         -
        "access_key_id": "AKIDEXAMPLE",
  649         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  650         -
    },
  651         -
    "expiration_in_seconds": 3600,
  652         -
    "normalize": true,
  653         -
    "region": "us-east-1",
  654         -
    "service": "service",
  655         -
    "sign_body": false,
  656         -
    "timestamp": "2015-08-30T12:36:00Z"
  657         -
}
  658    260   
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
  659    261   
deleted file mode 100644
  660    262   
index 45771c7..0000000
  661         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         263  +
++ /dev/null
  662    264   
@@ -1,12 +0,0 @@
  663         -
{
  664         -
    "credentials": {
  665         -
        "access_key_id": "AKIDEXAMPLE",
  666         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  667         -
    },
  668         -
    "expiration_in_seconds": 3600,
  669         -
    "normalize": true,
  670         -
    "region": "us-east-1",
  671         -
    "service": "service",
  672         -
    "sign_body": false,
  673         -
    "timestamp": "2015-08-30T12:36:00Z"
  674         -
}
  675    265   
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
  676    266   
deleted file mode 100644
  677    267   
index 45771c7..0000000
  678         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         268  +
++ /dev/null
  679    269   
@@ -1,12 +0,0 @@
  680         -
{
  681         -
    "credentials": {
  682         -
        "access_key_id": "AKIDEXAMPLE",
  683         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  684         -
    },
  685         -
    "expiration_in_seconds": 3600,
  686         -
    "normalize": true,
  687         -
    "region": "us-east-1",
  688         -
    "service": "service",
  689         -
    "sign_body": false,
  690         -
    "timestamp": "2015-08-30T12:36:00Z"
  691         -
}
  692    270   
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
  693    271   
deleted file mode 100644
  694    272   
index afe367b..0000000
  695         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         273  +
++ /dev/null
  696    274   
@@ -1,12 +0,0 @@
  697         -
{
  698         -
    "credentials": {
  699         -
        "access_key_id": "AKIDEXAMPLE",
  700         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  701         -
    },
  702         -
    "expiration_in_seconds": 3600,
  703         -
    "normalize": false,
  704         -
    "region": "us-east-1",
  705         -
    "service": "service",
  706         -
    "sign_body": false,
  707         -
    "timestamp": "2015-08-30T12:36:00Z"
  708         -
}
  709    275   
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
  710    276   
deleted file mode 100644
  711    277   
index 45771c7..0000000
  712         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         278  +
++ /dev/null
  713    279   
@@ -1,12 +0,0 @@
  714         -
{
  715         -
    "credentials": {
  716         -
        "access_key_id": "AKIDEXAMPLE",
  717         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  718         -
    },
  719         -
    "expiration_in_seconds": 3600,
  720         -
    "normalize": true,
  721         -
    "region": "us-east-1",
  722         -
    "service": "service",
  723         -
    "sign_body": false,
  724         -
    "timestamp": "2015-08-30T12:36:00Z"
  725         -
}
  726    280   
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
  727    281   
deleted file mode 100644
  728    282   
index afe367b..0000000
  729         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         283  +
++ /dev/null
  730    284   
@@ -1,12 +0,0 @@
  731         -
{
  732         -
    "credentials": {
  733         -
        "access_key_id": "AKIDEXAMPLE",
  734         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  735         -
    },
  736         -
    "expiration_in_seconds": 3600,
  737         -
    "normalize": false,
  738         -
    "region": "us-east-1",
  739         -
    "service": "service",
  740         -
    "sign_body": false,
  741         -
    "timestamp": "2015-08-30T12:36:00Z"
  742         -
}
  743    285   
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
  744    286   
deleted file mode 100644
  745    287   
index 45771c7..0000000
  746         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         288  +
++ /dev/null
  747    289   
@@ -1,12 +0,0 @@
  748         -
{
  749         -
    "credentials": {
  750         -
        "access_key_id": "AKIDEXAMPLE",
  751         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  752         -
    },
  753         -
    "expiration_in_seconds": 3600,
  754         -
    "normalize": true,
  755         -
    "region": "us-east-1",
  756         -
    "service": "service",
  757         -
    "sign_body": false,
  758         -
    "timestamp": "2015-08-30T12:36:00Z"
  759         -
}
  760    290   
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
  761    291   
deleted file mode 100644
  762    292   
index 45771c7..0000000
  763         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         293  +
++ /dev/null
  764    294   
@@ -1,12 +0,0 @@
  765         -
{
  766         -
    "credentials": {
  767         -
        "access_key_id": "AKIDEXAMPLE",
  768         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  769         -
    },
  770         -
    "expiration_in_seconds": 3600,
  771         -
    "normalize": true,
  772         -
    "region": "us-east-1",
  773         -
    "service": "service",
  774         -
    "sign_body": false,
  775         -
    "timestamp": "2015-08-30T12:36:00Z"
  776         -
}
  777    295   
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
  778    296   
deleted file mode 100644
  779    297   
index 45771c7..0000000
  780         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         298  +
++ /dev/null
  781    299   
@@ -1,12 +0,0 @@
  782         -
{
  783         -
    "credentials": {
  784         -
        "access_key_id": "AKIDEXAMPLE",
  785         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  786         -
    },
  787         -
    "expiration_in_seconds": 3600,
  788         -
    "normalize": true,
  789         -
    "region": "us-east-1",
  790         -
    "service": "service",
  791         -
    "sign_body": false,
  792         -
    "timestamp": "2015-08-30T12:36:00Z"
  793         -
}
  794    300   
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
  795    301   
deleted file mode 100644
  796    302   
index 45771c7..0000000
  797         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         303  +
++ /dev/null
  798    304   
@@ -1,12 +0,0 @@
  799         -
{
  800         -
    "credentials": {
  801         -
        "access_key_id": "AKIDEXAMPLE",
  802         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  803         -
    },
  804         -
    "expiration_in_seconds": 3600,
  805         -
    "normalize": true,
  806         -
    "region": "us-east-1",
  807         -
    "service": "service",
  808         -
    "sign_body": false,
  809         -
    "timestamp": "2015-08-30T12:36:00Z"
  810         -
}
  811    305   
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
  812    306   
deleted file mode 100644
  813    307   
index 45771c7..0000000
  814         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         308  +
++ /dev/null
  815    309   
@@ -1,12 +0,0 @@
  816         -
{
  817         -
    "credentials": {
  818         -
        "access_key_id": "AKIDEXAMPLE",
  819         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  820         -
    },
  821         -
    "expiration_in_seconds": 3600,
  822         -
    "normalize": true,
  823         -
    "region": "us-east-1",
  824         -
    "service": "service",
  825         -
    "sign_body": false,
  826         -
    "timestamp": "2015-08-30T12:36:00Z"
  827         -
}
  828    310   
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
  829    311   
deleted file mode 100644
  830    312   
index 47e7128..0000000
  831         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         313  +
++ /dev/null
  832    314   
@@ -1,9 +0,0 @@
  833         -
GET
  834         -
/
  835         -
  836         -
host:example.amazonaws.com
  837         -
x-amz-date:20150830T123600Z
  838         -
x-amz-region-set:us-east-1
  839         -
  840         -
host;x-amz-date;x-amz-region-set
  841         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  842    315   
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
  843    316   
deleted file mode 100644
  844    317   
index 95d7219..0000000
  845         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         318  +
++ /dev/null
  846    319   
@@ -1,4 +0,0 @@
  847         -
AWS4-ECDSA-P256-SHA256
  848         -
20150830T123600Z
  849         -
20150830/service/aws4_request
  850         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  851    320   
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
  852    321   
deleted file mode 100644
  853    322   
index a34ea26..0000000
  854         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         323  +
++ /dev/null
  855    324   
@@ -1,7 +0,0 @@
  856         -
GET
  857         -
/
  858         -
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
  859         -
host:example.amazonaws.com
  860         -
  861         -
host
  862         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  863    325   
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
  864    326   
deleted file mode 100644
  865    327   
index 48f855c..0000000
  866         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         328  +
++ /dev/null
  867    329   
@@ -1,4 +0,0 @@
  868         -
AWS4-ECDSA-P256-SHA256
  869         -
20150830T123600Z
  870         -
20150830/service/aws4_request
  871         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  872    330   
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
  873    331   
deleted file mode 100644
  874    332   
index 45771c7..0000000
  875         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         333  +
++ /dev/null
  876    334   
@@ -1,12 +0,0 @@
  877         -
{
  878         -
    "credentials": {
  879         -
        "access_key_id": "AKIDEXAMPLE",
  880         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  881         -
    },
  882         -
    "expiration_in_seconds": 3600,
  883         -
    "normalize": true,
  884         -
    "region": "us-east-1",
  885         -
    "service": "service",
  886         -
    "sign_body": false,
  887         -
    "timestamp": "2015-08-30T12:36:00Z"
  888         -
}
  889    335   
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
  890    336   
deleted file mode 100644
  891    337   
index 47e7128..0000000
  892         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         338  +
++ /dev/null
  893    339   
@@ -1,9 +0,0 @@
  894         -
GET
  895         -
/
  896         -
  897         -
host:example.amazonaws.com
  898         -
x-amz-date:20150830T123600Z
  899         -
x-amz-region-set:us-east-1
  900         -
  901         -
host;x-amz-date;x-amz-region-set
  902         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  903    340   
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
  904    341   
deleted file mode 100644
  905    342   
index 95d7219..0000000
  906         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         343  +
++ /dev/null
  907    344   
@@ -1,4 +0,0 @@
  908         -
AWS4-ECDSA-P256-SHA256
  909         -
20150830T123600Z
  910         -
20150830/service/aws4_request
  911         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  912    345   
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
  913    346   
deleted file mode 100644
  914    347   
index a34ea26..0000000
  915         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         348  +
++ /dev/null
  916    349   
@@ -1,7 +0,0 @@
  917         -
GET
  918         -
/
  919         -
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
  920         -
host:example.amazonaws.com
  921         -
  922         -
host
  923         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  924    350   
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
  925    351   
deleted file mode 100644
  926    352   
index 48f855c..0000000
  927         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         353  +
++ /dev/null
  928    354   
@@ -1,4 +0,0 @@
  929         -
AWS4-ECDSA-P256-SHA256
  930         -
20150830T123600Z
  931         -
20150830/service/aws4_request
  932         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  933    355   
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
  934    356   
deleted file mode 100644
  935    357   
index 45771c7..0000000
  936         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         358  +
++ /dev/null
  937    359   
@@ -1,12 +0,0 @@
  938         -
{
  939         -
    "credentials": {
  940         -
        "access_key_id": "AKIDEXAMPLE",
  941         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  942         -
    },
  943         -
    "expiration_in_seconds": 3600,
  944         -
    "normalize": true,
  945         -
    "region": "us-east-1",
  946         -
    "service": "service",
  947         -
    "sign_body": false,
  948         -
    "timestamp": "2015-08-30T12:36:00Z"
  949         -
}
  950    360   
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
  951    361   
deleted file mode 100644
  952    362   
index 45771c7..0000000
  953         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         363  +
++ /dev/null
  954    364   
@@ -1,12 +0,0 @@
  955         -
{
  956         -
    "credentials": {
  957         -
        "access_key_id": "AKIDEXAMPLE",
  958         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  959         -
    },
  960         -
    "expiration_in_seconds": 3600,
  961         -
    "normalize": true,
  962         -
    "region": "us-east-1",
  963         -
    "service": "service",
  964         -
    "sign_body": false,
  965         -
    "timestamp": "2015-08-30T12:36:00Z"
  966         -
}
  967    365   
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
  968    366   
deleted file mode 100644
  969    367   
index 45771c7..0000000
  970         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         368  +
++ /dev/null
  971    369   
@@ -1,12 +0,0 @@
  972         -
{
  973         -
    "credentials": {
  974         -
        "access_key_id": "AKIDEXAMPLE",
  975         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  976         -
    },
  977         -
    "expiration_in_seconds": 3600,
  978         -
    "normalize": true,
  979         -
    "region": "us-east-1",
  980         -
    "service": "service",
  981         -
    "sign_body": false,
  982         -
    "timestamp": "2015-08-30T12:36:00Z"
  983         -
}
  984    370   
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
  985    371   
deleted file mode 100644
  986    372   
index 45771c7..0000000
  987         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         373  +
++ /dev/null
  988    374   
@@ -1,12 +0,0 @@
  989         -
{
  990         -
    "credentials": {
  991         -
        "access_key_id": "AKIDEXAMPLE",
  992         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  993         -
    },
  994         -
    "expiration_in_seconds": 3600,
  995         -
    "normalize": true,
  996         -
    "region": "us-east-1",
  997         -
    "service": "service",
  998         -
    "sign_body": false,
  999         -
    "timestamp": "2015-08-30T12:36:00Z"
 1000         -
}
 1001    375   
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
 1002    376   
deleted file mode 100644
 1003    377   
index 45771c7..0000000
 1004         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         378  +
++ /dev/null
 1005    379   
@@ -1,12 +0,0 @@
 1006         -
{
 1007         -
    "credentials": {
 1008         -
        "access_key_id": "AKIDEXAMPLE",
 1009         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1010         -
    },
 1011         -
    "expiration_in_seconds": 3600,
 1012         -
    "normalize": true,
 1013         -
    "region": "us-east-1",
 1014         -
    "service": "service",
 1015         -
    "sign_body": false,
 1016         -
    "timestamp": "2015-08-30T12:36:00Z"
 1017         -
}
 1018    380   
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
 1019    381   
deleted file mode 100644
 1020    382   
index 45771c7..0000000
 1021         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         383  +
++ /dev/null
 1022    384   
@@ -1,12 +0,0 @@
 1023         -
{
 1024         -
    "credentials": {
 1025         -
        "access_key_id": "AKIDEXAMPLE",
 1026         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1027         -
    },
 1028         -
    "expiration_in_seconds": 3600,
 1029         -
    "normalize": true,
 1030         -
    "region": "us-east-1",
 1031         -
    "service": "service",
 1032         -
    "sign_body": false,
 1033         -
    "timestamp": "2015-08-30T12:36:00Z"
 1034         -
}
 1035    385   
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
 1036    386   
deleted file mode 100644
 1037    387   
index b6fdecf..0000000
 1038         -
-- 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
         388  +
++ /dev/null
 1039    389   
@@ -1,4 +0,0 @@
 1040         -
AWS4-ECDSA-P256-SHA256
 1041         -
20150830T123600Z
 1042         -
20150830/service/aws4_request
 1043         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1044    390   
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
 1045    391   
deleted file mode 100644
 1046    392   
index a300bea..0000000
 1047         -
-- 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
         393  +
++ /dev/null
 1048    394   
@@ -1,4 +0,0 @@
 1049         -
AWS4-ECDSA-P256-SHA256
 1050         -
20150830T123600Z
 1051         -
20150830/service/aws4_request
 1052         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
 1053    395   
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
 1054    396   
deleted file mode 100644
 1055    397   
index b6fdecf..0000000
 1056         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         398  +
++ /dev/null
 1057    399   
@@ -1,4 +0,0 @@
 1058         -
AWS4-ECDSA-P256-SHA256
 1059         -
20150830T123600Z
 1060         -
20150830/service/aws4_request
 1061         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1062    400   
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
 1063    401   
new file mode 100644
 1064    402   
index 0000000..a674243
 1065         -
-- /dev/null
         403  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
 1066    404   
@@ -0,0 +1,7 @@
         405  +
# AWS SigV4 and SigV4A Signing Test Suite
         406  +
         407  +
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).
         408  +
         409  +
We added the following changes:
         410  +
         411  +
* 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
 1067    412   
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
 1068    413   
similarity index 100%
 1069    414   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
 1070    415   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
 1071    416   
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
 1072    417   
similarity index 100%
 1073    418   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
 1074    419   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
 1075    420   
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
 1076    421   
similarity index 100%
 1077    422   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
 1078    423   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
 1079    424   
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
 1080    425   
similarity index 100%
 1081    426   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
 1082    427   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
 1083    428   
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
 1084    429   
similarity index 100%
 1085    430   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
 1086    431   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
 1087    432   
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
 1088    433   
similarity index 100%
 1089    434   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
 1090    435   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
 1091    436   
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
 1092    437   
similarity index 100%
 1093    438   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
 1094    439   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
 1095    440   
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
 1096    441   
similarity index 99%
 1097    442   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
 1098    443   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1099    444   
index 45771c7..0468d80 100644
 1100    445   
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
 1101    446   
similarity index 100%
 1102    447   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
 1103    448   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1104    449   
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
 1105    450   
new file mode 100644
 1106    451   
index 0000000..7fc5d7a
 1107         -
-- /dev/null
         452  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1108    453   
@@ -0,0 +1 @@
         454  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
 1109    455   
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
 1110    456   
new file mode 100644
 1111    457   
index 0000000..36a1205
 1112         -
-- /dev/null
         458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1113    459   
@@ -0,0 +1,8 @@
         460  +
GET / HTTP/1.1
         461  +
Host:example.amazonaws.com
         462  +
My-Header1:value2
         463  +
My-Header1:value2
         464  +
My-Header1:value1
         465  +
X-Amz-Date:20150830T123600Z
         466  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         467  +
 1114    468   
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
 1115    469   
similarity index 100%
 1116    470   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
 1117    471   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1118    472   
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
 1119    473   
new file mode 100644
 1120    474   
index 0000000..f9f4190
 1121         -
-- /dev/null
         475  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1122    476   
@@ -0,0 +1,8 @@
         477  +
GET
         478  +
/
         479  +
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
         480  +
host:example.amazonaws.com
         481  +
my-header1:value2,value2,value1
         482  +
         483  +
host;my-header1
         484  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1123    485   
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
 1124    486   
new file mode 100644
 1125    487   
index 0000000..5d0d87f
 1126         -
-- /dev/null
         488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1127    489   
@@ -0,0 +1 @@
         490  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1128    491   
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
 1129    492   
new file mode 100644
 1130    493   
index 0000000..c1dfcf4
 1131         -
-- /dev/null
         494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1132    495   
@@ -0,0 +1,6 @@
         496  +
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
         497  +
Host:example.amazonaws.com
         498  +
My-Header1:value2
         499  +
My-Header1:value2
         500  +
My-Header1:value1
         501  +
 1133    502   
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
 1134    503   
similarity index 53%
 1135    504   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1136    505   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1137    506   
index 0a3350a..077c1bb 100644
 1138         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         507  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1139    508   
@@ -1,4 +1,4 @@
 1140    509   
AWS4-HMAC-SHA256
 1141    510   
20150830T123600Z
 1142    511   
20150830/us-east-1/service/aws4_request
 1143         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         512  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1144    513   
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
 1145    514   
similarity index 100%
 1146    515   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1147    516   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1148    517   
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
 1149    518   
similarity index 99%
 1150    519   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1151    520   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1152    521   
index 45771c7..0468d80 100644
 1153    522   
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
 1154    523   
similarity index 82%
 1155    524   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1156    525   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1157    526   
index 721a39f..8cb5476 100644
 1158         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1159    528   
@@ -1,9 +1,9 @@
 1160    529   
GET
 1161    530   
/
 1162    531   
 1163    532   
host:example.amazonaws.com
 1164         -
my-header1:value1,value2,value3
         533  +
my-header1:value1 value2 value3
 1165    534   
x-amz-date:20150830T123600Z
 1166    535   
 1167    536   
host;my-header1;x-amz-date
 1168    537   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1169    538   
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
 1170    539   
new file mode 100644
 1171    540   
index 0000000..e6ff7a9
 1172         -
-- /dev/null
         541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1173    542   
@@ -0,0 +1 @@
         543  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1174    544   
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
 1175    545   
new file mode 100644
 1176    546   
index 0000000..b5ef6a0
 1177         -
-- /dev/null
         547  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1178    548   
@@ -0,0 +1,8 @@
         549  +
GET / HTTP/1.1
         550  +
Host:example.amazonaws.com
         551  +
My-Header1:value1
         552  +
  value2
         553  +
     value3
         554  +
X-Amz-Date:20150830T123600Z
         555  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         556  +
 1179    557   
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
 1180    558   
similarity index 53%
 1181    559   
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
 1182    560   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1183    561   
index fd43a41..97c7430 100644
 1184         -
-- 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
         562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1185    563   
@@ -1,4 +1,4 @@
 1186    564   
AWS4-HMAC-SHA256
 1187    565   
20150830T123600Z
 1188    566   
20150830/us-east-1/service/aws4_request
 1189         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         567  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1190    568   
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
 1191    569   
new file mode 100644
 1192    570   
index 0000000..aac46de
 1193         -
-- /dev/null
         571  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1194    572   
@@ -0,0 +1,8 @@
         573  +
GET
         574  +
/
         575  +
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
         576  +
host:example.amazonaws.com
         577  +
my-header1:value1 value2 value3
         578  +
         579  +
host;my-header1
         580  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1195    581   
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
 1196    582   
new file mode 100644
 1197    583   
index 0000000..205732d
 1198         -
-- /dev/null
         584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1199    585   
@@ -0,0 +1 @@
         586  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1200    587   
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
 1201    588   
new file mode 100644
 1202    589   
index 0000000..a891b87
 1203         -
-- /dev/null
         590  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1204    591   
@@ -0,0 +1,6 @@
         592  +
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
         593  +
Host:example.amazonaws.com
         594  +
My-Header1:value1
         595  +
  value2
         596  +
     value3
         597  +
 1205    598   
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
 1206    599   
similarity index 53%
 1207    600   
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
 1208    601   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1209    602   
index 90e66b8..ec3fe45 100644
 1210         -
-- 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
         603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1211    604   
@@ -1,4 +1,4 @@
 1212    605   
AWS4-HMAC-SHA256
 1213    606   
20150830T123600Z
 1214    607   
20150830/us-east-1/service/aws4_request
 1215         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         608  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1216    609   
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
 1217    610   
similarity index 75%
 1218    611   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1219    612   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1220    613   
index 7caa6ac..b5026cd 100644
 1221         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1222    615   
@@ -1,6 +1,5 @@
 1223    616   
GET / HTTP/1.1
 1224    617   
Host:example.amazonaws.com
 1225    618   
My-Header1:value1
 1226    619   
  value2
 1227    620   
     value3
 1228         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1229    621   
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
 1230    622   
similarity index 99%
 1231    623   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1232    624   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1233    625   
index 45771c7..0468d80 100644
 1234    626   
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
 1235    627   
similarity index 100%
 1236    628   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1237    629   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1238    630   
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
 1239    631   
new file mode 100644
 1240    632   
index 0000000..8ef0494
 1241         -
-- /dev/null
         633  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1242    634   
@@ -0,0 +1 @@
         635  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1243    636   
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
 1244    637   
new file mode 100644
 1245    638   
index 0000000..b786dc9
 1246         -
-- /dev/null
         639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1247    640   
@@ -0,0 +1,9 @@
         641  +
GET / HTTP/1.1
         642  +
Host:example.amazonaws.com
         643  +
My-Header1:value4
         644  +
My-Header1:value1
         645  +
My-Header1:value3
         646  +
My-Header1:value2
         647  +
X-Amz-Date:20150830T123600Z
         648  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         649  +
 1248    650   
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
 1249    651   
similarity index 100%
 1250    652   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1251    653   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1252    654   
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
 1253    655   
new file mode 100644
 1254    656   
index 0000000..a211cc5
 1255         -
-- /dev/null
         657  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1256    658   
@@ -0,0 +1,8 @@
         659  +
GET
         660  +
/
         661  +
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
         662  +
host:example.amazonaws.com
         663  +
my-header1:value4,value1,value3,value2
         664  +
         665  +
host;my-header1
         666  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1257    667   
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
 1258    668   
new file mode 100644
 1259    669   
index 0000000..417b0fa
 1260         -
-- /dev/null
         670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1261    671   
@@ -0,0 +1 @@
         672  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1262    673   
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
 1263    674   
new file mode 100644
 1264    675   
index 0000000..b615e5d
 1265         -
-- /dev/null
         676  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1266    677   
@@ -0,0 +1,7 @@
         678  +
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
         679  +
Host:example.amazonaws.com
         680  +
My-Header1:value4
         681  +
My-Header1:value1
         682  +
My-Header1:value3
         683  +
My-Header1:value2
         684  +
 1267    685   
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
 1268    686   
similarity index 53%
 1269    687   
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
 1270    688   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1271    689   
index f7e615e..dcaaa1b 100644
 1272         -
-- 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
         690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1273    691   
@@ -1,4 +1,4 @@
 1274    692   
AWS4-HMAC-SHA256
 1275    693   
20150830T123600Z
 1276    694   
20150830/us-east-1/service/aws4_request
 1277         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         695  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1278    696   
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
 1279    697   
similarity index 100%
 1280    698   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1281    699   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1282    700   
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
 1283    701   
similarity index 99%
 1284    702   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1285    703   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1286    704   
index 45771c7..0468d80 100644
 1287    705   
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
 1288    706   
similarity index 100%
 1289    707   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1290    708   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1291    709   
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
 1292    710   
new file mode 100644
 1293    711   
index 0000000..36081a9
 1294         -
-- /dev/null
         712  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1295    713   
@@ -0,0 +1 @@
         714  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1296    715   
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
 1297    716   
new file mode 100644
 1298    717   
index 0000000..6331d16
 1299         -
-- /dev/null
         718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1300    719   
@@ -0,0 +1,7 @@
         720  +
GET / HTTP/1.1
         721  +
Host:example.amazonaws.com
         722  +
My-Header1: value1
         723  +
My-Header2: "a   b   c"
         724  +
X-Amz-Date:20150830T123600Z
         725  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         726  +
 1301    727   
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
 1302    728   
similarity index 100%
 1303    729   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1304    730   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1305    731   
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
 1306    732   
new file mode 100644
 1307    733   
index 0000000..125c1f9
 1308         -
-- /dev/null
         734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1309    735   
@@ -0,0 +1,9 @@
         736  +
GET
         737  +
/
         738  +
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
         739  +
host:example.amazonaws.com
         740  +
my-header1:value1
         741  +
my-header2:"a b c"
         742  +
         743  +
host;my-header1;my-header2
         744  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1310    745   
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
 1311    746   
new file mode 100644
 1312    747   
index 0000000..17007a8
 1313         -
-- /dev/null
         748  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1314    749   
@@ -0,0 +1 @@
         750  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1315    751   
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
 1316    752   
new file mode 100644
 1317    753   
index 0000000..e519fd9
 1318         -
-- /dev/null
         754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1319    755   
@@ -0,0 +1,5 @@
         756  +
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
         757  +
Host:example.amazonaws.com
         758  +
My-Header1: value1
         759  +
My-Header2: "a   b   c"
         760  +
 1320    761   
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
 1321    762   
new file mode 100644
 1322    763   
index 0000000..6b4b781
 1323         -
-- /dev/null
         764  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1324    765   
@@ -0,0 +1,4 @@
         766  +
AWS4-HMAC-SHA256
         767  +
20150830T123600Z
         768  +
20150830/us-east-1/service/aws4_request
         769  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1325    770   
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
 1326    771   
similarity index 100%
 1327    772   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1328    773   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1329    774   
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
 1330    775   
new file mode 100644
 1331    776   
index 0000000..0468d80
 1332         -
-- /dev/null
         777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1333    778   
@@ -0,0 +1,12 @@
         779  +
{
         780  +
    "credentials": {
         781  +
        "access_key_id": "AKIDEXAMPLE",
         782  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         783  +
    },
         784  +
    "expiration_in_seconds": 3600,
         785  +
    "normalize": true,
         786  +
    "region": "us-east-1",
         787  +
    "service": "service",
         788  +
    "sign_body": false,
         789  +
    "timestamp": "2015-08-30T12:36:00Z"
         790  +
}
              \
 No newline at end of file
 1334    791   
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
 1335    792   
similarity index 100%
 1336    793   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1337    794   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1338    795   
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
 1339    796   
new file mode 100644
 1340    797   
index 0000000..87f295f
 1341         -
-- /dev/null
         798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1342    799   
@@ -0,0 +1 @@
         800  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1343    801   
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
 1344    802   
new file mode 100644
 1345    803   
index 0000000..0de8327
 1346         -
-- /dev/null
         804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1347    805   
@@ -0,0 +1,5 @@
         806  +
GET /example/.. HTTP/1.1
         807  +
Host:example.amazonaws.com
         808  +
X-Amz-Date:20150830T123600Z
         809  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         810  +
 1348    811   
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
 1349    812   
similarity index 100%
 1350    813   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1351    814   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1352    815   
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
 1353    816   
new file mode 100644
 1354    817   
index 0000000..fb2420d
 1355         -
-- /dev/null
         818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1356    819   
@@ -0,0 +1,7 @@
         820  +
GET
         821  +
/
         822  +
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
         823  +
host:example.amazonaws.com
         824  +
         825  +
host
         826  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1357    827   
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
 1358    828   
new file mode 100644
 1359    829   
index 0000000..da5c905
 1360         -
-- /dev/null
         830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1361    831   
@@ -0,0 +1 @@
         832  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1362    833   
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
 1363    834   
new file mode 100644
 1364    835   
index 0000000..4329c98
 1365         -
-- /dev/null
         836  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1366    837   
@@ -0,0 +1,3 @@
         838  +
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
         839  +
Host:example.amazonaws.com
         840  +
 1367    841   
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
 1368    842   
new file mode 100644
 1369    843   
index 0000000..d837e67
 1370         -
-- /dev/null
         844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1371    845   
@@ -0,0 +1,4 @@
         846  +
AWS4-HMAC-SHA256
         847  +
20150830T123600Z
         848  +
20150830/us-east-1/service/aws4_request
         849  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1372    850   
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
 1373    851   
similarity index 100%
 1374    852   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1375    853   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1376    854   
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
 1377    855   
new file mode 100644
 1378    856   
index 0000000..0468d80
 1379         -
-- /dev/null
         857  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1380    858   
@@ -0,0 +1,12 @@
         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  +
}
              \
 No newline at end of file
 1381    871   
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
 1382    872   
similarity index 100%
 1383    873   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1384    874   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1385    875   
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
 1386    876   
new file mode 100644
 1387    877   
index 0000000..87f295f
 1388         -
-- /dev/null
         878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1389    879   
@@ -0,0 +1 @@
         880  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1390    881   
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
 1391    882   
new file mode 100644
 1392    883   
index 0000000..f9b3815
 1393         -
-- /dev/null
         884  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1394    885   
@@ -0,0 +1,5 @@
         886  +
GET /example1/example2/../.. HTTP/1.1
         887  +
Host:example.amazonaws.com
         888  +
X-Amz-Date:20150830T123600Z
         889  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         890  +
 1395    891   
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
 1396    892   
similarity index 100%
 1397    893   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1398    894   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1399    895   
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
 1400    896   
new file mode 100644
 1401    897   
index 0000000..fb2420d
 1402         -
-- /dev/null
         898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1403    899   
@@ -0,0 +1,7 @@
         900  +
GET
         901  +
/
         902  +
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
         903  +
host:example.amazonaws.com
         904  +
         905  +
host
         906  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1404    907   
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
 1405    908   
new file mode 100644
 1406    909   
index 0000000..da5c905
 1407         -
-- /dev/null
         910  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1408    911   
@@ -0,0 +1 @@
         912  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1409    913   
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
 1410    914   
new file mode 100644
 1411    915   
index 0000000..b2988b7
 1412         -
-- /dev/null
         916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1413    917   
@@ -0,0 +1,3 @@
         918  +
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
         919  +
Host:example.amazonaws.com
         920  +
 1414    921   
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
 1415    922   
new file mode 100644
 1416    923   
index 0000000..d837e67
 1417         -
-- /dev/null
         924  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1418    925   
@@ -0,0 +1,4 @@
         926  +
AWS4-HMAC-SHA256
         927  +
20150830T123600Z
         928  +
20150830/us-east-1/service/aws4_request
         929  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1419    930   
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
 1420    931   
similarity index 100%
 1421    932   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1422    933   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1423    934   
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
 1424    935   
similarity index 99%
 1425    936   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1426    937   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1427    938   
index afe367b..7bee5c7 100644
 1428    939   
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
 1429    940   
similarity index 82%
 1430    941   
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
 1431    942   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1432    943   
index 36c3cdf..6919c44 100644
 1433         -
-- 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
         944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1434    945   
@@ -1,8 +1,8 @@
 1435    946   
GET
 1436         -
/
 1437         -
Param1=Value1&Param1=value2
         947  +
/example1/example2/../..
         948  +
 1438    949   
host:example.amazonaws.com
 1439    950   
x-amz-date:20150830T123600Z
 1440    951   
 1441    952   
host;x-amz-date
 1442    953   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1443    954   
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
 1444    955   
new file mode 100644
 1445    956   
index 0000000..4092d83
 1446         -
-- /dev/null
         957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1447    958   
@@ -0,0 +1 @@
         959  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1448    960   
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
 1449    961   
new file mode 100644
 1450    962   
index 0000000..e731b35
 1451         -
-- /dev/null
         963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1452    964   
@@ -0,0 +1,5 @@
         965  +
GET /example1/example2/../.. HTTP/1.1
         966  +
Host:example.amazonaws.com
         967  +
X-Amz-Date:20150830T123600Z
         968  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
         969  +
 1453    970   
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
 1454    971   
new file mode 100644
 1455    972   
index 0000000..4f45752
 1456         -
-- /dev/null
         973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1457    974   
@@ -0,0 +1,4 @@
         975  +
AWS4-HMAC-SHA256
         976  +
20150830T123600Z
         977  +
20150830/us-east-1/service/aws4_request
         978  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1458    979   
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
 1459    980   
new file mode 100644
 1460    981   
index 0000000..e1fb07d
 1461         -
-- /dev/null
         982  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1462    983   
@@ -0,0 +1,7 @@
         984  +
GET
         985  +
/example1/example2/../..
         986  +
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
         987  +
host:example.amazonaws.com
         988  +
         989  +
host
         990  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1463    991   
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
 1464    992   
new file mode 100644
 1465    993   
index 0000000..8ac31d7
 1466         -
-- /dev/null
         994  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1467    995   
@@ -0,0 +1 @@
         996  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1468    997   
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
 1469    998   
new file mode 100644
 1470    999   
index 0000000..ac074f9
 1471         -
-- /dev/null
        1000  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1472   1001   
@@ -0,0 +1,3 @@
        1002  +
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
        1003  +
Host:example.amazonaws.com
        1004  +
 1473   1005   
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
 1474   1006   
new file mode 100644
 1475   1007   
index 0000000..8dcb6ff
 1476         -
-- /dev/null
        1008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1477   1009   
@@ -0,0 +1,4 @@
        1010  +
AWS4-HMAC-SHA256
        1011  +
20150830T123600Z
        1012  +
20150830/us-east-1/service/aws4_request
        1013  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1478   1014   
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
 1479   1015   
similarity index 100%
 1480   1016   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1481   1017   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1482   1018   
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
 1483   1019   
similarity index 99%
 1484   1020   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1485   1021   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1486   1022   
index afe367b..7bee5c7 100644
 1487   1023   
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
 1488   1024   
similarity index 82%
 1489   1025   
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
 1490   1026   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1491   1027   
index 26898eb..f640bc2 100644
 1492         -
-- 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
        1028  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1493   1029   
@@ -1,8 +1,8 @@
 1494   1030   
GET
 1495         -
/
 1496         -
Param1=value1&Param1=value2
        1031  +
/example/..
        1032  +
 1497   1033   
host:example.amazonaws.com
 1498   1034   
x-amz-date:20150830T123600Z
 1499   1035   
 1500   1036   
host;x-amz-date
 1501   1037   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1502   1038   
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
 1503   1039   
new file mode 100644
 1504   1040   
index 0000000..d957303
 1505         -
-- /dev/null
        1041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1506   1042   
@@ -0,0 +1 @@
        1043  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1507   1044   
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
 1508   1045   
new file mode 100644
 1509   1046   
index 0000000..4f42ffc
 1510         -
-- /dev/null
        1047  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1511   1048   
@@ -0,0 +1,5 @@
        1049  +
GET /example/.. HTTP/1.1
        1050  +
Host:example.amazonaws.com
        1051  +
X-Amz-Date:20150830T123600Z
        1052  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
        1053  +
 1512   1054   
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
 1513   1055   
new file mode 100644
 1514   1056   
index 0000000..ca54bda
 1515         -
-- /dev/null
        1057  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1516   1058   
@@ -0,0 +1,4 @@
        1059  +
AWS4-HMAC-SHA256
        1060  +
20150830T123600Z
        1061  +
20150830/us-east-1/service/aws4_request
        1062  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1517   1063   
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
 1518   1064   
new file mode 100644
 1519   1065   
index 0000000..dc80036
 1520         -
-- /dev/null
        1066  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1521   1067   
@@ -0,0 +1,7 @@
        1068  +
GET
        1069  +
/example/..
        1070  +
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
        1071  +
host:example.amazonaws.com
        1072  +
        1073  +
host
        1074  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1522   1075   
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
 1523   1076   
new file mode 100644
 1524   1077   
index 0000000..dfa0437
 1525         -
-- /dev/null
        1078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1526   1079   
@@ -0,0 +1 @@
        1080  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1527   1081   
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
 1528   1082   
new file mode 100644
 1529   1083   
index 0000000..98367b1
 1530         -
-- /dev/null
        1084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1531   1085   
@@ -0,0 +1,3 @@
        1086  +
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
        1087  +
Host:example.amazonaws.com
        1088  +
 1532   1089   
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
 1533   1090   
new file mode 100644
 1534   1091   
index 0000000..f65dd66
 1535         -
-- /dev/null
        1092  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1536   1093   
@@ -0,0 +1,4 @@
        1094  +
AWS4-HMAC-SHA256
        1095  +
20150830T123600Z
        1096  +
20150830/us-east-1/service/aws4_request
        1097  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1537   1098   
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
 1538   1099   
similarity index 100%
 1539   1100   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1540   1101   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1541   1102   
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
 1542   1103   
new file mode 100644
 1543   1104   
index 0000000..0468d80
 1544         -
-- /dev/null
        1105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1545   1106   
@@ -0,0 +1,12 @@
        1107  +
{
        1108  +
    "credentials": {
        1109  +
        "access_key_id": "AKIDEXAMPLE",
        1110  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1111  +
    },
        1112  +
    "expiration_in_seconds": 3600,
        1113  +
    "normalize": true,
        1114  +
    "region": "us-east-1",
        1115  +
    "service": "service",
        1116  +
    "sign_body": false,
        1117  +
    "timestamp": "2015-08-30T12:36:00Z"
        1118  +
}
              \
 No newline at end of file
 1546   1119   
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
 1547   1120   
similarity index 100%
 1548   1121   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1549   1122   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1550   1123   
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
 1551   1124   
new file mode 100644
 1552   1125   
index 0000000..87f295f
 1553         -
-- /dev/null
        1126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1554   1127   
@@ -0,0 +1 @@
        1128  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1555   1129   
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
 1556   1130   
new file mode 100644
 1557   1131   
index 0000000..99c8eeb
 1558         -
-- /dev/null
        1132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1559   1133   
@@ -0,0 +1,5 @@
        1134  +
GET /./ HTTP/1.1
        1135  +
Host:example.amazonaws.com
        1136  +
X-Amz-Date:20150830T123600Z
        1137  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1138  +
 1560   1139   
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
 1561   1140   
similarity index 100%
 1562   1141   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1563   1142   
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
 1564   1143   
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
 1565   1144   
new file mode 100644
 1566   1145   
index 0000000..fb2420d
 1567         -
-- /dev/null
        1146  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1568   1147   
@@ -0,0 +1,7 @@
        1148  +
GET
        1149  +
/
        1150  +
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
        1151  +
host:example.amazonaws.com
        1152  +
        1153  +
host
        1154  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1569   1155   
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
 1570   1156   
new file mode 100644
 1571   1157   
index 0000000..da5c905
 1572         -
-- /dev/null
        1158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1573   1159   
@@ -0,0 +1 @@
        1160  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1574   1161   
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
 1575   1162   
new file mode 100644
 1576   1163   
index 0000000..2e47f69
 1577         -
-- /dev/null
        1164  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1578   1165   
@@ -0,0 +1,3 @@
        1166  +
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
        1167  +
Host:example.amazonaws.com
        1168  +
 1579   1169   
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
 1580   1170   
new file mode 100644
 1581   1171   
index 0000000..d837e67
 1582         -
-- /dev/null
        1172  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1583   1173   
@@ -0,0 +1,4 @@
        1174  +
AWS4-HMAC-SHA256
        1175  +
20150830T123600Z
        1176  +
20150830/us-east-1/service/aws4_request
        1177  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1584   1178   
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
 1585   1179   
similarity index 100%
 1586   1180   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1587   1181   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1588   1182   
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
 1589   1183   
similarity index 99%
 1590   1184   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1591   1185   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1592   1186   
index afe367b..7bee5c7 100644
 1593   1187   
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
 1594   1188   
new file mode 100644
 1595   1189   
index 0000000..5159048
 1596         -
-- /dev/null
        1190  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1597   1191   
@@ -0,0 +1,8 @@
        1192  +
GET
        1193  +
/./
        1194  +
        1195  +
host:example.amazonaws.com
        1196  +
x-amz-date:20150830T123600Z
        1197  +
        1198  +
host;x-amz-date
        1199  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1598   1200   
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
 1599   1201   
new file mode 100644
 1600   1202   
index 0000000..b49ff0e
 1601         -
-- /dev/null
        1203  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1602   1204   
@@ -0,0 +1 @@
        1205  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1603   1206   
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
 1604   1207   
new file mode 100644
 1605   1208   
index 0000000..aeb1ffa
 1606         -
-- /dev/null
        1209  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1607   1210   
@@ -0,0 +1,5 @@
        1211  +
GET /./ HTTP/1.1
        1212  +
Host:example.amazonaws.com
        1213  +
X-Amz-Date:20150830T123600Z
        1214  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1215  +
 1608   1216   
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
 1609   1217   
new file mode 100644
 1610   1218   
index 0000000..b7d8caf
 1611         -
-- /dev/null
        1219  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1612   1220   
@@ -0,0 +1,4 @@
        1221  +
AWS4-HMAC-SHA256
        1222  +
20150830T123600Z
        1223  +
20150830/us-east-1/service/aws4_request
        1224  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1613   1225   
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
 1614   1226   
new file mode 100644
 1615   1227   
index 0000000..d4e029e
 1616         -
-- /dev/null
        1228  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1617   1229   
@@ -0,0 +1,7 @@
        1230  +
GET
        1231  +
/./
        1232  +
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
        1233  +
host:example.amazonaws.com
        1234  +
        1235  +
host
        1236  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1618   1237   
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
 1619   1238   
new file mode 100644
 1620   1239   
index 0000000..fe8f4cc
 1621         -
-- /dev/null
        1240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1622   1241   
@@ -0,0 +1 @@
        1242  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1623   1243   
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
 1624   1244   
new file mode 100644
 1625   1245   
index 0000000..dcc4fc4
 1626         -
-- /dev/null
        1246  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1627   1247   
@@ -0,0 +1,3 @@
        1248  +
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
        1249  +
Host:example.amazonaws.com
        1250  +
 1628   1251   
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
 1629   1252   
new file mode 100644
 1630   1253   
index 0000000..5fb3ada
 1631         -
-- /dev/null
        1254  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1632   1255   
@@ -0,0 +1,4 @@
        1256  +
AWS4-HMAC-SHA256
        1257  +
20150830T123600Z
        1258  +
20150830/us-east-1/service/aws4_request
        1259  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1633   1260   
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
 1634   1261   
similarity index 100%
 1635   1262   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1636   1263   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1637   1264   
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
 1638   1265   
new file mode 100644
 1639   1266   
index 0000000..0468d80
 1640         -
-- /dev/null
        1267  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1641   1268   
@@ -0,0 +1,12 @@
        1269  +
{
        1270  +
    "credentials": {
        1271  +
        "access_key_id": "AKIDEXAMPLE",
        1272  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1273  +
    },
        1274  +
    "expiration_in_seconds": 3600,
        1275  +
    "normalize": true,
        1276  +
    "region": "us-east-1",
        1277  +
    "service": "service",
        1278  +
    "sign_body": false,
        1279  +
    "timestamp": "2015-08-30T12:36:00Z"
        1280  +
}
              \
 No newline at end of file
 1642   1281   
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
 1643   1282   
similarity index 100%
 1644   1283   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1645   1284   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1646   1285   
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
 1647   1286   
new file mode 100644
 1648   1287   
index 0000000..87f295f
 1649         -
-- /dev/null
        1288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1650   1289   
@@ -0,0 +1 @@
        1290  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1651   1291   
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
 1652   1292   
new file mode 100644
 1653   1293   
index 0000000..b91087b
 1654         -
-- /dev/null
        1294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1655   1295   
@@ -0,0 +1,5 @@
        1296  +
GET // HTTP/1.1
        1297  +
Host:example.amazonaws.com
        1298  +
X-Amz-Date:20150830T123600Z
        1299  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1300  +
 1656   1301   
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
 1657   1302   
similarity index 100%
 1658   1303   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1659   1304   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1660   1305   
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
 1661   1306   
new file mode 100644
 1662   1307   
index 0000000..fb2420d
 1663         -
-- /dev/null
        1308  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1664   1309   
@@ -0,0 +1,7 @@
        1310  +
GET
        1311  +
/
        1312  +
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
        1313  +
host:example.amazonaws.com
        1314  +
        1315  +
host
        1316  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1665   1317   
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
 1666   1318   
new file mode 100644
 1667   1319   
index 0000000..da5c905
 1668         -
-- /dev/null
        1320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1669   1321   
@@ -0,0 +1 @@
        1322  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1670   1323   
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
 1671   1324   
new file mode 100644
 1672   1325   
index 0000000..0290ba4
 1673         -
-- /dev/null
        1326  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1674   1327   
@@ -0,0 +1,3 @@
        1328  +
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
        1329  +
Host:example.amazonaws.com
        1330  +
 1675   1331   
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
 1676   1332   
new file mode 100644
 1677   1333   
index 0000000..d837e67
 1678         -
-- /dev/null
        1334  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1679   1335   
@@ -0,0 +1,4 @@
        1336  +
AWS4-HMAC-SHA256
        1337  +
20150830T123600Z
        1338  +
20150830/us-east-1/service/aws4_request
        1339  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1680   1340   
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
 1681   1341   
similarity index 100%
 1682   1342   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1683   1343   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1684   1344   
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
 1685   1345   
new file mode 100644
 1686   1346   
index 0000000..0468d80
 1687         -
-- /dev/null
        1347  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1688   1348   
@@ -0,0 +1,12 @@
        1349  +
{
        1350  +
    "credentials": {
        1351  +
        "access_key_id": "AKIDEXAMPLE",
        1352  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1353  +
    },
        1354  +
    "expiration_in_seconds": 3600,
        1355  +
    "normalize": true,
        1356  +
    "region": "us-east-1",
        1357  +
    "service": "service",
        1358  +
    "sign_body": false,
        1359  +
    "timestamp": "2015-08-30T12:36:00Z"
        1360  +
}
              \
 No newline at end of file
 1689   1361   
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
 1690   1362   
similarity index 100%
 1691   1363   
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
 1692   1364   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1693   1365   
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
 1694   1366   
new file mode 100644
 1695   1367   
index 0000000..8f892bf
 1696         -
-- /dev/null
        1368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1697   1369   
@@ -0,0 +1 @@
        1370  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1698   1371   
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
 1699   1372   
new file mode 100644
 1700   1373   
index 0000000..2a1895c
 1701         -
-- /dev/null
        1374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1702   1375   
@@ -0,0 +1,5 @@
        1376  +
GET /./example HTTP/1.1
        1377  +
Host:example.amazonaws.com
        1378  +
X-Amz-Date:20150830T123600Z
        1379  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1380  +
 1703   1381   
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
 1704   1382   
similarity index 100%
 1705   1383   
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
 1706   1384   
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
 1707   1385   
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
 1708   1386   
new file mode 100644
 1709   1387   
index 0000000..99dfc2a
 1710         -
-- /dev/null
        1388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1711   1389   
@@ -0,0 +1,7 @@
        1390  +
GET
        1391  +
/example
        1392  +
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
        1393  +
host:example.amazonaws.com
        1394  +
        1395  +
host
        1396  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1712   1397   
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
 1713   1398   
new file mode 100644
 1714   1399   
index 0000000..fcd7a17
 1715         -
-- /dev/null
        1400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1716   1401   
@@ -0,0 +1 @@
        1402  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1717   1403   
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
 1718   1404   
new file mode 100644
 1719   1405   
index 0000000..f671de2
 1720         -
-- /dev/null
        1406  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1721   1407   
@@ -0,0 +1,3 @@
        1408  +
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
        1409  +
Host:example.amazonaws.com
        1410  +
 1722   1411   
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
 1723   1412   
new file mode 100644
 1724   1413   
index 0000000..f8456dc
 1725         -
-- /dev/null
        1414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1726   1415   
@@ -0,0 +1,4 @@
        1416  +
AWS4-HMAC-SHA256
        1417  +
20150830T123600Z
        1418  +
20150830/us-east-1/service/aws4_request
        1419  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1727   1420   
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
 1728   1421   
similarity index 100%
 1729   1422   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1730   1423   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1731   1424   
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
 1732   1425   
similarity index 99%
 1733   1426   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1734   1427   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1735   1428   
index afe367b..7bee5c7 100644
 1736   1429   
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
 1737   1430   
new file mode 100644
 1738   1431   
index 0000000..36698c7
 1739         -
-- /dev/null
        1432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1740   1433   
@@ -0,0 +1,8 @@
        1434  +
GET
        1435  +
/./example
        1436  +
        1437  +
host:example.amazonaws.com
        1438  +
x-amz-date:20150830T123600Z
        1439  +
        1440  +
host;x-amz-date
        1441  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1741   1442   
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
 1742   1443   
new file mode 100644
 1743   1444   
index 0000000..4a4b8f2
 1744         -
-- /dev/null
        1445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1745   1446   
@@ -0,0 +1 @@
        1447  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1746   1448   
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
 1747   1449   
new file mode 100644
 1748   1450   
index 0000000..d462bcd
 1749         -
-- /dev/null
        1451  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1750   1452   
@@ -0,0 +1,5 @@
        1453  +
GET /./example HTTP/1.1
        1454  +
Host:example.amazonaws.com
        1455  +
X-Amz-Date:20150830T123600Z
        1456  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1457  +
 1751   1458   
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
 1752   1459   
new file mode 100644
 1753   1460   
index 0000000..8be78c9
 1754         -
-- /dev/null
        1461  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1755   1462   
@@ -0,0 +1,4 @@
        1463  +
AWS4-HMAC-SHA256
        1464  +
20150830T123600Z
        1465  +
20150830/us-east-1/service/aws4_request
        1466  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1756   1467   
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
 1757   1468   
new file mode 100644
 1758   1469   
index 0000000..fe1103c
 1759         -
-- /dev/null
        1470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1760   1471   
@@ -0,0 +1,7 @@
        1472  +
GET
        1473  +
/./example
        1474  +
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
        1475  +
host:example.amazonaws.com
        1476  +
        1477  +
host
        1478  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1761   1479   
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
 1762   1480   
new file mode 100644
 1763   1481   
index 0000000..ce80762
 1764         -
-- /dev/null
        1482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1765   1483   
@@ -0,0 +1 @@
        1484  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1766   1485   
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
 1767   1486   
new file mode 100644
 1768   1487   
index 0000000..30841a6
 1769         -
-- /dev/null
        1488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1770   1489   
@@ -0,0 +1,3 @@
        1490  +
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
        1491  +
Host:example.amazonaws.com
        1492  +
 1771   1493   
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
 1772   1494   
new file mode 100644
 1773   1495   
index 0000000..5c66509
 1774         -
-- /dev/null
        1496  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1775   1497   
@@ -0,0 +1,4 @@
        1498  +
AWS4-HMAC-SHA256
        1499  +
20150830T123600Z
        1500  +
20150830/us-east-1/service/aws4_request
        1501  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1776   1502   
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
 1777   1503   
similarity index 100%
 1778   1504   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1779   1505   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1780   1506   
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
 1781   1507   
new file mode 100644
 1782   1508   
index 0000000..7bee5c7
 1783         -
-- /dev/null
        1509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1784   1510   
@@ -0,0 +1,12 @@
        1511  +
{
        1512  +
    "credentials": {
        1513  +
        "access_key_id": "AKIDEXAMPLE",
        1514  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1515  +
    },
        1516  +
    "expiration_in_seconds": 3600,
        1517  +
    "normalize": false,
        1518  +
    "region": "us-east-1",
        1519  +
    "service": "service",
        1520  +
    "sign_body": false,
        1521  +
    "timestamp": "2015-08-30T12:36:00Z"
        1522  +
}
              \
 No newline at end of file
 1785   1523   
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
 1786   1524   
new file mode 100644
 1787   1525   
index 0000000..5860c8a
 1788         -
-- /dev/null
        1526  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1789   1527   
@@ -0,0 +1,8 @@
        1528  +
GET
        1529  +
//
        1530  +
        1531  +
host:example.amazonaws.com
        1532  +
x-amz-date:20150830T123600Z
        1533  +
        1534  +
host;x-amz-date
        1535  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1790   1536   
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
 1791   1537   
new file mode 100644
 1792   1538   
index 0000000..8310471
 1793         -
-- /dev/null
        1539  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1794   1540   
@@ -0,0 +1 @@
        1541  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1795   1542   
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
 1796   1543   
new file mode 100644
 1797   1544   
index 0000000..2a7afef
 1798         -
-- /dev/null
        1545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1799   1546   
@@ -0,0 +1,5 @@
        1547  +
GET // HTTP/1.1
        1548  +
Host:example.amazonaws.com
        1549  +
X-Amz-Date:20150830T123600Z
        1550  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1551  +
 1800   1552   
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
 1801   1553   
new file mode 100644
 1802   1554   
index 0000000..06059dd
 1803         -
-- /dev/null
        1555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1804   1556   
@@ -0,0 +1,4 @@
        1557  +
AWS4-HMAC-SHA256
        1558  +
20150830T123600Z
        1559  +
20150830/us-east-1/service/aws4_request
        1560  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1805   1561   
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
 1806   1562   
new file mode 100644
 1807   1563   
index 0000000..6d63aef
 1808         -
-- /dev/null
        1564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1809   1565   
@@ -0,0 +1,7 @@
        1566  +
GET
        1567  +
//
        1568  +
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
        1569  +
host:example.amazonaws.com
        1570  +
        1571  +
host
        1572  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1810   1573   
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
 1811   1574   
new file mode 100644
 1812   1575   
index 0000000..e5b7b6c
 1813         -
-- /dev/null
        1576  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1814   1577   
@@ -0,0 +1 @@
        1578  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1815   1579   
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
 1816   1580   
new file mode 100644
 1817   1581   
index 0000000..46fe3fd
 1818         -
-- /dev/null
        1582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1819   1583   
@@ -0,0 +1,3 @@
        1584  +
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
        1585  +
Host:example.amazonaws.com
        1586  +
 1820   1587   
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
 1821   1588   
new file mode 100644
 1822   1589   
index 0000000..ea79940
 1823         -
-- /dev/null
        1590  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1824   1591   
@@ -0,0 +1,4 @@
        1592  +
AWS4-HMAC-SHA256
        1593  +
20150830T123600Z
        1594  +
20150830/us-east-1/service/aws4_request
        1595  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1825   1596   
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
 1826   1597   
similarity index 100%
 1827   1598   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1828   1599   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1829   1600   
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
 1830   1601   
new file mode 100644
 1831   1602   
index 0000000..0468d80
 1832         -
-- /dev/null
        1603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1833   1604   
@@ -0,0 +1,12 @@
        1605  +
{
        1606  +
    "credentials": {
        1607  +
        "access_key_id": "AKIDEXAMPLE",
        1608  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1609  +
    },
        1610  +
    "expiration_in_seconds": 3600,
        1611  +
    "normalize": true,
        1612  +
    "region": "us-east-1",
        1613  +
    "service": "service",
        1614  +
    "sign_body": false,
        1615  +
    "timestamp": "2015-08-30T12:36:00Z"
        1616  +
}
              \
 No newline at end of file
 1834   1617   
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
 1835   1618   
similarity index 100%
 1836   1619   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1837   1620   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1838   1621   
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
 1839   1622   
new file mode 100644
 1840   1623   
index 0000000..71c7bac
 1841         -
-- /dev/null
        1624  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1842   1625   
@@ -0,0 +1 @@
        1626  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1843   1627   
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
 1844   1628   
new file mode 100644
 1845   1629   
index 0000000..0add1f1
 1846         -
-- /dev/null
        1630  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1847   1631   
@@ -0,0 +1,5 @@
        1632  +
GET //example// HTTP/1.1
        1633  +
Host:example.amazonaws.com
        1634  +
X-Amz-Date:20150830T123600Z
        1635  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1636  +
 1848   1637   
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
 1849   1638   
similarity index 100%
 1850   1639   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1851   1640   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1852   1641   
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
 1853   1642   
new file mode 100644
 1854   1643   
index 0000000..ce72510
 1855         -
-- /dev/null
        1644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1856   1645   
@@ -0,0 +1,7 @@
        1646  +
GET
        1647  +
/example/
        1648  +
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
        1649  +
host:example.amazonaws.com
        1650  +
        1651  +
host
        1652  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1857   1653   
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
 1858   1654   
new file mode 100644
 1859   1655   
index 0000000..265f387
 1860         -
-- /dev/null
        1656  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1861   1657   
@@ -0,0 +1 @@
        1658  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1862   1659   
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
 1863   1660   
new file mode 100644
 1864   1661   
index 0000000..e1fcb2e
 1865         -
-- /dev/null
        1662  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1866   1663   
@@ -0,0 +1,3 @@
        1664  +
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
        1665  +
Host:example.amazonaws.com
        1666  +
 1867   1667   
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
 1868   1668   
new file mode 100644
 1869   1669   
index 0000000..a14de61
 1870         -
-- /dev/null
        1670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1871   1671   
@@ -0,0 +1,4 @@
        1672  +
AWS4-HMAC-SHA256
        1673  +
20150830T123600Z
        1674  +
20150830/us-east-1/service/aws4_request
        1675  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1872   1676   
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
 1873   1677   
similarity index 100%
 1874   1678   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1875   1679   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1876   1680   
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
 1877   1681   
new file mode 100644
 1878   1682   
index 0000000..7bee5c7
 1879         -
-- /dev/null
        1683  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1880   1684   
@@ -0,0 +1,12 @@
        1685  +
{
        1686  +
    "credentials": {
        1687  +
        "access_key_id": "AKIDEXAMPLE",
        1688  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1689  +
    },
        1690  +
    "expiration_in_seconds": 3600,
        1691  +
    "normalize": false,
        1692  +
    "region": "us-east-1",
        1693  +
    "service": "service",
        1694  +
    "sign_body": false,
        1695  +
    "timestamp": "2015-08-30T12:36:00Z"
        1696  +
}
              \
 No newline at end of file
 1881   1697   
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
 1882   1698   
new file mode 100644
 1883   1699   
index 0000000..dfffaaf
 1884         -
-- /dev/null
        1700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1885   1701   
@@ -0,0 +1,8 @@
        1702  +
GET
        1703  +
//example//
        1704  +
        1705  +
host:example.amazonaws.com
        1706  +
x-amz-date:20150830T123600Z
        1707  +
        1708  +
host;x-amz-date
        1709  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1886   1710   
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
 1887   1711   
new file mode 100644
 1888   1712   
index 0000000..edbcc0d
 1889         -
-- /dev/null
        1713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1890   1714   
@@ -0,0 +1 @@
        1715  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1891   1716   
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
 1892   1717   
new file mode 100644
 1893   1718   
index 0000000..4cc12dd
 1894         -
-- /dev/null
        1719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 1895   1720   
@@ -0,0 +1,5 @@
        1721  +
GET //example// HTTP/1.1
        1722  +
Host:example.amazonaws.com
        1723  +
X-Amz-Date:20150830T123600Z
        1724  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1725  +
 1896   1726   
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
 1897   1727   
new file mode 100644
 1898   1728   
index 0000000..3eba390
 1899         -
-- /dev/null
        1729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 1900   1730   
@@ -0,0 +1,4 @@
        1731  +
AWS4-HMAC-SHA256
        1732  +
20150830T123600Z
        1733  +
20150830/us-east-1/service/aws4_request
        1734  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 1901   1735   
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
 1902   1736   
new file mode 100644
 1903   1737   
index 0000000..f7844e3
 1904         -
-- /dev/null
        1738  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 1905   1739   
@@ -0,0 +1,7 @@
        1740  +
GET
        1741  +
//example//
        1742  +
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
        1743  +
host:example.amazonaws.com
        1744  +
        1745  +
host
        1746  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1906   1747   
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
 1907   1748   
new file mode 100644
 1908   1749   
index 0000000..a8d6b96
 1909         -
-- /dev/null
        1750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 1910   1751   
@@ -0,0 +1 @@
        1752  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 1911   1753   
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
 1912   1754   
new file mode 100644
 1913   1755   
index 0000000..a8322c6
 1914         -
-- /dev/null
        1756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 1915   1757   
@@ -0,0 +1,3 @@
        1758  +
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
        1759  +
Host:example.amazonaws.com
        1760  +
 1916   1761   
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
 1917   1762   
new file mode 100644
 1918   1763   
index 0000000..068724d
 1919         -
-- /dev/null
        1764  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 1920   1765   
@@ -0,0 +1,4 @@
        1766  +
AWS4-HMAC-SHA256
        1767  +
20150830T123600Z
        1768  +
20150830/us-east-1/service/aws4_request
        1769  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 1921   1770   
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
 1922   1771   
similarity index 100%
 1923   1772   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 1924   1773   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 1925   1774   
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
 1926   1775   
new file mode 100644
 1927   1776   
index 0000000..0468d80
 1928         -
-- /dev/null
        1777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 1929   1778   
@@ -0,0 +1,12 @@
        1779  +
{
        1780  +
    "credentials": {
        1781  +
        "access_key_id": "AKIDEXAMPLE",
        1782  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1783  +
    },
        1784  +
    "expiration_in_seconds": 3600,
        1785  +
    "normalize": true,
        1786  +
    "region": "us-east-1",
        1787  +
    "service": "service",
        1788  +
    "sign_body": false,
        1789  +
    "timestamp": "2015-08-30T12:36:00Z"
        1790  +
}
              \
 No newline at end of file
 1930   1791   
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
 1931   1792   
similarity index 100%
 1932   1793   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 1933   1794   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 1934   1795   
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
 1935   1796   
new file mode 100644
 1936   1797   
index 0000000..f63892b
 1937         -
-- /dev/null
        1798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 1938   1799   
@@ -0,0 +1 @@
        1800  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1939   1801   
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
 1940   1802   
new file mode 100644
 1941   1803   
index 0000000..19cd5cb
 1942         -
-- /dev/null
        1804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 1943   1805   
@@ -0,0 +1,5 @@
        1806  +
GET /example space/ HTTP/1.1
        1807  +
Host:example.amazonaws.com
        1808  +
X-Amz-Date:20150830T123600Z
        1809  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1810  +
 1944   1811   
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
 1945   1812   
similarity index 100%
 1946   1813   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 1947   1814   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 1948   1815   
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
 1949   1816   
new file mode 100644
 1950   1817   
index 0000000..fa3d3e2
 1951         -
-- /dev/null
        1818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 1952   1819   
@@ -0,0 +1,7 @@
        1820  +
GET
        1821  +
/example%20space/
        1822  +
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
        1823  +
host:example.amazonaws.com
        1824  +
        1825  +
host
        1826  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1953   1827   
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
 1954   1828   
new file mode 100644
 1955   1829   
index 0000000..5b2e204
 1956         -
-- /dev/null
        1830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 1957   1831   
@@ -0,0 +1 @@
        1832  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1958   1833   
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
 1959   1834   
new file mode 100644
 1960   1835   
index 0000000..93ca1d0
 1961         -
-- /dev/null
        1836  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 1962   1837   
@@ -0,0 +1,3 @@
        1838  +
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
        1839  +
Host:example.amazonaws.com
        1840  +
 1963   1841   
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
 1964   1842   
new file mode 100644
 1965   1843   
index 0000000..b4cb789
 1966         -
-- /dev/null
        1844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 1967   1845   
@@ -0,0 +1,4 @@
        1846  +
AWS4-HMAC-SHA256
        1847  +
20150830T123600Z
        1848  +
20150830/us-east-1/service/aws4_request
        1849  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1968   1850   
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
 1969   1851   
new file mode 100644
 1970   1852   
index 0000000..860a277
 1971         -
-- /dev/null
        1853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 1972   1854   
@@ -0,0 +1,2 @@
        1855  +
GET /example%20space/ HTTP/1.1
        1856  +
Host:example.amazonaws.com
 1973   1857   
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
 1974   1858   
new file mode 100644
 1975   1859   
index 0000000..7bee5c7
 1976         -
-- /dev/null
        1860  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 1977   1861   
@@ -0,0 +1,12 @@
        1862  +
{
        1863  +
    "credentials": {
        1864  +
        "access_key_id": "AKIDEXAMPLE",
        1865  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1866  +
    },
        1867  +
    "expiration_in_seconds": 3600,
        1868  +
    "normalize": false,
        1869  +
    "region": "us-east-1",
        1870  +
    "service": "service",
        1871  +
    "sign_body": false,
        1872  +
    "timestamp": "2015-08-30T12:36:00Z"
        1873  +
}
              \
 No newline at end of file
 1978   1874   
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
 1979   1875   
similarity index 66%
 1980   1876   
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
 1981   1877   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1982   1878   
index 71dc981..124a709 100644
 1983         -
-- 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
        1879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 1984   1880   
@@ -1,9 +1,8 @@
 1985         -
POST
 1986         -
/
        1881  +
GET
        1882  +
/example%20space/
 1987   1883   
 1988         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 1989   1884   
host:example.amazonaws.com
 1990   1885   
x-amz-date:20150830T123600Z
 1991   1886   
 1992   1887   
host;x-amz-date
 1993   1888   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1994   1889   
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
 1995   1890   
new file mode 100644
 1996   1891   
index 0000000..f63892b
 1997         -
-- /dev/null
        1892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 1998   1893   
@@ -0,0 +1 @@
        1894  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1999   1895   
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
 2000   1896   
new file mode 100644
 2001   1897   
index 0000000..19cd5cb
 2002         -
-- /dev/null
        1898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 2003   1899   
@@ -0,0 +1,5 @@
        1900  +
GET /example space/ HTTP/1.1
        1901  +
Host:example.amazonaws.com
        1902  +
X-Amz-Date:20150830T123600Z
        1903  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1904  +
 2004   1905   
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
 2005   1906   
new file mode 100644
 2006   1907   
index 0000000..a633f0c
 2007         -
-- /dev/null
        1908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 2008   1909   
@@ -0,0 +1,4 @@
        1910  +
AWS4-HMAC-SHA256
        1911  +
20150830T123600Z
        1912  +
20150830/us-east-1/service/aws4_request
        1913  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 2009   1914   
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
 2010   1915   
new file mode 100644
 2011   1916   
index 0000000..fa3d3e2
 2012         -
-- /dev/null
        1917  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 2013   1918   
@@ -0,0 +1,7 @@
        1919  +
GET
        1920  +
/example%20space/
        1921  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1922  +
host:example.amazonaws.com
        1923  +
        1924  +
host
        1925  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2014   1926   
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
 2015   1927   
new file mode 100644
 2016   1928   
index 0000000..5b2e204
 2017         -
-- /dev/null
        1929  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 2018   1930   
@@ -0,0 +1 @@
        1931  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2019   1932   
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
 2020   1933   
new file mode 100644
 2021   1934   
index 0000000..93ca1d0
 2022         -
-- /dev/null
        1935  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 2023   1936   
@@ -0,0 +1,3 @@
        1937  +
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
        1938  +
Host:example.amazonaws.com
        1939  +
 2024   1940   
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
 2025   1941   
new file mode 100644
 2026   1942   
index 0000000..b4cb789
 2027         -
-- /dev/null
        1943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 2028   1944   
@@ -0,0 +1,4 @@
        1945  +
AWS4-HMAC-SHA256
        1946  +
20150830T123600Z
        1947  +
20150830/us-east-1/service/aws4_request
        1948  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2029   1949   
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
 2030   1950   
similarity index 67%
 2031   1951   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 2032   1952   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2033   1953   
index b7d5e8b..ab509ab 100644
 2034         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        1954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2035   1955   
@@ -1,3 +1,2 @@
 2036   1956   
GET /example space/ HTTP/1.1
 2037   1957   
Host:example.amazonaws.com
 2038         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2039   1958   
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
 2040   1959   
new file mode 100644
 2041   1960   
index 0000000..0468d80
 2042         -
-- /dev/null
        1961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 2043   1962   
@@ -0,0 +1,12 @@
        1963  +
{
        1964  +
    "credentials": {
        1965  +
        "access_key_id": "AKIDEXAMPLE",
        1966  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1967  +
    },
        1968  +
    "expiration_in_seconds": 3600,
        1969  +
    "normalize": true,
        1970  +
    "region": "us-east-1",
        1971  +
    "service": "service",
        1972  +
    "sign_body": false,
        1973  +
    "timestamp": "2015-08-30T12:36:00Z"
        1974  +
}
              \
 No newline at end of file
 2044   1975   
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
 2045   1976   
similarity index 100%
 2046   1977   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 2047   1978   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2048   1979   
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
 2049   1980   
new file mode 100644
 2050   1981   
index 0000000..e503354
 2051         -
-- /dev/null
        1982  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2052   1983   
@@ -0,0 +1 @@
        1984  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 2053   1985   
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
 2054   1986   
new file mode 100644
 2055   1987   
index 0000000..4367892
 2056         -
-- /dev/null
        1988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2057   1989   
@@ -0,0 +1,5 @@
        1990  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        1991  +
Host:example.amazonaws.com
        1992  +
X-Amz-Date:20150830T123600Z
        1993  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        1994  +
 2058   1995   
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
 2059   1996   
similarity index 100%
 2060   1997   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 2061   1998   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2062   1999   
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
 2063   2000   
new file mode 100644
 2064   2001   
index 0000000..d7f0696
 2065         -
-- /dev/null
        2002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2066   2003   
@@ -0,0 +1,7 @@
        2004  +
GET
        2005  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        2006  +
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
        2007  +
host:example.amazonaws.com
        2008  +
        2009  +
host
        2010  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2067   2011   
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
 2068   2012   
new file mode 100644
 2069   2013   
index 0000000..509e972
 2070         -
-- /dev/null
        2014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2071   2015   
@@ -0,0 +1 @@
        2016  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 2072   2017   
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
 2073   2018   
new file mode 100644
 2074   2019   
index 0000000..79aad36
 2075         -
-- /dev/null
        2020  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2076   2021   
@@ -0,0 +1,3 @@
        2022  +
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
        2023  +
Host:example.amazonaws.com
        2024  +
 2077   2025   
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
 2078   2026   
new file mode 100644
 2079   2027   
index 0000000..e8068b3
 2080         -
-- /dev/null
        2028  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2081   2029   
@@ -0,0 +1,4 @@
        2030  +
AWS4-HMAC-SHA256
        2031  +
20150830T123600Z
        2032  +
20150830/us-east-1/service/aws4_request
        2033  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 2082   2034   
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
 2083   2035   
similarity index 100%
 2084   2036   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 2085   2037   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2086   2038   
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
 2087   2039   
new file mode 100644
 2088   2040   
index 0000000..0468d80
 2089         -
-- /dev/null
        2041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2090   2042   
@@ -0,0 +1,12 @@
        2043  +
{
        2044  +
    "credentials": {
        2045  +
        "access_key_id": "AKIDEXAMPLE",
        2046  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2047  +
    },
        2048  +
    "expiration_in_seconds": 3600,
        2049  +
    "normalize": true,
        2050  +
    "region": "us-east-1",
        2051  +
    "service": "service",
        2052  +
    "sign_body": false,
        2053  +
    "timestamp": "2015-08-30T12:36:00Z"
        2054  +
}
              \
 No newline at end of file
 2091   2055   
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
 2092   2056   
similarity index 100%
 2093   2057   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 2094   2058   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2095   2059   
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
 2096   2060   
new file mode 100644
 2097   2061   
index 0000000..9a13676
 2098         -
-- /dev/null
        2062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2099   2063   
@@ -0,0 +1 @@
        2064  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 2100   2065   
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
 2101   2066   
new file mode 100644
 2102   2067   
index 0000000..5aaf47c
 2103         -
-- /dev/null
        2068  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2104   2069   
@@ -0,0 +1,5 @@
        2070  +
GET /ሴ HTTP/1.1
        2071  +
Host:example.amazonaws.com
        2072  +
X-Amz-Date:20150830T123600Z
        2073  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2074  +
 2105   2075   
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
 2106   2076   
similarity index 100%
 2107   2077   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 2108   2078   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2109   2079   
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
 2110   2080   
new file mode 100644
 2111   2081   
index 0000000..bdb77c9
 2112         -
-- /dev/null
        2082  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2113   2083   
@@ -0,0 +1,7 @@
        2084  +
GET
        2085  +
/%E1%88%B4
        2086  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2087  +
host:example.amazonaws.com
        2088  +
        2089  +
host
        2090  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2114   2091   
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
 2115   2092   
new file mode 100644
 2116   2093   
index 0000000..21342b3
 2117         -
-- /dev/null
        2094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2118   2095   
@@ -0,0 +1 @@
        2096  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2119   2097   
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
 2120   2098   
new file mode 100644
 2121   2099   
index 0000000..368c2ff
 2122         -
-- /dev/null
        2100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2123   2101   
@@ -0,0 +1,3 @@
        2102  +
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
        2103  +
Host:example.amazonaws.com
        2104  +
 2124   2105   
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
 2125   2106   
new file mode 100644
 2126   2107   
index 0000000..56b8fbf
 2127         -
-- /dev/null
        2108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2128   2109   
@@ -0,0 +1,4 @@
        2110  +
AWS4-HMAC-SHA256
        2111  +
20150830T123600Z
        2112  +
20150830/us-east-1/service/aws4_request
        2113  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2129   2114   
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
 2130   2115   
similarity index 62%
 2131   2116   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2132   2117   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2133   2118   
index da4808d..9e273f6 100644
 2134         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2135   2120   
@@ -1,3 +1,2 @@
 2136   2121   
GET /ሴ HTTP/1.1
 2137   2122   
Host:example.amazonaws.com
 2138         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2139   2123   
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
 2140   2124   
new file mode 100644
 2141   2125   
index 0000000..0468d80
 2142         -
-- /dev/null
        2126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2143   2127   
@@ -0,0 +1,12 @@
        2128  +
{
        2129  +
    "credentials": {
        2130  +
        "access_key_id": "AKIDEXAMPLE",
        2131  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2132  +
    },
        2133  +
    "expiration_in_seconds": 3600,
        2134  +
    "normalize": true,
        2135  +
    "region": "us-east-1",
        2136  +
    "service": "service",
        2137  +
    "sign_body": false,
        2138  +
    "timestamp": "2015-08-30T12:36:00Z"
        2139  +
}
              \
 No newline at end of file
 2144   2140   
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
 2145   2141   
similarity index 100%
 2146   2142   
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
 2147   2143   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2148   2144   
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
 2149   2145   
new file mode 100644
 2150   2146   
index 0000000..d7f1c1c
 2151         -
-- /dev/null
        2147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2152   2148   
@@ -0,0 +1 @@
        2149  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2153   2150   
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
 2154   2151   
new file mode 100644
 2155   2152   
index 0000000..1c60790
 2156         -
-- /dev/null
        2153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2157   2154   
@@ -0,0 +1,5 @@
        2155  +
GET /?Param1=value1 HTTP/1.1
        2156  +
Host:example.amazonaws.com
        2157  +
X-Amz-Date:20150830T123600Z
        2158  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2159  +
 2158   2160   
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
 2159   2161   
similarity index 100%
 2160   2162   
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
 2161   2163   
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
 2162   2164   
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
 2163   2165   
new file mode 100644
 2164   2166   
index 0000000..6a823ed
 2165         -
-- /dev/null
        2167  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2166   2168   
@@ -0,0 +1,7 @@
        2169  +
GET
        2170  +
/
        2171  +
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
        2172  +
host:example.amazonaws.com
        2173  +
        2174  +
host
        2175  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2167   2176   
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
 2168   2177   
new file mode 100644
 2169   2178   
index 0000000..8c77136
 2170         -
-- /dev/null
        2179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2171   2180   
@@ -0,0 +1 @@
        2181  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2172   2182   
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
 2173   2183   
new file mode 100644
 2174   2184   
index 0000000..2d337d8
 2175         -
-- /dev/null
        2185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2176   2186   
@@ -0,0 +1,3 @@
        2187  +
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
        2188  +
Host:example.amazonaws.com
        2189  +
 2177   2190   
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
 2178   2191   
new file mode 100644
 2179   2192   
index 0000000..191a484
 2180         -
-- /dev/null
        2193  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2181   2194   
@@ -0,0 +1,4 @@
        2195  +
AWS4-HMAC-SHA256
        2196  +
20150830T123600Z
        2197  +
20150830/us-east-1/service/aws4_request
        2198  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2182   2199   
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
 2183   2200   
similarity index 100%
 2184   2201   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2185   2202   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2186   2203   
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
 2187   2204   
new file mode 100644
 2188   2205   
index 0000000..0468d80
 2189         -
-- /dev/null
        2206  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2190   2207   
@@ -0,0 +1,12 @@
        2208  +
{
        2209  +
    "credentials": {
        2210  +
        "access_key_id": "AKIDEXAMPLE",
        2211  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2212  +
    },
        2213  +
    "expiration_in_seconds": 3600,
        2214  +
    "normalize": true,
        2215  +
    "region": "us-east-1",
        2216  +
    "service": "service",
        2217  +
    "sign_body": false,
        2218  +
    "timestamp": "2015-08-30T12:36:00Z"
        2219  +
}
              \
 No newline at end of file
 2191   2220   
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
 2192   2221   
new file mode 100644
 2193   2222   
index 0000000..0c8ba21
 2194         -
-- /dev/null
        2223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2195   2224   
@@ -0,0 +1,8 @@
        2225  +
GET
        2226  +
/
        2227  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2228  +
host:example.amazonaws.com
        2229  +
x-amz-date:20150830T123600Z
        2230  +
        2231  +
host;x-amz-date
        2232  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2196   2233   
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
 2197   2234   
new file mode 100644
 2198   2235   
index 0000000..9ab65ed
 2199         -
-- /dev/null
        2236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2200   2237   
@@ -0,0 +1 @@
        2238  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2201   2239   
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
 2202   2240   
new file mode 100644
 2203   2241   
index 0000000..0bcdf98
 2204         -
-- /dev/null
        2242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2205   2243   
@@ -0,0 +1,5 @@
        2244  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2245  +
Host:example.amazonaws.com
        2246  +
X-Amz-Date:20150830T123600Z
        2247  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2248  +
 2206   2249   
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
 2207   2250   
new file mode 100644
 2208   2251   
index 0000000..bf674ad
 2209         -
-- /dev/null
        2252  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2210   2253   
@@ -0,0 +1,4 @@
        2254  +
AWS4-HMAC-SHA256
        2255  +
20150830T123600Z
        2256  +
20150830/us-east-1/service/aws4_request
        2257  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2211   2258   
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
 2212   2259   
new file mode 100644
 2213   2260   
index 0000000..3f590a4
 2214         -
-- /dev/null
        2261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2215   2262   
@@ -0,0 +1,7 @@
        2263  +
GET
        2264  +
/
        2265  +
%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
        2266  +
host:example.amazonaws.com
        2267  +
        2268  +
host
        2269  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2216   2270   
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
 2217   2271   
new file mode 100644
 2218   2272   
index 0000000..e225eab
 2219         -
-- /dev/null
        2273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2220   2274   
@@ -0,0 +1 @@
        2275  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2221   2276   
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
 2222   2277   
new file mode 100644
 2223   2278   
index 0000000..6206719
 2224         -
-- /dev/null
        2279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2225   2280   
@@ -0,0 +1,3 @@
        2281  +
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
        2282  +
Host:example.amazonaws.com
        2283  +
 2226   2284   
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
 2227   2285   
new file mode 100644
 2228   2286   
index 0000000..81a4210
 2229         -
-- /dev/null
        2287  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2230   2288   
@@ -0,0 +1,4 @@
        2289  +
AWS4-HMAC-SHA256
        2290  +
20150830T123600Z
        2291  +
20150830/us-east-1/service/aws4_request
        2292  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2231   2293   
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
 2232   2294   
new file mode 100644
 2233   2295   
index 0000000..368c6e3
 2234         -
-- /dev/null
        2296  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2235   2297   
@@ -0,0 +1,2 @@
        2298  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2299  +
Host:example.amazonaws.com
 2236   2300   
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
 2237   2301   
new file mode 100644
 2238   2302   
index 0000000..0468d80
 2239         -
-- /dev/null
        2303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2240   2304   
@@ -0,0 +1,12 @@
        2305  +
{
        2306  +
    "credentials": {
        2307  +
        "access_key_id": "AKIDEXAMPLE",
        2308  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2309  +
    },
        2310  +
    "expiration_in_seconds": 3600,
        2311  +
    "normalize": true,
        2312  +
    "region": "us-east-1",
        2313  +
    "service": "service",
        2314  +
    "sign_body": false,
        2315  +
    "timestamp": "2015-08-30T12:36:00Z"
        2316  +
}
              \
 No newline at end of file
 2241   2317   
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
 2242   2318   
similarity index 100%
 2243   2319   
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
 2244   2320   
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
 2245   2321   
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
 2246   2322   
new file mode 100644
 2247   2323   
index 0000000..6a8cb9d
 2248         -
-- /dev/null
        2324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2249   2325   
@@ -0,0 +1 @@
        2326  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2250   2327   
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
 2251   2328   
new file mode 100644
 2252   2329   
index 0000000..f78a9d2
 2253         -
-- /dev/null
        2330  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2254   2331   
@@ -0,0 +1,5 @@
        2332  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2333  +
Host:example.amazonaws.com
        2334  +
X-Amz-Date:20150830T123600Z
        2335  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2336  +
 2255   2337   
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
 2256   2338   
similarity index 100%
 2257   2339   
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
 2258   2340   
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
 2259   2341   
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
 2260   2342   
new file mode 100644
 2261   2343   
index 0000000..a6e1bc7
 2262         -
-- /dev/null
        2344  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2263   2345   
@@ -0,0 +1,7 @@
        2346  +
GET
        2347  +
/
        2348  +
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
        2349  +
host:example.amazonaws.com
        2350  +
        2351  +
host
        2352  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2264   2353   
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
 2265   2354   
new file mode 100644
 2266   2355   
index 0000000..d6e6a88
 2267         -
-- /dev/null
        2356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2268   2357   
@@ -0,0 +1 @@
        2358  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2269   2359   
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
 2270   2360   
new file mode 100644
 2271   2361   
index 0000000..538e2f0
 2272         -
-- /dev/null
        2362  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2273   2363   
@@ -0,0 +1,3 @@
        2364  +
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
        2365  +
Host:example.amazonaws.com
        2366  +
 2274   2367   
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
 2275   2368   
new file mode 100644
 2276   2369   
index 0000000..e696085
 2277         -
-- /dev/null
        2370  +
++ 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
 2278   2371   
@@ -0,0 +1,4 @@
        2372  +
AWS4-HMAC-SHA256
        2373  +
20150830T123600Z
        2374  +
20150830/us-east-1/service/aws4_request
        2375  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2279   2376   
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
 2280   2377   
similarity index 100%
 2281   2378   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2282   2379   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2283   2380   
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
 2284   2381   
new file mode 100644
 2285   2382   
index 0000000..0468d80
 2286         -
-- /dev/null
        2383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2287   2384   
@@ -0,0 +1,12 @@
        2385  +
{
        2386  +
    "credentials": {
        2387  +
        "access_key_id": "AKIDEXAMPLE",
        2388  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2389  +
    },
        2390  +
    "expiration_in_seconds": 3600,
        2391  +
    "normalize": true,
        2392  +
    "region": "us-east-1",
        2393  +
    "service": "service",
        2394  +
    "sign_body": false,
        2395  +
    "timestamp": "2015-08-30T12:36:00Z"
        2396  +
}
              \
 No newline at end of file
 2288   2397   
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
 2289   2398   
similarity index 100%
 2290   2399   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2291   2400   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2292   2401   
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
 2293   2402   
new file mode 100644
 2294   2403   
index 0000000..876a64b
 2295         -
-- /dev/null
        2404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2296   2405   
@@ -0,0 +1 @@
        2406  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2297   2407   
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
 2298   2408   
similarity index 50%
 2299   2409   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2300   2410   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2301   2411   
index ba1ef40..9d0d993 100644
 2302         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2412  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2303   2413   
@@ -1,4 +1,5 @@
 2304   2414   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2305   2415   
Host:example.amazonaws.com
 2306   2416   
X-Amz-Date:20150830T123600Z
 2307         -
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
        2417  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2418  +
 2308   2419   
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
 2309   2420   
similarity index 100%
 2310   2421   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2311   2422   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2312   2423   
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
 2313   2424   
new file mode 100644
 2314   2425   
index 0000000..a1bac59
 2315         -
-- /dev/null
        2426  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2316   2427   
@@ -0,0 +1,7 @@
        2428  +
GET
        2429  +
/
        2430  +
-._~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
        2431  +
host:example.amazonaws.com
        2432  +
        2433  +
host
        2434  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2317   2435   
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
 2318   2436   
new file mode 100644
 2319   2437   
index 0000000..41881e9
 2320         -
-- /dev/null
        2438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2321   2439   
@@ -0,0 +1 @@
        2440  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2322   2441   
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
 2323   2442   
new file mode 100644
 2324   2443   
index 0000000..3179076
 2325         -
-- /dev/null
        2444  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2326   2445   
@@ -0,0 +1,3 @@
        2446  +
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
        2447  +
Host:example.amazonaws.com
        2448  +
 2327   2449   
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
 2328   2450   
new file mode 100644
 2329   2451   
index 0000000..6d675fc
 2330         -
-- /dev/null
        2452  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2331   2453   
@@ -0,0 +1,4 @@
        2454  +
AWS4-HMAC-SHA256
        2455  +
20150830T123600Z
        2456  +
20150830/us-east-1/service/aws4_request
        2457  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2332   2458   
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
 2333   2459   
similarity index 100%
 2334   2460   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2335   2461   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2336   2462   
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
 2337   2463   
new file mode 100644
 2338   2464   
index 0000000..0468d80
 2339         -
-- /dev/null
        2465  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2340   2466   
@@ -0,0 +1,12 @@
        2467  +
{
        2468  +
    "credentials": {
        2469  +
        "access_key_id": "AKIDEXAMPLE",
        2470  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2471  +
    },
        2472  +
    "expiration_in_seconds": 3600,
        2473  +
    "normalize": true,
        2474  +
    "region": "us-east-1",
        2475  +
    "service": "service",
        2476  +
    "sign_body": false,
        2477  +
    "timestamp": "2015-08-30T12:36:00Z"
        2478  +
}
              \
 No newline at end of file
 2341   2479   
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
 2342   2480   
similarity index 100%
 2343   2481   
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
 2344   2482   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2345   2483   
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
 2346   2484   
new file mode 100644
 2347   2485   
index 0000000..87f295f
 2348         -
-- /dev/null
        2486  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2349   2487   
@@ -0,0 +1 @@
        2488  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2350   2489   
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
 2351   2490   
new file mode 100644
 2352   2491   
index 0000000..36b86e7
 2353         -
-- /dev/null
        2492  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2354   2493   
@@ -0,0 +1,5 @@
        2494  +
GET / HTTP/1.1
        2495  +
Host:example.amazonaws.com
        2496  +
X-Amz-Date:20150830T123600Z
        2497  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2498  +
 2355   2499   
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
 2356   2500   
similarity index 100%
 2357   2501   
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
 2358   2502   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2359   2503   
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
 2360   2504   
new file mode 100644
 2361   2505   
index 0000000..fb2420d
 2362         -
-- /dev/null
        2506  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2363   2507   
@@ -0,0 +1,7 @@
        2508  +
GET
        2509  +
/
        2510  +
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
        2511  +
host:example.amazonaws.com
        2512  +
        2513  +
host
        2514  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2364   2515   
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
 2365   2516   
new file mode 100644
 2366   2517   
index 0000000..da5c905
 2367         -
-- /dev/null
        2518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2368   2519   
@@ -0,0 +1 @@
        2520  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2369   2521   
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
 2370   2522   
new file mode 100644
 2371   2523   
index 0000000..eeb7a8f
 2372         -
-- /dev/null
        2524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2373   2525   
@@ -0,0 +1,3 @@
        2526  +
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
        2527  +
Host:example.amazonaws.com
        2528  +
 2374   2529   
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
 2375   2530   
new file mode 100644
 2376   2531   
index 0000000..d837e67
 2377         -
-- /dev/null
        2532  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2378   2533   
@@ -0,0 +1,4 @@
        2534  +
AWS4-HMAC-SHA256
        2535  +
20150830T123600Z
        2536  +
20150830/us-east-1/service/aws4_request
        2537  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2379   2538   
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
 2380   2539   
similarity index 100%
 2381   2540   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2382   2541   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2383   2542   
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
 2384   2543   
new file mode 100644
 2385   2544   
index 0000000..0468d80
 2386         -
-- /dev/null
        2545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2387   2546   
@@ -0,0 +1,12 @@
        2547  +
{
        2548  +
    "credentials": {
        2549  +
        "access_key_id": "AKIDEXAMPLE",
        2550  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2551  +
    },
        2552  +
    "expiration_in_seconds": 3600,
        2553  +
    "normalize": true,
        2554  +
    "region": "us-east-1",
        2555  +
    "service": "service",
        2556  +
    "sign_body": false,
        2557  +
    "timestamp": "2015-08-30T12:36:00Z"
        2558  +
}
              \
 No newline at end of file
 2388   2559   
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
 2389   2560   
similarity index 100%
 2390   2561   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2391   2562   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2392   2563   
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
 2393   2564   
new file mode 100644
 2394   2565   
index 0000000..19a2cc9
 2395         -
-- /dev/null
        2566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2396   2567   
@@ -0,0 +1 @@
        2568  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2397   2569   
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
 2398   2570   
new file mode 100644
 2399   2571   
index 0000000..acb13ee
 2400         -
-- /dev/null
        2572  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2401   2573   
@@ -0,0 +1,5 @@
        2574  +
GET /?ሴ=bar HTTP/1.1
        2575  +
Host:example.amazonaws.com
        2576  +
X-Amz-Date:20150830T123600Z
        2577  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2578  +
 2402   2579   
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
 2403   2580   
similarity index 100%
 2404   2581   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2405   2582   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2406   2583   
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
 2407   2584   
new file mode 100644
 2408   2585   
index 0000000..92cee62
 2409         -
-- /dev/null
        2586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2410   2587   
@@ -0,0 +1,7 @@
        2588  +
GET
        2589  +
/
        2590  +
%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
        2591  +
host:example.amazonaws.com
        2592  +
        2593  +
host
        2594  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2411   2595   
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
 2412   2596   
new file mode 100644
 2413   2597   
index 0000000..c9e49de
 2414         -
-- /dev/null
        2598  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2415   2599   
@@ -0,0 +1 @@
        2600  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2416   2601   
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
 2417   2602   
new file mode 100644
 2418   2603   
index 0000000..8f4d8d0
 2419         -
-- /dev/null
        2604  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2420   2605   
@@ -0,0 +1,3 @@
        2606  +
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
        2607  +
Host:example.amazonaws.com
        2608  +
 2421   2609   
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
 2422   2610   
new file mode 100644
 2423   2611   
index 0000000..a6181dc
 2424         -
-- /dev/null
        2612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2425   2613   
@@ -0,0 +1,4 @@
        2614  +
AWS4-HMAC-SHA256
        2615  +
20150830T123600Z
        2616  +
20150830/us-east-1/service/aws4_request
        2617  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2426   2618   
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
 2427   2619   
similarity index 64%
 2428   2620   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2429   2621   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2430   2622   
index cc2757e..aff333a 100644
 2431         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2432   2624   
@@ -1,3 +1,2 @@
 2433   2625   
GET /?ሴ=bar HTTP/1.1
 2434   2626   
Host:example.amazonaws.com
 2435         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2436   2627   
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
 2437   2628   
similarity index 99%
 2438   2629   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2439   2630   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2440   2631   
index a457c8a..a334e18 100644
 2441   2632   
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
 2442   2633   
new file mode 100644
 2443   2634   
index 0000000..ccacdeb
 2444         -
-- /dev/null
        2635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2445   2636   
@@ -0,0 +1,9 @@
        2637  +
GET
        2638  +
/
        2639  +
        2640  +
host:example.amazonaws.com
        2641  +
x-amz-date:20150830T123600Z
        2642  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2643  +
        2644  +
host;x-amz-date;x-amz-security-token
        2645  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2446   2646   
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
 2447   2647   
new file mode 100644
 2448   2648   
index 0000000..083e30d
 2449         -
-- /dev/null
        2649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2450   2650   
@@ -0,0 +1 @@
        2651  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2451   2652   
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
 2452   2653   
new file mode 100644
 2453   2654   
index 0000000..5287932
 2454         -
-- /dev/null
        2655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2455   2656   
@@ -0,0 +1,6 @@
        2657  +
GET / HTTP/1.1
        2658  +
Host:example.amazonaws.com
        2659  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2660  +
X-Amz-Date:20150830T123600Z
        2661  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2662  +
 2456   2663   
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
 2457   2664   
new file mode 100644
 2458   2665   
index 0000000..742b880
 2459         -
-- /dev/null
        2666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2460   2667   
@@ -0,0 +1,4 @@
        2668  +
AWS4-HMAC-SHA256
        2669  +
20150830T123600Z
        2670  +
20150830/us-east-1/service/aws4_request
        2671  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2461   2672   
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
 2462   2673   
new file mode 100644
 2463   2674   
index 0000000..5e75179
 2464         -
-- /dev/null
        2675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2465   2676   
@@ -0,0 +1,7 @@
        2677  +
GET
        2678  +
/
        2679  +
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
        2680  +
host:example.amazonaws.com
        2681  +
        2682  +
host
        2683  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2466   2684   
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
 2467   2685   
new file mode 100644
 2468   2686   
index 0000000..50b947f
 2469         -
-- /dev/null
        2687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2470   2688   
@@ -0,0 +1 @@
        2689  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2471   2690   
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
 2472   2691   
new file mode 100644
 2473   2692   
index 0000000..aee910b
 2474         -
-- /dev/null
        2693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2475   2694   
@@ -0,0 +1,3 @@
        2695  +
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
        2696  +
Host:example.amazonaws.com
        2697  +
 2476   2698   
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
 2477   2699   
new file mode 100644
 2478   2700   
index 0000000..04a6c17
 2479         -
-- /dev/null
        2701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2480   2702   
@@ -0,0 +1,4 @@
        2703  +
AWS4-HMAC-SHA256
        2704  +
20150830T123600Z
        2705  +
20150830/us-east-1/service/aws4_request
        2706  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2481   2707   
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
 2482   2708   
similarity index 100%
 2483   2709   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2484   2710   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2485   2711   
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
 2486   2712   
new file mode 100644
 2487   2713   
index 0000000..0468d80
 2488         -
-- /dev/null
        2714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2489   2715   
@@ -0,0 +1,12 @@
        2716  +
{
        2717  +
    "credentials": {
        2718  +
        "access_key_id": "AKIDEXAMPLE",
        2719  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2720  +
    },
        2721  +
    "expiration_in_seconds": 3600,
        2722  +
    "normalize": true,
        2723  +
    "region": "us-east-1",
        2724  +
    "service": "service",
        2725  +
    "sign_body": false,
        2726  +
    "timestamp": "2015-08-30T12:36:00Z"
        2727  +
}
              \
 No newline at end of file
 2490   2728   
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
 2491   2729   
similarity index 100%
 2492   2730   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2493   2731   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2494   2732   
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
 2495   2733   
new file mode 100644
 2496   2734   
index 0000000..87f295f
 2497         -
-- /dev/null
        2735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2498   2736   
@@ -0,0 +1 @@
        2737  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2499   2738   
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
 2500   2739   
new file mode 100644
 2501   2740   
index 0000000..36b86e7
 2502         -
-- /dev/null
        2741  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2503   2742   
@@ -0,0 +1,5 @@
        2743  +
GET / HTTP/1.1
        2744  +
Host:example.amazonaws.com
        2745  +
X-Amz-Date:20150830T123600Z
        2746  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2747  +
 2504   2748   
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
 2505   2749   
similarity index 100%
 2506   2750   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2507   2751   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2508   2752   
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
 2509   2753   
new file mode 100644
 2510   2754   
index 0000000..fb2420d
 2511         -
-- /dev/null
        2755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2512   2756   
@@ -0,0 +1,7 @@
        2757  +
GET
        2758  +
/
        2759  +
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
        2760  +
host:example.amazonaws.com
        2761  +
        2762  +
host
        2763  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2513   2764   
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
 2514   2765   
new file mode 100644
 2515   2766   
index 0000000..da5c905
 2516         -
-- /dev/null
        2767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2517   2768   
@@ -0,0 +1 @@
        2769  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2518   2770   
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
 2519   2771   
new file mode 100644
 2520   2772   
index 0000000..eeb7a8f
 2521         -
-- /dev/null
        2773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2522   2774   
@@ -0,0 +1,3 @@
        2775  +
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
        2776  +
Host:example.amazonaws.com
        2777  +
 2523   2778   
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
 2524   2779   
new file mode 100644
 2525   2780   
index 0000000..d837e67
 2526         -
-- /dev/null
        2781  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2527   2782   
@@ -0,0 +1,4 @@
        2783  +
AWS4-HMAC-SHA256
        2784  +
20150830T123600Z
        2785  +
20150830/us-east-1/service/aws4_request
        2786  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2528   2787   
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
 2529   2788   
similarity index 100%
 2530   2789   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2531   2790   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2532   2791   
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
 2533   2792   
new file mode 100644
 2534   2793   
index 0000000..0468d80
 2535         -
-- /dev/null
        2794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2536   2795   
@@ -0,0 +1,12 @@
        2796  +
{
        2797  +
    "credentials": {
        2798  +
        "access_key_id": "AKIDEXAMPLE",
        2799  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2800  +
    },
        2801  +
    "expiration_in_seconds": 3600,
        2802  +
    "normalize": true,
        2803  +
    "region": "us-east-1",
        2804  +
    "service": "service",
        2805  +
    "sign_body": false,
        2806  +
    "timestamp": "2015-08-30T12:36:00Z"
        2807  +
}
              \
 No newline at end of file
 2537   2808   
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
 2538   2809   
similarity index 100%
 2539   2810   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2540   2811   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2541   2812   
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
 2542   2813   
new file mode 100644
 2543   2814   
index 0000000..629487f
 2544         -
-- /dev/null
        2815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2545   2816   
@@ -0,0 +1 @@
        2817  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2546   2818   
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
 2547   2819   
new file mode 100644
 2548   2820   
index 0000000..0d99b1c
 2549         -
-- /dev/null
        2821  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2550   2822   
@@ -0,0 +1,5 @@
        2823  +
POST / HTTP/1.1
        2824  +
Host:example.amazonaws.com
        2825  +
X-Amz-Date:20150830T123600Z
        2826  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2827  +
 2551   2828   
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
 2552   2829   
similarity index 100%
 2553   2830   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2554   2831   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2555   2832   
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
 2556   2833   
new file mode 100644
 2557   2834   
index 0000000..d3341e7
 2558         -
-- /dev/null
        2835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2559   2836   
@@ -0,0 +1,7 @@
        2837  +
POST
        2838  +
/
        2839  +
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
        2840  +
host:example.amazonaws.com
        2841  +
        2842  +
host
        2843  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2560   2844   
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
 2561   2845   
new file mode 100644
 2562   2846   
index 0000000..79f7e0d
 2563         -
-- /dev/null
        2847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2564   2848   
@@ -0,0 +1 @@
        2849  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2565   2850   
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
 2566   2851   
new file mode 100644
 2567   2852   
index 0000000..94f1b21
 2568         -
-- /dev/null
        2853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2569   2854   
@@ -0,0 +1,3 @@
        2855  +
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
        2856  +
Host:example.amazonaws.com
        2857  +
 2570   2858   
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
 2571   2859   
new file mode 100644
 2572   2860   
index 0000000..e8f335b
 2573         -
-- /dev/null
        2861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2574   2862   
@@ -0,0 +1,4 @@
        2863  +
AWS4-HMAC-SHA256
        2864  +
20150830T123600Z
        2865  +
20150830/us-east-1/service/aws4_request
        2866  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2575   2867   
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
 2576   2868   
similarity index 100%
 2577   2869   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2578   2870   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2579   2871   
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
 2580   2872   
new file mode 100644
 2581   2873   
index 0000000..0468d80
 2582         -
-- /dev/null
        2874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2583   2875   
@@ -0,0 +1,12 @@
        2876  +
{
        2877  +
    "credentials": {
        2878  +
        "access_key_id": "AKIDEXAMPLE",
        2879  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2880  +
    },
        2881  +
    "expiration_in_seconds": 3600,
        2882  +
    "normalize": true,
        2883  +
    "region": "us-east-1",
        2884  +
    "service": "service",
        2885  +
    "sign_body": false,
        2886  +
    "timestamp": "2015-08-30T12:36:00Z"
        2887  +
}
              \
 No newline at end of file
 2584   2888   
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
 2585   2889   
similarity index 100%
 2586   2890   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2587   2891   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2588   2892   
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
 2589   2893   
new file mode 100644
 2590   2894   
index 0000000..e4e6428
 2591         -
-- /dev/null
        2895  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2592   2896   
@@ -0,0 +1 @@
        2897  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2593   2898   
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
 2594   2899   
new file mode 100644
 2595   2900   
index 0000000..e3778f5
 2596         -
-- /dev/null
        2901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2597   2902   
@@ -0,0 +1,6 @@
        2903  +
POST / HTTP/1.1
        2904  +
Host:example.amazonaws.com
        2905  +
My-Header1:value1
        2906  +
X-Amz-Date:20150830T123600Z
        2907  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2908  +
 2598   2909   
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
 2599   2910   
similarity index 100%
 2600   2911   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2601   2912   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2602   2913   
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
 2603   2914   
new file mode 100644
 2604   2915   
index 0000000..bd7c937
 2605         -
-- /dev/null
        2916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2606   2917   
@@ -0,0 +1,8 @@
        2918  +
POST
        2919  +
/
        2920  +
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
        2921  +
host:example.amazonaws.com
        2922  +
my-header1:value1
        2923  +
        2924  +
host;my-header1
        2925  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2607   2926   
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
 2608   2927   
new file mode 100644
 2609   2928   
index 0000000..0416f13
 2610         -
-- /dev/null
        2929  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2611   2930   
@@ -0,0 +1 @@
        2931  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2612   2932   
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
 2613   2933   
new file mode 100644
 2614   2934   
index 0000000..5e6522f
 2615         -
-- /dev/null
        2935  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2616   2936   
@@ -0,0 +1,4 @@
        2937  +
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
        2938  +
Host:example.amazonaws.com
        2939  +
My-Header1:value1
        2940  +
 2617   2941   
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
 2618   2942   
new file mode 100644
 2619   2943   
index 0000000..d06d1df
 2620         -
-- /dev/null
        2944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2621   2945   
@@ -0,0 +1,4 @@
        2946  +
AWS4-HMAC-SHA256
        2947  +
20150830T123600Z
        2948  +
20150830/us-east-1/service/aws4_request
        2949  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2622   2950   
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
 2623   2951   
similarity index 100%
 2624   2952   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2625   2953   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2626   2954   
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
 2627   2955   
new file mode 100644
 2628   2956   
index 0000000..0468d80
 2629         -
-- /dev/null
        2957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2630   2958   
@@ -0,0 +1,12 @@
        2959  +
{
        2960  +
    "credentials": {
        2961  +
        "access_key_id": "AKIDEXAMPLE",
        2962  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2963  +
    },
        2964  +
    "expiration_in_seconds": 3600,
        2965  +
    "normalize": true,
        2966  +
    "region": "us-east-1",
        2967  +
    "service": "service",
        2968  +
    "sign_body": false,
        2969  +
    "timestamp": "2015-08-30T12:36:00Z"
        2970  +
}
              \
 No newline at end of file
 2631   2971   
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
 2632   2972   
similarity index 100%
 2633   2973   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2634   2974   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2635   2975   
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
 2636   2976   
new file mode 100644
 2637   2977   
index 0000000..bb3809c
 2638         -
-- /dev/null
        2978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2639   2979   
@@ -0,0 +1 @@
        2980  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2640   2981   
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
 2641   2982   
new file mode 100644
 2642   2983   
index 0000000..10f6761
 2643         -
-- /dev/null
        2984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2644   2985   
@@ -0,0 +1,6 @@
        2986  +
POST / HTTP/1.1
        2987  +
Host:example.amazonaws.com
        2988  +
My-Header1:VALUE1
        2989  +
X-Amz-Date:20150830T123600Z
        2990  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        2991  +
 2645   2992   
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
 2646   2993   
similarity index 100%
 2647   2994   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2648   2995   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2649   2996   
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
 2650   2997   
new file mode 100644
 2651   2998   
index 0000000..f84856f
 2652         -
-- /dev/null
        2999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2653   3000   
@@ -0,0 +1,8 @@
        3001  +
POST
        3002  +
/
        3003  +
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
        3004  +
host:example.amazonaws.com
        3005  +
my-header1:VALUE1
        3006  +
        3007  +
host;my-header1
        3008  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2654   3009   
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
 2655   3010   
new file mode 100644
 2656   3011   
index 0000000..a9d3cac
 2657         -
-- /dev/null
        3012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2658   3013   
@@ -0,0 +1 @@
        3014  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2659   3015   
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
 2660   3016   
new file mode 100644
 2661   3017   
index 0000000..cf96c7c
 2662         -
-- /dev/null
        3018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2663   3019   
@@ -0,0 +1,4 @@
        3020  +
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
        3021  +
Host:example.amazonaws.com
        3022  +
My-Header1:VALUE1
        3023  +
 2664   3024   
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
 2665   3025   
new file mode 100644
 2666   3026   
index 0000000..47ef566
 2667         -
-- /dev/null
        3027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2668   3028   
@@ -0,0 +1,4 @@
        3029  +
AWS4-HMAC-SHA256
        3030  +
20150830T123600Z
        3031  +
20150830/us-east-1/service/aws4_request
        3032  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2669   3033   
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
 2670   3034   
similarity index 100%
 2671   3035   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2672   3036   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2673   3037   
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
 2674   3038   
similarity index 100%
 2675   3039   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2676   3040   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2677   3041   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2678   3042   
similarity index 100%
 2679   3043   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-after/post-sts-header-after.creq
 2680   3044   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2681   3045   
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
 2682   3046   
new file mode 100644
 2683   3047   
index 0000000..629487f
 2684         -
-- /dev/null
        3048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2685   3049   
@@ -0,0 +1 @@
        3050  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2686   3051   
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
 2687   3052   
similarity index 67%
 2688   3053   
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
 2689   3054   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2690   3055   
index 291ed07..f96ff9e 100644
 2691         -
-- 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
        3056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2692   3057   
@@ -1,5 +1,6 @@
 2693   3058   
POST / HTTP/1.1
 2694   3059   
Host:example.amazonaws.com
 2695         -
X-Amz-Date:20150830T123600Z
 2696   3060   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2697         -
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
        3061  +
X-Amz-Date:20150830T123600Z
        3062  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3063  +
 2698   3064   
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
 2699   3065   
similarity index 100%
 2700   3066   
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
 2701   3067   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2702   3068   
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
 2703   3069   
new file mode 100644
 2704   3070   
index 0000000..d3341e7
 2705         -
-- /dev/null
        3071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2706   3072   
@@ -0,0 +1,7 @@
        3073  +
POST
        3074  +
/
        3075  +
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
        3076  +
host:example.amazonaws.com
        3077  +
        3078  +
host
        3079  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2707   3080   
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
 2708   3081   
new file mode 100644
 2709   3082   
index 0000000..79f7e0d
 2710         -
-- /dev/null
        3083  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2711   3084   
@@ -0,0 +1 @@
        3085  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2712   3086   
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
 2713   3087   
new file mode 100644
 2714   3088   
index 0000000..4983268
 2715         -
-- /dev/null
        3089  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2716   3090   
@@ -0,0 +1,3 @@
        3091  +
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
        3092  +
Host:example.amazonaws.com
        3093  +
 2717   3094   
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
 2718   3095   
new file mode 100644
 2719   3096   
index 0000000..e8f335b
 2720         -
-- /dev/null
        3097  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2721   3098   
@@ -0,0 +1,4 @@
        3099  +
AWS4-HMAC-SHA256
        3100  +
20150830T123600Z
        3101  +
20150830/us-east-1/service/aws4_request
        3102  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2722   3103   
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
 2723   3104   
similarity index 100%
 2724   3105   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2725   3106   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2726   3107   
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
 2727   3108   
similarity index 100%
 2728   3109   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2729   3110   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2730   3111   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2731   3112   
similarity index 100%
 2732   3113   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.creq
 2733   3114   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2734   3115   
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
 2735   3116   
new file mode 100644
 2736   3117   
index 0000000..85a7c29
 2737         -
-- /dev/null
        3118  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2738   3119   
@@ -0,0 +1 @@
        3120  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2739   3121   
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
 2740   3122   
similarity index 65%
 2741   3123   
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
 2742   3124   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2743   3125   
index 37b2f04..4d0b143 100644
 2744         -
-- 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
        3126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2745   3127   
@@ -1,5 +1,6 @@
 2746   3128   
POST / HTTP/1.1
 2747   3129   
Host:example.amazonaws.com
 2748         -
X-Amz-Date:20150830T123600Z
 2749   3130   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2750         -
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
        3131  +
X-Amz-Date:20150830T123600Z
        3132  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3133  +
 2751   3134   
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
 2752   3135   
similarity index 100%
 2753   3136   
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
 2754   3137   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2755   3138   
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
 2756   3139   
new file mode 100644
 2757   3140   
index 0000000..57a7bc3
 2758         -
-- /dev/null
        3141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2759   3142   
@@ -0,0 +1,7 @@
        3143  +
POST
        3144  +
/
        3145  +
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
        3146  +
host:example.amazonaws.com
        3147  +
        3148  +
host
        3149  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2760   3150   
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
 2761   3151   
new file mode 100644
 2762   3152   
index 0000000..eb905d2
 2763         -
-- /dev/null
        3153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2764   3154   
@@ -0,0 +1 @@
        3155  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2765   3156   
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
 2766   3157   
new file mode 100644
 2767   3158   
index 0000000..1d80ec0
 2768         -
-- /dev/null
        3159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2769   3160   
@@ -0,0 +1,3 @@
        3161  +
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
        3162  +
Host:example.amazonaws.com
        3163  +
 2770   3164   
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
 2771   3165   
new file mode 100644
 2772   3166   
index 0000000..bd0239a
 2773         -
-- /dev/null
        3167  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2774   3168   
@@ -0,0 +1,4 @@
        3169  +
AWS4-HMAC-SHA256
        3170  +
20150830T123600Z
        3171  +
20150830/us-east-1/service/aws4_request
        3172  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2775   3173   
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
 2776   3174   
similarity index 100%
 2777   3175   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2778   3176   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2779   3177   
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
 2780   3178   
new file mode 100644
 2781   3179   
index 0000000..0468d80
 2782         -
-- /dev/null
        3180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2783   3181   
@@ -0,0 +1,12 @@
        3182  +
{
        3183  +
    "credentials": {
        3184  +
        "access_key_id": "AKIDEXAMPLE",
        3185  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3186  +
    },
        3187  +
    "expiration_in_seconds": 3600,
        3188  +
    "normalize": true,
        3189  +
    "region": "us-east-1",
        3190  +
    "service": "service",
        3191  +
    "sign_body": false,
        3192  +
    "timestamp": "2015-08-30T12:36:00Z"
        3193  +
}
              \
 No newline at end of file
 2784   3194   
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
 2785   3195   
similarity index 100%
 2786   3196   
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
 2787   3197   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2788   3198   
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
 2789   3199   
new file mode 100644
 2790   3200   
index 0000000..80ed433
 2791         -
-- /dev/null
        3201  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2792   3202   
@@ -0,0 +1 @@
        3203  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2793   3204   
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
 2794   3205   
new file mode 100644
 2795   3206   
index 0000000..4e614f8
 2796         -
-- /dev/null
        3207  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2797   3208   
@@ -0,0 +1,5 @@
        3209  +
POST /?Param1=value1 HTTP/1.1
        3210  +
Host:example.amazonaws.com
        3211  +
X-Amz-Date:20150830T123600Z
        3212  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3213  +
 2798   3214   
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
 2799   3215   
similarity index 100%
 2800   3216   
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
 2801   3217   
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
 2802   3218   
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
 2803   3219   
new file mode 100644
 2804   3220   
index 0000000..be66403
 2805         -
-- /dev/null
        3221  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2806   3222   
@@ -0,0 +1,7 @@
        3223  +
POST
        3224  +
/
        3225  +
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
        3226  +
host:example.amazonaws.com
        3227  +
        3228  +
host
        3229  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2807   3230   
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
 2808   3231   
new file mode 100644
 2809   3232   
index 0000000..20fd32b
 2810         -
-- /dev/null
        3233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2811   3234   
@@ -0,0 +1 @@
        3235  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2812   3236   
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
 2813   3237   
new file mode 100644
 2814   3238   
index 0000000..d1148d0
 2815         -
-- /dev/null
        3239  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2816   3240   
@@ -0,0 +1,3 @@
        3241  +
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
        3242  +
Host:example.amazonaws.com
        3243  +
 2817   3244   
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
 2818   3245   
new file mode 100644
 2819   3246   
index 0000000..1a77103
 2820         -
-- /dev/null
        3247  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2821   3248   
@@ -0,0 +1,4 @@
        3249  +
AWS4-HMAC-SHA256
        3250  +
20150830T123600Z
        3251  +
20150830/us-east-1/service/aws4_request
        3252  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2822   3253   
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
 2823   3254   
similarity index 100%
 2824   3255   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2825   3256   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2826   3257   
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
 2827   3258   
new file mode 100644
 2828   3259   
index 0000000..0468d80
 2829         -
-- /dev/null
        3260  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2830   3261   
@@ -0,0 +1,12 @@
        3262  +
{
        3263  +
    "credentials": {
        3264  +
        "access_key_id": "AKIDEXAMPLE",
        3265  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3266  +
    },
        3267  +
    "expiration_in_seconds": 3600,
        3268  +
    "normalize": true,
        3269  +
    "region": "us-east-1",
        3270  +
    "service": "service",
        3271  +
    "sign_body": false,
        3272  +
    "timestamp": "2015-08-30T12:36:00Z"
        3273  +
}
              \
 No newline at end of file
 2831   3274   
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
 2832   3275   
similarity index 100%
 2833   3276   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2834   3277   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2835   3278   
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
 2836   3279   
new file mode 100644
 2837   3280   
index 0000000..80ed433
 2838         -
-- /dev/null
        3281  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2839   3282   
@@ -0,0 +1 @@
        3283  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2840   3284   
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
 2841   3285   
new file mode 100644
 2842   3286   
index 0000000..4e614f8
 2843         -
-- /dev/null
        3287  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2844   3288   
@@ -0,0 +1,5 @@
        3289  +
POST /?Param1=value1 HTTP/1.1
        3290  +
Host:example.amazonaws.com
        3291  +
X-Amz-Date:20150830T123600Z
        3292  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3293  +
 2845   3294   
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
 2846   3295   
similarity index 100%
 2847   3296   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2848   3297   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2849   3298   
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
 2850   3299   
new file mode 100644
 2851   3300   
index 0000000..be66403
 2852         -
-- /dev/null
        3301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2853   3302   
@@ -0,0 +1,7 @@
        3303  +
POST
        3304  +
/
        3305  +
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
        3306  +
host:example.amazonaws.com
        3307  +
        3308  +
host
        3309  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2854   3310   
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
 2855   3311   
new file mode 100644
 2856   3312   
index 0000000..20fd32b
 2857         -
-- /dev/null
        3313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2858   3314   
@@ -0,0 +1 @@
        3315  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2859   3316   
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
 2860   3317   
new file mode 100644
 2861   3318   
index 0000000..d1148d0
 2862         -
-- /dev/null
        3319  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2863   3320   
@@ -0,0 +1,3 @@
        3321  +
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
        3322  +
Host:example.amazonaws.com
        3323  +
 2864   3324   
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
 2865   3325   
new file mode 100644
 2866   3326   
index 0000000..1a77103
 2867         -
-- /dev/null
        3327  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2868   3328   
@@ -0,0 +1,4 @@
        3329  +
AWS4-HMAC-SHA256
        3330  +
20150830T123600Z
        3331  +
20150830/us-east-1/service/aws4_request
        3332  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2869   3333   
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
 2870   3334   
similarity index 100%
 2871   3335   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2872   3336   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2873   3337   
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
 2874   3338   
new file mode 100644
 2875   3339   
index 0000000..0468d80
 2876         -
-- /dev/null
        3340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2877   3341   
@@ -0,0 +1,12 @@
        3342  +
{
        3343  +
    "credentials": {
        3344  +
        "access_key_id": "AKIDEXAMPLE",
        3345  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3346  +
    },
        3347  +
    "expiration_in_seconds": 3600,
        3348  +
    "normalize": true,
        3349  +
    "region": "us-east-1",
        3350  +
    "service": "service",
        3351  +
    "sign_body": false,
        3352  +
    "timestamp": "2015-08-30T12:36:00Z"
        3353  +
}
              \
 No newline at end of file
 2878   3354   
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
 2879   3355   
similarity index 100%
 2880   3356   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2881   3357   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2882   3358   
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
 2883   3359   
new file mode 100644
 2884   3360   
index 0000000..629487f
 2885         -
-- /dev/null
        3361  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2886   3362   
@@ -0,0 +1 @@
        3363  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2887   3364   
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
 2888   3365   
new file mode 100644
 2889   3366   
index 0000000..0d99b1c
 2890         -
-- /dev/null
        3367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2891   3368   
@@ -0,0 +1,5 @@
        3369  +
POST / HTTP/1.1
        3370  +
Host:example.amazonaws.com
        3371  +
X-Amz-Date:20150830T123600Z
        3372  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3373  +
 2892   3374   
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
 2893   3375   
similarity index 100%
 2894   3376   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 2895   3377   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 2896   3378   
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
 2897   3379   
new file mode 100644
 2898   3380   
index 0000000..d3341e7
 2899         -
-- /dev/null
        3381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 2900   3382   
@@ -0,0 +1,7 @@
        3383  +
POST
        3384  +
/
        3385  +
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
        3386  +
host:example.amazonaws.com
        3387  +
        3388  +
host
        3389  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2901   3390   
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
 2902   3391   
new file mode 100644
 2903   3392   
index 0000000..79f7e0d
 2904         -
-- /dev/null
        3393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 2905   3394   
@@ -0,0 +1 @@
        3395  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2906   3396   
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
 2907   3397   
new file mode 100644
 2908   3398   
index 0000000..94f1b21
 2909         -
-- /dev/null
        3399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 2910   3400   
@@ -0,0 +1,3 @@
        3401  +
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
        3402  +
Host:example.amazonaws.com
        3403  +
 2911   3404   
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
 2912   3405   
new file mode 100644
 2913   3406   
index 0000000..e8f335b
 2914         -
-- /dev/null
        3407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 2915   3408   
@@ -0,0 +1,4 @@
        3409  +
AWS4-HMAC-SHA256
        3410  +
20150830T123600Z
        3411  +
20150830/us-east-1/service/aws4_request
        3412  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2916   3413   
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
 2917   3414   
similarity index 100%
 2918   3415   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 2919   3416   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 2920   3417   
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
 2921   3418   
similarity index 99%
 2922   3419   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 2923   3420   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2924   3421   
index fc4bce6..0db1df1 100644
 2925   3422   
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
 2926   3423   
new file mode 100644
 2927   3424   
index 0000000..c218fdf
 2928         -
-- /dev/null
        3425  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 2929   3426   
@@ -0,0 +1,11 @@
        3427  +
POST
        3428  +
/
        3429  +
        3430  +
content-length:13
        3431  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3432  +
host:example.amazonaws.com
        3433  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3434  +
x-amz-date:20150830T123600Z
        3435  +
        3436  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3437  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2930   3438   
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
 2931   3439   
new file mode 100644
 2932   3440   
index 0000000..836aa8b
 2933         -
-- /dev/null
        3441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 2934   3442   
@@ -0,0 +1 @@
        3443  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 2935   3444   
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
 2936   3445   
new file mode 100644
 2937   3446   
index 0000000..9262d53
 2938         -
-- /dev/null
        3447  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 2939   3448   
@@ -0,0 +1,9 @@
        3449  +
POST / HTTP/1.1
        3450  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3451  +
Host:example.amazonaws.com
        3452  +
Content-Length:13
        3453  +
X-Amz-Date:20150830T123600Z
        3454  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3455  +
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
        3456  +
        3457  +
Param1=value1
              \
 No newline at end of file
 2940   3458   
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
 2941   3459   
new file mode 100644
 2942   3460   
index 0000000..ddbdccc
 2943         -
-- /dev/null
        3461  +
++ 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
 2944   3462   
@@ -0,0 +1,4 @@
        3463  +
AWS4-HMAC-SHA256
        3464  +
20150830T123600Z
        3465  +
20150830/us-east-1/service/aws4_request
        3466  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 2945   3467   
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
 2946   3468   
new file mode 100644
 2947   3469   
index 0000000..596a579
 2948         -
-- /dev/null
        3470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 2949   3471   
@@ -0,0 +1,9 @@
        3472  +
POST
        3473  +
/
        3474  +
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
        3475  +
content-length:13
        3476  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3477  +
host:example.amazonaws.com
        3478  +
        3479  +
content-length;content-type;host
        3480  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2950   3481   
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
 2951   3482   
new file mode 100644
 2952   3483   
index 0000000..bc85cd8
 2953         -
-- /dev/null
        3484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 2954   3485   
@@ -0,0 +1 @@
        3486  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 2955   3487   
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
 2956   3488   
new file mode 100644
 2957   3489   
index 0000000..16b59e5
 2958         -
-- /dev/null
        3490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 2959   3491   
@@ -0,0 +1,6 @@
        3492  +
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
        3493  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3494  +
Host:example.amazonaws.com
        3495  +
Content-Length:13
        3496  +
        3497  +
Param1=value1
              \
 No newline at end of file
 2960   3498   
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
 2961   3499   
new file mode 100644
 2962   3500   
index 0000000..50074af
 2963         -
-- /dev/null
        3501  +
++ 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
 2964   3502   
@@ -0,0 +1,4 @@
        3503  +
AWS4-HMAC-SHA256
        3504  +
20150830T123600Z
        3505  +
20150830/us-east-1/service/aws4_request
        3506  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 2965   3507   
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
 2966   3508   
similarity index 89%
 2967   3509   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 2968   3510   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2969   3511   
index b711c25..8289eaa 100644
 2970   3512   
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
 2971   3513   
similarity index 99%
 2972   3514   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 2973   3515   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 2974   3516   
index fc4bce6..0db1df1 100644
 2975   3517   
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
 2976   3518   
new file mode 100644
 2977   3519   
index 0000000..4d116a5
 2978         -
-- /dev/null
        3520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 2979   3521   
@@ -0,0 +1,11 @@
        3522  +
POST
        3523  +
/
        3524  +
        3525  +
content-length:13
        3526  +
content-type:application/x-www-form-urlencoded
        3527  +
host:example.amazonaws.com
        3528  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3529  +
x-amz-date:20150830T123600Z
        3530  +
        3531  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3532  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2980   3533   
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
 2981   3534   
new file mode 100644
 2982   3535   
index 0000000..0d2ac37
 2983         -
-- /dev/null
        3536  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 2984   3537   
@@ -0,0 +1 @@
        3538  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 2985   3539   
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
 2986   3540   
new file mode 100644
 2987   3541   
index 0000000..bd5e49c
 2988         -
-- /dev/null
        3542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 2989   3543   
@@ -0,0 +1,9 @@
        3544  +
POST / HTTP/1.1
        3545  +
Content-Type:application/x-www-form-urlencoded
        3546  +
Host:example.amazonaws.com
        3547  +
Content-Length:13
        3548  +
X-Amz-Date:20150830T123600Z
        3549  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3550  +
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
        3551  +
        3552  +
Param1=value1
              \
 No newline at end of file
 2990   3553   
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
 2991   3554   
new file mode 100644
 2992   3555   
index 0000000..f1c599c
 2993         -
-- /dev/null
        3556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 2994   3557   
@@ -0,0 +1,4 @@
        3558  +
AWS4-HMAC-SHA256
        3559  +
20150830T123600Z
        3560  +
20150830/us-east-1/service/aws4_request
        3561  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 2995   3562   
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
 2996   3563   
new file mode 100644
 2997   3564   
index 0000000..1fc1bb7
 2998         -
-- /dev/null
        3565  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 2999   3566   
@@ -0,0 +1,9 @@
        3567  +
POST
        3568  +
/
        3569  +
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
        3570  +
content-length:13
        3571  +
content-type:application/x-www-form-urlencoded
        3572  +
host:example.amazonaws.com
        3573  +
        3574  +
content-length;content-type;host
        3575  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3000   3576   
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
 3001   3577   
new file mode 100644
 3002   3578   
index 0000000..98c91b3
 3003         -
-- /dev/null
        3579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 3004   3580   
@@ -0,0 +1 @@
        3581  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 3005   3582   
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
 3006   3583   
new file mode 100644
 3007   3584   
index 0000000..055cd7a
 3008         -
-- /dev/null
        3585  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 3009   3586   
@@ -0,0 +1,6 @@
        3587  +
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
        3588  +
Content-Type:application/x-www-form-urlencoded
        3589  +
Host:example.amazonaws.com
        3590  +
Content-Length:13
        3591  +
        3592  +
Param1=value1
              \
 No newline at end of file
 3010   3593   
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
 3011   3594   
new file mode 100644
 3012   3595   
index 0000000..db7fc27
 3013         -
-- /dev/null
        3596  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 3014   3597   
@@ -0,0 +1,4 @@
        3598  +
AWS4-HMAC-SHA256
        3599  +
20150830T123600Z
        3600  +
20150830/us-east-1/service/aws4_request
        3601  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 3015   3602   
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
 3016   3603   
similarity index 88%
 3017   3604   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 3018   3605   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3019   3606   
index 0091102..760b2d3 100644
 3020   3607   
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
 3021   3608   
new file mode 100644
 3022   3609   
index 0000000..0468d80
 3023         -
-- /dev/null
        3610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 3024   3611   
@@ -0,0 +1,12 @@
        3612  +
{
        3613  +
    "credentials": {
        3614  +
        "access_key_id": "AKIDEXAMPLE",
        3615  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3616  +
    },
        3617  +
    "expiration_in_seconds": 3600,
        3618  +
    "normalize": true,
        3619  +
    "region": "us-east-1",
        3620  +
    "service": "service",
        3621  +
    "sign_body": false,
        3622  +
    "timestamp": "2015-08-30T12:36:00Z"
        3623  +
}
              \
 No newline at end of file
 3025   3624   
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
 3026   3625   
similarity index 99%
 3027   3626   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 3028   3627   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3029   3628   
index ccb5f43..1bc448e 100644
 3030   3629   
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
 3031   3630   
new file mode 100644
 3032   3631   
index 0000000..489c182
 3033         -
-- /dev/null
        3632  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 3034   3633   
@@ -0,0 +1 @@
        3634  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 3035   3635   
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
 3036   3636   
new file mode 100644
 3037   3637   
index 0000000..e1b8dbf
 3038         -
-- /dev/null
        3638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 3039   3639   
@@ -0,0 +1,9 @@
        3640  +
GET / HTTP/1.1
        3641  +
Host:example.amazonaws.com
        3642  +
My-Header1:value2
        3643  +
My-Header1:value2
        3644  +
My-Header1:value1
        3645  +
X-Amz-Date:20150830T123600Z
        3646  +
X-Amz-Region-Set:us-east-1
        3647  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3648  +
 3040   3649   
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
 3041   3650   
similarity index 99%
 3042   3651   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 3043   3652   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3044   3653   
index 8783461..bfc4619 100644
 3045   3654   
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
 3046   3655   
new file mode 100644
 3047   3656   
index 0000000..379dcb2
 3048         -
-- /dev/null
        3657  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3049   3658   
@@ -0,0 +1,4 @@
        3659  +
{
        3660  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3661  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3662  +
}
 3050   3663   
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
 3051   3664   
similarity index 99%
 3052   3665   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3053   3666   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3054   3667   
index 9561297..c05c3f5 100644
 3055   3668   
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
 3056   3669   
new file mode 100644
 3057   3670   
index 0000000..de9a4c3
 3058         -
-- /dev/null
        3671  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3059   3672   
@@ -0,0 +1 @@
        3673  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3060   3674   
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
 3061   3675   
new file mode 100644
 3062   3676   
index 0000000..6c6b8c4
 3063         -
-- /dev/null
        3677  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3064   3678   
@@ -0,0 +1,6 @@
        3679  +
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
        3680  +
Host:example.amazonaws.com
        3681  +
My-Header1:value2
        3682  +
My-Header1:value2
        3683  +
My-Header1:value1
        3684  +
 3065   3685   
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
 3066   3686   
similarity index 99%
 3067   3687   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3068   3688   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3069   3689   
index 3140f6f..4eef106 100644
 3070   3690   
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
 3071   3691   
similarity index 78%
 3072   3692   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3073   3693   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3074   3694   
index 08a0364..40455ce 100644
 3075         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3695  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3076   3696   
@@ -1,6 +1,5 @@
 3077   3697   
GET / HTTP/1.1
 3078   3698   
Host:example.amazonaws.com
 3079   3699   
My-Header1:value2
 3080   3700   
My-Header1:value2
 3081   3701   
My-Header1:value1
 3082         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3083   3702   
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
 3084   3703   
new file mode 100644
 3085   3704   
index 0000000..0468d80
 3086         -
-- /dev/null
        3705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3087   3706   
@@ -0,0 +1,12 @@
        3707  +
{
        3708  +
    "credentials": {
        3709  +
        "access_key_id": "AKIDEXAMPLE",
        3710  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3711  +
    },
        3712  +
    "expiration_in_seconds": 3600,
        3713  +
    "normalize": true,
        3714  +
    "region": "us-east-1",
        3715  +
    "service": "service",
        3716  +
    "sign_body": false,
        3717  +
    "timestamp": "2015-08-30T12:36:00Z"
        3718  +
}
              \
 No newline at end of file
 3088   3719   
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
 3089   3720   
new file mode 100644
 3090   3721   
index 0000000..69526cd
 3091         -
-- /dev/null
        3722  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3092   3723   
@@ -0,0 +1,10 @@
        3724  +
GET
        3725  +
/
        3726  +
        3727  +
host:example.amazonaws.com
        3728  +
my-header1:value1 value2 value3
        3729  +
x-amz-date:20150830T123600Z
        3730  +
x-amz-region-set:us-east-1
        3731  +
        3732  +
host;my-header1;x-amz-date;x-amz-region-set
        3733  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3093   3734   
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
 3094   3735   
new file mode 100644
 3095   3736   
index 0000000..d51b4f3
 3096         -
-- /dev/null
        3737  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3097   3738   
@@ -0,0 +1 @@
        3739  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3098   3740   
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
 3099   3741   
new file mode 100644
 3100   3742   
index 0000000..8131420
 3101         -
-- /dev/null
        3743  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3102   3744   
@@ -0,0 +1,9 @@
        3745  +
GET / HTTP/1.1
        3746  +
Host:example.amazonaws.com
        3747  +
My-Header1:value1
        3748  +
  value2
        3749  +
     value3
        3750  +
X-Amz-Date:20150830T123600Z
        3751  +
X-Amz-Region-Set:us-east-1
        3752  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3753  +
 3103   3754   
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
 3104   3755   
new file mode 100644
 3105   3756   
index 0000000..e4d99fa
 3106         -
-- /dev/null
        3757  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3107   3758   
@@ -0,0 +1,4 @@
        3759  +
AWS4-ECDSA-P256-SHA256
        3760  +
20150830T123600Z
        3761  +
20150830/service/aws4_request
        3762  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3108   3763   
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
 3109   3764   
new file mode 100644
 3110   3765   
index 0000000..379dcb2
 3111         -
-- /dev/null
        3766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3112   3767   
@@ -0,0 +1,4 @@
        3768  +
{
        3769  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3770  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3771  +
}
 3113   3772   
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
 3114   3773   
new file mode 100644
 3115   3774   
index 0000000..3c4d52f
 3116         -
-- /dev/null
        3775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3117   3776   
@@ -0,0 +1,8 @@
        3777  +
GET
        3778  +
/
        3779  +
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
        3780  +
host:example.amazonaws.com
        3781  +
my-header1:value1 value2 value3
        3782  +
        3783  +
host;my-header1
        3784  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3118   3785   
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
 3119   3786   
new file mode 100644
 3120   3787   
index 0000000..4e63f9a
 3121         -
-- /dev/null
        3788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3122   3789   
@@ -0,0 +1 @@
        3790  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3123   3791   
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
 3124   3792   
new file mode 100644
 3125   3793   
index 0000000..adf1f09
 3126         -
-- /dev/null
        3794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3127   3795   
@@ -0,0 +1,6 @@
        3796  +
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
        3797  +
Host:example.amazonaws.com
        3798  +
My-Header1:value1
        3799  +
  value2
        3800  +
     value3
        3801  +
 3128   3802   
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
 3129   3803   
new file mode 100644
 3130   3804   
index 0000000..e085407
 3131         -
-- /dev/null
        3805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3132   3806   
@@ -0,0 +1,4 @@
        3807  +
AWS4-ECDSA-P256-SHA256
        3808  +
20150830T123600Z
        3809  +
20150830/service/aws4_request
        3810  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3133   3811   
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
 3134   3812   
new file mode 100644
 3135   3813   
index 0000000..b5026cd
 3136         -
-- /dev/null
        3814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3137   3815   
@@ -0,0 +1,5 @@
        3816  +
GET / HTTP/1.1
        3817  +
Host:example.amazonaws.com
        3818  +
My-Header1:value1
        3819  +
  value2
        3820  +
     value3
 3138   3821   
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
 3139   3822   
new file mode 100644
 3140   3823   
index 0000000..0468d80
 3141         -
-- /dev/null
        3824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3142   3825   
@@ -0,0 +1,12 @@
        3826  +
{
        3827  +
    "credentials": {
        3828  +
        "access_key_id": "AKIDEXAMPLE",
        3829  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3830  +
    },
        3831  +
    "expiration_in_seconds": 3600,
        3832  +
    "normalize": true,
        3833  +
    "region": "us-east-1",
        3834  +
    "service": "service",
        3835  +
    "sign_body": false,
        3836  +
    "timestamp": "2015-08-30T12:36:00Z"
        3837  +
}
              \
 No newline at end of file
 3143   3838   
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
 3144   3839   
similarity index 99%
 3145   3840   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3146   3841   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3147   3842   
index 9375193..533afdb 100644
 3148   3843   
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
 3149   3844   
new file mode 100644
 3150   3845   
index 0000000..057b426
 3151         -
-- /dev/null
        3846  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3152   3847   
@@ -0,0 +1 @@
        3848  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3153   3849   
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
 3154   3850   
new file mode 100644
 3155   3851   
index 0000000..4e4ccf0
 3156         -
-- /dev/null
        3852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3157   3853   
@@ -0,0 +1,10 @@
        3854  +
GET / HTTP/1.1
        3855  +
Host:example.amazonaws.com
        3856  +
My-Header1:value4
        3857  +
My-Header1:value1
        3858  +
My-Header1:value3
        3859  +
My-Header1:value2
        3860  +
X-Amz-Date:20150830T123600Z
        3861  +
X-Amz-Region-Set:us-east-1
        3862  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        3863  +
 3158   3864   
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
 3159   3865   
similarity index 99%
 3160   3866   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3161   3867   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3162   3868   
index 6400baf..e68c952 100644
 3163   3869   
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
 3164   3870   
new file mode 100644
 3165   3871   
index 0000000..379dcb2
 3166         -
-- /dev/null
        3872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3167   3873   
@@ -0,0 +1,4 @@
        3874  +
{
        3875  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3876  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3877  +
}
 3168   3878   
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
 3169   3879   
similarity index 99%
 3170   3880   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3171   3881   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3172   3882   
index ecf494a..68450fe 100644
 3173   3883   
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
 3174   3884   
new file mode 100644
 3175   3885   
index 0000000..9df2eb3
 3176         -
-- /dev/null
        3886  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3177   3887   
@@ -0,0 +1 @@
        3888  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3178   3889   
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
 3179   3890   
new file mode 100644
 3180   3891   
index 0000000..62f8cb7
 3181         -
-- /dev/null
        3892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3182   3893   
@@ -0,0 +1,7 @@
        3894  +
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
        3895  +
Host:example.amazonaws.com
        3896  +
My-Header1:value4
        3897  +
My-Header1:value1
        3898  +
My-Header1:value3
        3899  +
My-Header1:value2
        3900  +
 3183   3901   
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
 3184   3902   
similarity index 99%
 3185   3903   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3186   3904   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3187   3905   
index b584179..2bcf7b1 100644
 3188   3906   
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
 3189   3907   
similarity index 80%
 3190   3908   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3191   3909   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3192   3910   
index f7bd9e6..2c6f49d 100644
 3193         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        3911  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3194   3912   
@@ -1,7 +1,6 @@
 3195   3913   
GET / HTTP/1.1
 3196   3914   
Host:example.amazonaws.com
 3197   3915   
My-Header1:value4
 3198   3916   
My-Header1:value1
 3199   3917   
My-Header1:value3
 3200   3918   
My-Header1:value2
 3201         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3202   3919   
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
 3203   3920   
new file mode 100644
 3204   3921   
index 0000000..0468d80
 3205         -
-- /dev/null
        3922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3206   3923   
@@ -0,0 +1,12 @@
        3924  +
{
        3925  +
    "credentials": {
        3926  +
        "access_key_id": "AKIDEXAMPLE",
        3927  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3928  +
    },
        3929  +
    "expiration_in_seconds": 3600,
        3930  +
    "normalize": true,
        3931  +
    "region": "us-east-1",
        3932  +
    "service": "service",
        3933  +
    "sign_body": false,
        3934  +
    "timestamp": "2015-08-30T12:36:00Z"
        3935  +
}
              \
 No newline at end of file
 3207   3936   
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
 3208   3937   
similarity index 99%
 3209   3938   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3210   3939   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3211   3940   
index e91e952..94b6be5 100644
 3212   3941   
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
 3213   3942   
new file mode 100644
 3214   3943   
index 0000000..bf8c3cb
 3215         -
-- /dev/null
        3944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3216   3945   
@@ -0,0 +1 @@
        3946  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3217   3947   
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
 3218   3948   
new file mode 100644
 3219   3949   
index 0000000..f7f054d
 3220         -
-- /dev/null
        3950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3221   3951   
@@ -0,0 +1,8 @@
        3952  +
GET / HTTP/1.1
        3953  +
Host:example.amazonaws.com
        3954  +
My-Header1: value1
        3955  +
My-Header2: "a   b   c"
        3956  +
X-Amz-Date:20150830T123600Z
        3957  +
X-Amz-Region-Set:us-east-1
        3958  +
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
        3959  +
 3222   3960   
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
 3223   3961   
similarity index 99%
 3224   3962   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3225   3963   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3226   3964   
index 0e407d8..a2c9c05 100644
 3227   3965   
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
 3228   3966   
new file mode 100644
 3229   3967   
index 0000000..379dcb2
 3230         -
-- /dev/null
        3968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3231   3969   
@@ -0,0 +1,4 @@
        3970  +
{
        3971  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3972  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3973  +
}
 3232   3974   
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
 3233   3975   
similarity index 99%
 3234   3976   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3235   3977   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3236   3978   
index 8a3b042..3a51150 100644
 3237   3979   
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
 3238   3980   
new file mode 100644
 3239   3981   
index 0000000..0033053
 3240         -
-- /dev/null
        3982  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3241   3983   
@@ -0,0 +1 @@
        3984  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3242   3985   
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
 3243   3986   
new file mode 100644
 3244   3987   
index 0000000..1537888
 3245         -
-- /dev/null
        3988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3246   3989   
@@ -0,0 +1,5 @@
        3990  +
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
        3991  +
Host:example.amazonaws.com
        3992  +
My-Header1: value1
        3993  +
My-Header2: "a   b   c"
        3994  +
 3247   3995   
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
 3248   3996   
similarity index 99%
 3249   3997   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3250   3998   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3251   3999   
index 5eead25..633dc1f 100644
 3252   4000   
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
 3253   4001   
similarity index 75%
 3254   4002   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3255   4003   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3256   4004   
index 901f36c..ad1ea98 100644
 3257         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3258   4006   
@@ -1,5 +1,4 @@
 3259   4007   
GET / HTTP/1.1
 3260   4008   
Host:example.amazonaws.com
 3261   4009   
My-Header1: value1
 3262   4010   
My-Header2: "a   b   c"
 3263         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3264   4011   
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
 3265   4012   
new file mode 100644
 3266   4013   
index 0000000..0468d80
 3267         -
-- /dev/null
        4014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3268   4015   
@@ -0,0 +1,12 @@
        4016  +
{
        4017  +
    "credentials": {
        4018  +
        "access_key_id": "AKIDEXAMPLE",
        4019  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4020  +
    },
        4021  +
    "expiration_in_seconds": 3600,
        4022  +
    "normalize": true,
        4023  +
    "region": "us-east-1",
        4024  +
    "service": "service",
        4025  +
    "sign_body": false,
        4026  +
    "timestamp": "2015-08-30T12:36:00Z"
        4027  +
}
              \
 No newline at end of file
 3269   4028   
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
 3270   4029   
similarity index 99%
 3271   4030   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3272   4031   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3273   4032   
index 47e7128..76db73d 100644
 3274   4033   
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
 3275   4034   
new file mode 100644
 3276   4035   
index 0000000..cbd6ae2
 3277         -
-- /dev/null
        4036  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3278   4037   
@@ -0,0 +1 @@
        4038  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3279   4039   
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
 3280   4040   
new file mode 100644
 3281   4041   
index 0000000..a343fcf
 3282         -
-- /dev/null
        4042  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3283   4043   
@@ -0,0 +1,6 @@
        4044  +
GET /example/.. HTTP/1.1
        4045  +
Host:example.amazonaws.com
        4046  +
X-Amz-Date:20150830T123600Z
        4047  +
X-Amz-Region-Set:us-east-1
        4048  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4049  +
 3284   4050   
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
 3285   4051   
similarity index 99%
 3286   4052   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3287   4053   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3288   4054   
index 95d7219..600f1d8 100644
 3289   4055   
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
 3290   4056   
new file mode 100644
 3291   4057   
index 0000000..379dcb2
 3292         -
-- /dev/null
        4058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3293   4059   
@@ -0,0 +1,4 @@
        4060  +
{
        4061  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4062  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4063  +
}
 3294   4064   
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
 3295   4065   
similarity index 99%
 3296   4066   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3297   4067   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3298   4068   
index a34ea26..779c51c 100644
 3299   4069   
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
 3300   4070   
new file mode 100644
 3301   4071   
index 0000000..3cc88e6
 3302         -
-- /dev/null
        4072  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3303   4073   
@@ -0,0 +1 @@
        4074  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3304   4075   
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
 3305   4076   
new file mode 100644
 3306   4077   
index 0000000..f68dde8
 3307         -
-- /dev/null
        4078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3308   4079   
@@ -0,0 +1,3 @@
        4080  +
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
        4081  +
Host:example.amazonaws.com
        4082  +
 3309   4083   
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
 3310   4084   
similarity index 99%
 3311   4085   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3312   4086   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3313   4087   
index 48f855c..6e29a7e 100644
 3314   4088   
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
 3315   4089   
similarity index 65%
 3316   4090   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3317   4091   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3318   4092   
index 9d6d7ca..6aa9f99 100644
 3319         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3320   4094   
@@ -1,3 +1,2 @@
 3321   4095   
GET /example/.. HTTP/1.1
 3322   4096   
Host:example.amazonaws.com
 3323         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3324   4097   
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
 3325   4098   
new file mode 100644
 3326   4099   
index 0000000..0468d80
 3327         -
-- /dev/null
        4100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3328   4101   
@@ -0,0 +1,12 @@
        4102  +
{
        4103  +
    "credentials": {
        4104  +
        "access_key_id": "AKIDEXAMPLE",
        4105  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4106  +
    },
        4107  +
    "expiration_in_seconds": 3600,
        4108  +
    "normalize": true,
        4109  +
    "region": "us-east-1",
        4110  +
    "service": "service",
        4111  +
    "sign_body": false,
        4112  +
    "timestamp": "2015-08-30T12:36:00Z"
        4113  +
}
              \
 No newline at end of file
 3329   4114   
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
 3330   4115   
similarity index 99%
 3331   4116   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3332   4117   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3333   4118   
index 47e7128..76db73d 100644
 3334   4119   
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
 3335   4120   
new file mode 100644
 3336   4121   
index 0000000..f7a7ebe
 3337         -
-- /dev/null
        4122  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3338   4123   
@@ -0,0 +1 @@
        4124  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3339   4125   
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
 3340   4126   
new file mode 100644
 3341   4127   
index 0000000..9d2c50d
 3342         -
-- /dev/null
        4128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3343   4129   
@@ -0,0 +1,6 @@
        4130  +
GET /example1/example2/../.. HTTP/1.1
        4131  +
Host:example.amazonaws.com
        4132  +
X-Amz-Date:20150830T123600Z
        4133  +
X-Amz-Region-Set:us-east-1
        4134  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4135  +
 3344   4136   
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
 3345   4137   
similarity index 99%
 3346   4138   
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
 3347   4139   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3348   4140   
index 95d7219..600f1d8 100644
 3349   4141   
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
 3350   4142   
new file mode 100644
 3351   4143   
index 0000000..379dcb2
 3352         -
-- /dev/null
        4144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3353   4145   
@@ -0,0 +1,4 @@
        4146  +
{
        4147  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4148  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4149  +
}
 3354   4150   
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
 3355   4151   
similarity index 99%
 3356   4152   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3357   4153   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3358   4154   
index a34ea26..779c51c 100644
 3359   4155   
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
 3360   4156   
new file mode 100644
 3361   4157   
index 0000000..45ef286
 3362         -
-- /dev/null
        4158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3363   4159   
@@ -0,0 +1 @@
        4160  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3364   4161   
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
 3365   4162   
new file mode 100644
 3366   4163   
index 0000000..0d16f66
 3367         -
-- /dev/null
        4164  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3368   4165   
@@ -0,0 +1,3 @@
        4166  +
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
        4167  +
Host:example.amazonaws.com
        4168  +
 3369   4169   
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
 3370   4170   
similarity index 99%
 3371   4171   
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
 3372   4172   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3373   4173   
index 48f855c..6e29a7e 100644
 3374   4174   
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
 3375   4175   
similarity index 70%
 3376   4176   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3377   4177   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3378   4178   
index cfd4e8b..a856c10 100644
 3379         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3380   4180   
@@ -1,3 +1,2 @@
 3381   4181   
GET /example1/example2/../.. HTTP/1.1
 3382   4182   
Host:example.amazonaws.com
 3383         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3384   4183   
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
 3385   4184   
new file mode 100644
 3386   4185   
index 0000000..7bee5c7
 3387         -
-- /dev/null
        4186  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3388   4187   
@@ -0,0 +1,12 @@
        4188  +
{
        4189  +
    "credentials": {
        4190  +
        "access_key_id": "AKIDEXAMPLE",
        4191  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4192  +
    },
        4193  +
    "expiration_in_seconds": 3600,
        4194  +
    "normalize": false,
        4195  +
    "region": "us-east-1",
        4196  +
    "service": "service",
        4197  +
    "sign_body": false,
        4198  +
    "timestamp": "2015-08-30T12:36:00Z"
        4199  +
}
              \
 No newline at end of file
 3389   4200   
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
 3390   4201   
similarity index 99%
 3391   4202   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3392   4203   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3393   4204   
index 5e1d1cf..e4e6d57 100644
 3394   4205   
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
 3395   4206   
new file mode 100644
 3396   4207   
index 0000000..2d1b47c
 3397         -
-- /dev/null
        4208  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3398   4209   
@@ -0,0 +1 @@
        4210  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3399   4211   
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
 3400   4212   
new file mode 100644
 3401   4213   
index 0000000..7158179
 3402         -
-- /dev/null
        4214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3403   4215   
@@ -0,0 +1,6 @@
        4216  +
GET /example1/example2/../.. HTTP/1.1
        4217  +
Host:example.amazonaws.com
        4218  +
X-Amz-Date:20150830T123600Z
        4219  +
X-Amz-Region-Set:us-east-1
        4220  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4221  +
 3404   4222   
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
 3405   4223   
similarity index 99%
 3406   4224   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3407   4225   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3408   4226   
index 1cca6cf..db60c8e 100644
 3409   4227   
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
 3410   4228   
new file mode 100644
 3411   4229   
index 0000000..379dcb2
 3412         -
-- /dev/null
        4230  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3413   4231   
@@ -0,0 +1,4 @@
        4232  +
{
        4233  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4234  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4235  +
}
 3414   4236   
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
 3415   4237   
similarity index 99%
 3416   4238   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3417   4239   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3418   4240   
index 95dc104..0d963ba 100644
 3419   4241   
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
 3420   4242   
new file mode 100644
 3421   4243   
index 0000000..ae774e4
 3422         -
-- /dev/null
        4244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3423   4245   
@@ -0,0 +1 @@
        4246  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3424   4247   
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
 3425   4248   
new file mode 100644
 3426   4249   
index 0000000..be6b86e
 3427         -
-- /dev/null
        4250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3428   4251   
@@ -0,0 +1,3 @@
        4252  +
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
        4253  +
Host:example.amazonaws.com
        4254  +
 3429   4255   
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
 3430   4256   
similarity index 99%
 3431   4257   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3432   4258   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3433   4259   
index 50edce6..fcc70cd 100644
 3434   4260   
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
 3435   4261   
new file mode 100644
 3436   4262   
index 0000000..a856c10
 3437         -
-- /dev/null
        4263  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3438   4264   
@@ -0,0 +1,2 @@
        4265  +
GET /example1/example2/../.. HTTP/1.1
        4266  +
Host:example.amazonaws.com
 3439   4267   
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
 3440   4268   
new file mode 100644
 3441   4269   
index 0000000..7bee5c7
 3442         -
-- /dev/null
        4270  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3443   4271   
@@ -0,0 +1,12 @@
        4272  +
{
        4273  +
    "credentials": {
        4274  +
        "access_key_id": "AKIDEXAMPLE",
        4275  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4276  +
    },
        4277  +
    "expiration_in_seconds": 3600,
        4278  +
    "normalize": false,
        4279  +
    "region": "us-east-1",
        4280  +
    "service": "service",
        4281  +
    "sign_body": false,
        4282  +
    "timestamp": "2015-08-30T12:36:00Z"
        4283  +
}
              \
 No newline at end of file
 3444   4284   
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
 3445   4285   
similarity index 99%
 3446   4286   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3447   4287   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3448   4288   
index d6a0abe..22def1a 100644
 3449   4289   
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
 3450   4290   
new file mode 100644
 3451   4291   
index 0000000..9251bad
 3452         -
-- /dev/null
        4292  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3453   4293   
@@ -0,0 +1 @@
        4294  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3454   4295   
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
 3455   4296   
new file mode 100644
 3456   4297   
index 0000000..f1bb60f
 3457         -
-- /dev/null
        4298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3458   4299   
@@ -0,0 +1,6 @@
        4300  +
GET /example/.. HTTP/1.1
        4301  +
Host:example.amazonaws.com
        4302  +
X-Amz-Date:20150830T123600Z
        4303  +
X-Amz-Region-Set:us-east-1
        4304  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4305  +
 3459   4306   
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
 3460   4307   
similarity index 99%
 3461   4308   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3462   4309   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3463   4310   
index 4a34e93..5673a20 100644
 3464   4311   
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
 3465   4312   
new file mode 100644
 3466   4313   
index 0000000..379dcb2
 3467         -
-- /dev/null
        4314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3468   4315   
@@ -0,0 +1,4 @@
        4316  +
{
        4317  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4318  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4319  +
}
 3469   4320   
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
 3470   4321   
similarity index 99%
 3471   4322   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3472   4323   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3473   4324   
index b1d123e..a1c22e0 100644
 3474   4325   
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
 3475   4326   
new file mode 100644
 3476   4327   
index 0000000..9f0f686
 3477         -
-- /dev/null
        4328  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3478   4329   
@@ -0,0 +1 @@
        4330  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3479   4331   
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
 3480   4332   
new file mode 100644
 3481   4333   
index 0000000..d1d451a
 3482         -
-- /dev/null
        4334  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3483   4335   
@@ -0,0 +1,3 @@
        4336  +
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
        4337  +
Host:example.amazonaws.com
        4338  +
 3484   4339   
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
 3485   4340   
similarity index 99%
 3486   4341   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3487   4342   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3488   4343   
index a17f5ab..81b41e8 100644
 3489   4344   
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
 3490   4345   
new file mode 100644
 3491   4346   
index 0000000..6aa9f99
 3492         -
-- /dev/null
        4347  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3493   4348   
@@ -0,0 +1,2 @@
        4349  +
GET /example/.. HTTP/1.1
        4350  +
Host:example.amazonaws.com
 3494   4351   
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
 3495   4352   
new file mode 100644
 3496   4353   
index 0000000..0468d80
 3497         -
-- /dev/null
        4354  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3498   4355   
@@ -0,0 +1,12 @@
        4356  +
{
        4357  +
    "credentials": {
        4358  +
        "access_key_id": "AKIDEXAMPLE",
        4359  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4360  +
    },
        4361  +
    "expiration_in_seconds": 3600,
        4362  +
    "normalize": true,
        4363  +
    "region": "us-east-1",
        4364  +
    "service": "service",
        4365  +
    "sign_body": false,
        4366  +
    "timestamp": "2015-08-30T12:36:00Z"
        4367  +
}
              \
 No newline at end of file
 3499   4368   
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
 3500   4369   
similarity index 99%
 3501   4370   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3502   4371   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3503   4372   
index 47e7128..76db73d 100644
 3504   4373   
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
 3505   4374   
new file mode 100644
 3506   4375   
index 0000000..ca6e84e
 3507         -
-- /dev/null
        4376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3508   4377   
@@ -0,0 +1 @@
        4378  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3509   4379   
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
 3510   4380   
new file mode 100644
 3511   4381   
index 0000000..a7c764c
 3512         -
-- /dev/null
        4382  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3513   4383   
@@ -0,0 +1,6 @@
        4384  +
GET /./ HTTP/1.1
        4385  +
Host:example.amazonaws.com
        4386  +
X-Amz-Date:20150830T123600Z
        4387  +
X-Amz-Region-Set:us-east-1
        4388  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4389  +
 3514   4390   
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
 3515   4391   
similarity index 99%
 3516   4392   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3517   4393   
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
 3518   4394   
index 95d7219..600f1d8 100644
 3519   4395   
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
 3520   4396   
new file mode 100644
 3521   4397   
index 0000000..379dcb2
 3522         -
-- /dev/null
        4398  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3523   4399   
@@ -0,0 +1,4 @@
        4400  +
{
        4401  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4402  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4403  +
}
 3524   4404   
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
 3525   4405   
similarity index 99%
 3526   4406   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3527   4407   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3528   4408   
index a34ea26..779c51c 100644
 3529   4409   
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
 3530   4410   
new file mode 100644
 3531   4411   
index 0000000..4b6ed09
 3532         -
-- /dev/null
        4412  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3533   4413   
@@ -0,0 +1 @@
        4414  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3534   4415   
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
 3535   4416   
new file mode 100644
 3536   4417   
index 0000000..d6c7176
 3537         -
-- /dev/null
        4418  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3538   4419   
@@ -0,0 +1,3 @@
        4420  +
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
        4421  +
Host:example.amazonaws.com
        4422  +
 3539   4423   
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
 3540   4424   
similarity index 99%
 3541   4425   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3542   4426   
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
 3543   4427   
index 48f855c..6e29a7e 100644
 3544   4428   
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
 3545   4429   
similarity index 61%
 3546   4430   
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
 3547   4431   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3548   4432   
index f3537b7..2c5ff38 100644
 3549         -
-- 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
        4433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3550   4434   
@@ -1,3 +1,2 @@
 3551   4435   
GET /./ HTTP/1.1
 3552   4436   
Host:example.amazonaws.com
 3553         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3554   4437   
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
 3555   4438   
new file mode 100644
 3556   4439   
index 0000000..7bee5c7
 3557         -
-- /dev/null
        4440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3558   4441   
@@ -0,0 +1,12 @@
        4442  +
{
        4443  +
    "credentials": {
        4444  +
        "access_key_id": "AKIDEXAMPLE",
        4445  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4446  +
    },
        4447  +
    "expiration_in_seconds": 3600,
        4448  +
    "normalize": false,
        4449  +
    "region": "us-east-1",
        4450  +
    "service": "service",
        4451  +
    "sign_body": false,
        4452  +
    "timestamp": "2015-08-30T12:36:00Z"
        4453  +
}
              \
 No newline at end of file
 3559   4454   
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
 3560   4455   
similarity index 99%
 3561   4456   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3562   4457   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3563   4458   
index d05303d..9257ac4 100644
 3564   4459   
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
 3565   4460   
new file mode 100644
 3566   4461   
index 0000000..2eb1aa5
 3567         -
-- /dev/null
        4462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3568   4463   
@@ -0,0 +1 @@
        4464  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3569   4465   
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
 3570   4466   
new file mode 100644
 3571   4467   
index 0000000..df3b1da
 3572         -
-- /dev/null
        4468  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3573   4469   
@@ -0,0 +1,6 @@
        4470  +
GET /./ HTTP/1.1
        4471  +
Host:example.amazonaws.com
        4472  +
X-Amz-Date:20150830T123600Z
        4473  +
X-Amz-Region-Set:us-east-1
        4474  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4475  +
 3574   4476   
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
 3575   4477   
similarity index 99%
 3576   4478   
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
 3577   4479   
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
 3578   4480   
index e1bfb39..754b3ed 100644
 3579   4481   
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
 3580   4482   
new file mode 100644
 3581   4483   
index 0000000..379dcb2
 3582         -
-- /dev/null
        4484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3583   4485   
@@ -0,0 +1,4 @@
        4486  +
{
        4487  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4488  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4489  +
}
 3584   4490   
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
 3585   4491   
similarity index 99%
 3586   4492   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3587   4493   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3588   4494   
index f048d0f..c8edce3 100644
 3589   4495   
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
 3590   4496   
new file mode 100644
 3591   4497   
index 0000000..d3af3b8
 3592         -
-- /dev/null
        4498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3593   4499   
@@ -0,0 +1 @@
        4500  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3594   4501   
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
 3595   4502   
new file mode 100644
 3596   4503   
index 0000000..eb38155
 3597         -
-- /dev/null
        4504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3598   4505   
@@ -0,0 +1,3 @@
        4506  +
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
        4507  +
Host:example.amazonaws.com
        4508  +
 3599   4509   
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
 3600   4510   
similarity index 99%
 3601   4511   
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
 3602   4512   
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
 3603   4513   
index bfcf245..4f20b8f 100644
 3604   4514   
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
 3605   4515   
new file mode 100644
 3606   4516   
index 0000000..2c5ff38
 3607         -
-- /dev/null
        4517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3608   4518   
@@ -0,0 +1,2 @@
        4519  +
GET /./ HTTP/1.1
        4520  +
Host:example.amazonaws.com
 3609   4521   
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
 3610   4522   
new file mode 100644
 3611   4523   
index 0000000..0468d80
 3612         -
-- /dev/null
        4524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3613   4525   
@@ -0,0 +1,12 @@
        4526  +
{
        4527  +
    "credentials": {
        4528  +
        "access_key_id": "AKIDEXAMPLE",
        4529  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4530  +
    },
        4531  +
    "expiration_in_seconds": 3600,
        4532  +
    "normalize": true,
        4533  +
    "region": "us-east-1",
        4534  +
    "service": "service",
        4535  +
    "sign_body": false,
        4536  +
    "timestamp": "2015-08-30T12:36:00Z"
        4537  +
}
              \
 No newline at end of file
 3614   4538   
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
 3615   4539   
similarity index 99%
 3616   4540   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 3617   4541   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3618   4542   
index 47e7128..76db73d 100644
 3619   4543   
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
 3620   4544   
new file mode 100644
 3621   4545   
index 0000000..0c049ca
 3622         -
-- /dev/null
        4546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 3623   4547   
@@ -0,0 +1 @@
        4548  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 3624   4549   
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
 3625   4550   
new file mode 100644
 3626   4551   
index 0000000..f4bb1e1
 3627         -
-- /dev/null
        4552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 3628   4553   
@@ -0,0 +1,6 @@
        4554  +
GET // HTTP/1.1
        4555  +
Host:example.amazonaws.com
        4556  +
X-Amz-Date:20150830T123600Z
        4557  +
X-Amz-Region-Set:us-east-1
        4558  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4559  +
 3629   4560   
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
 3630   4561   
similarity index 99%
 3631   4562   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 3632   4563   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3633   4564   
index 95d7219..600f1d8 100644
 3634   4565   
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
 3635   4566   
new file mode 100644
 3636   4567   
index 0000000..379dcb2
 3637         -
-- /dev/null
        4568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 3638   4569   
@@ -0,0 +1,4 @@
        4570  +
{
        4571  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4572  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4573  +
}
 3639   4574   
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
 3640   4575   
similarity index 99%
 3641   4576   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 3642   4577   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3643   4578   
index a34ea26..779c51c 100644
 3644   4579   
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
 3645   4580   
new file mode 100644
 3646   4581   
index 0000000..ca52293
 3647         -
-- /dev/null
        4582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 3648   4583   
@@ -0,0 +1 @@
        4584  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 3649   4585   
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
 3650   4586   
new file mode 100644
 3651   4587   
index 0000000..4a212a9
 3652         -
-- /dev/null
        4588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 3653   4589   
@@ -0,0 +1,3 @@
        4590  +
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
        4591  +
Host:example.amazonaws.com
        4592  +
 3654   4593   
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
 3655   4594   
similarity index 99%
 3656   4595   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 3657   4596   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3658   4597   
index 48f855c..6e29a7e 100644
 3659   4598   
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
 3660   4599   
similarity index 61%
 3661   4600   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 3662   4601   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3663   4602   
index ede8e3c..25bc21e 100644
 3664         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        4603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3665   4604   
@@ -1,3 +1,2 @@
 3666   4605   
GET // HTTP/1.1
 3667   4606   
Host:example.amazonaws.com
 3668         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3669   4607   
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
 3670   4608   
new file mode 100644
 3671   4609   
index 0000000..0468d80
 3672         -
-- /dev/null
        4610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 3673   4611   
@@ -0,0 +1,12 @@
        4612  +
{
        4613  +
    "credentials": {
        4614  +
        "access_key_id": "AKIDEXAMPLE",
        4615  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4616  +
    },
        4617  +
    "expiration_in_seconds": 3600,
        4618  +
    "normalize": true,
        4619  +
    "region": "us-east-1",
        4620  +
    "service": "service",
        4621  +
    "sign_body": false,
        4622  +
    "timestamp": "2015-08-30T12:36:00Z"
        4623  +
}
              \
 No newline at end of file
 3674   4624   
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
 3675   4625   
similarity index 99%
 3676   4626   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3677   4627   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3678   4628   
index 2e36c20..a51f1ba 100644
 3679   4629   
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
 3680   4630   
new file mode 100644
 3681   4631   
index 0000000..f5c871f
 3682         -
-- /dev/null
        4632  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 3683   4633   
@@ -0,0 +1 @@
        4634  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 3684   4635   
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
 3685   4636   
new file mode 100644
 3686   4637   
index 0000000..bda4718
 3687         -
-- /dev/null
        4638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 3688   4639   
@@ -0,0 +1,6 @@
        4640  +
GET /./example HTTP/1.1
        4641  +
Host:example.amazonaws.com
        4642  +
X-Amz-Date:20150830T123600Z
        4643  +
X-Amz-Region-Set:us-east-1
        4644  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        4645  +
 3689   4646   
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
 3690   4647   
similarity index 99%
 3691   4648   
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
 3692   4649   
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
 3693   4650   
index cd30e8b..2ffe879 100644
 3694   4651   
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
 3695   4652   
new file mode 100644
 3696   4653   
index 0000000..379dcb2
 3697         -
-- /dev/null
        4654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 3698   4655   
@@ -0,0 +1,4 @@
        4656  +
{
        4657  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4658  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4659  +
}
 3699   4660   
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
 3700   4661   
similarity index 99%
 3701   4662   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3702   4663   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3703   4664   
index 77cf28d..45151ea 100644
 3704   4665   
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
 3705   4666   
new file mode 100644
 3706   4667   
index 0000000..11ad7bf
 3707         -
-- /dev/null
        4668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 3708   4669   
@@ -0,0 +1 @@
        4670  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 3709   4671   
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
 3710   4672   
new file mode 100644
 3711   4673   
index 0000000..a7537b1
 3712         -
-- /dev/null
        4674  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 3713   4675   
@@ -0,0 +1,3 @@
        4676  +
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
        4677  +
Host:example.amazonaws.com
        4678  +
 3714   4679   
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
 3715   4680   
similarity index 99%
 3716   4681   
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
 3717   4682   
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
 3718   4683   
index 49d9b24..b486672 100644
 3719   4684   
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
 3720   4685   
similarity index 65%
 3721   4686   
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
 3722   4687   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3723   4688   
index 3c91071..5d919c9 100644
 3724         -
-- 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
        4689  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3725   4690   
@@ -1,3 +1,2 @@
 3726   4691   
GET /./example HTTP/1.1
 3727   4692   
Host:example.amazonaws.com
 3728         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3729   4693   
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
 3730   4694   
new file mode 100644
 3731   4695   
index 0000000..7bee5c7
 3732         -
-- /dev/null
        4696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 3733   4697   
@@ -0,0 +1,12 @@
        4698  +
{
        4699  +
    "credentials": {
        4700  +
        "access_key_id": "AKIDEXAMPLE",
        4701  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4702  +
    },
        4703  +
    "expiration_in_seconds": 3600,
        4704  +
    "normalize": false,
        4705  +
    "region": "us-east-1",
        4706  +
    "service": "service",
        4707  +
    "sign_body": false,
        4708  +
    "timestamp": "2015-08-30T12:36:00Z"
        4709  +
}
              \
 No newline at end of file
 3734   4710   
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
 3735   4711   
similarity index 99%
 3736   4712   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3737   4713   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3738   4714   
index 4444842..2355a69 100644
 3739   4715   
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
 3740   4716   
new file mode 100644
 3741   4717   
index 0000000..9c8f737
 3742         -
-- /dev/null
        4718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 3743   4719   
@@ -0,0 +1 @@
        4720  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 3744   4721   
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
 3745   4722   
new file mode 100644
 3746   4723   
index 0000000..aa5980d
 3747         -
-- /dev/null
        4724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 3748   4725   
@@ -0,0 +1,6 @@
        4726  +
GET /./example HTTP/1.1
        4727  +
Host:example.amazonaws.com
        4728  +
X-Amz-Date:20150830T123600Z
        4729  +
X-Amz-Region-Set:us-east-1
        4730  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        4731  +
 3749   4732   
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
 3750   4733   
similarity index 99%
 3751   4734   
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
 3752   4735   
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
 3753   4736   
index cc63510..d056816 100644
 3754   4737   
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
 3755   4738   
new file mode 100644
 3756   4739   
index 0000000..379dcb2
 3757         -
-- /dev/null
        4740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 3758   4741   
@@ -0,0 +1,4 @@
        4742  +
{
        4743  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4744  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4745  +
}
 3759   4746   
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
 3760   4747   
similarity index 99%
 3761   4748   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3762   4749   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3763   4750   
index ed2cb2d..df9928e 100644
 3764   4751   
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
 3765   4752   
new file mode 100644
 3766   4753   
index 0000000..bb4d86b
 3767         -
-- /dev/null
        4754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 3768   4755   
@@ -0,0 +1 @@
        4756  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 3769   4757   
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
 3770   4758   
new file mode 100644
 3771   4759   
index 0000000..0061136
 3772         -
-- /dev/null
        4760  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 3773   4761   
@@ -0,0 +1,3 @@
        4762  +
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
        4763  +
Host:example.amazonaws.com
        4764  +
 3774   4765   
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
 3775   4766   
similarity index 99%
 3776   4767   
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
 3777   4768   
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
 3778   4769   
index c9f3b6d..418f2d6 100644
 3779   4770   
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
 3780   4771   
new file mode 100644
 3781   4772   
index 0000000..5d919c9
 3782         -
-- /dev/null
        4773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 3783   4774   
@@ -0,0 +1,2 @@
        4775  +
GET /./example HTTP/1.1
        4776  +
Host:example.amazonaws.com
 3784   4777   
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
 3785   4778   
new file mode 100644
 3786   4779   
index 0000000..7bee5c7
 3787         -
-- /dev/null
        4780  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 3788   4781   
@@ -0,0 +1,12 @@
        4782  +
{
        4783  +
    "credentials": {
        4784  +
        "access_key_id": "AKIDEXAMPLE",
        4785  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4786  +
    },
        4787  +
    "expiration_in_seconds": 3600,
        4788  +
    "normalize": false,
        4789  +
    "region": "us-east-1",
        4790  +
    "service": "service",
        4791  +
    "sign_body": false,
        4792  +
    "timestamp": "2015-08-30T12:36:00Z"
        4793  +
}
              \
 No newline at end of file
 3789   4794   
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
 3790   4795   
similarity index 99%
 3791   4796   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 3792   4797   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 3793   4798   
index 8a4d33b..5f809da 100644
 3794   4799   
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
 3795   4800   
new file mode 100644
 3796   4801   
index 0000000..60179e9
 3797         -
-- /dev/null
        4802  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 3798   4803   
@@ -0,0 +1 @@
        4804  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 3799   4805   
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
 3800   4806   
new file mode 100644
 3801   4807   
index 0000000..72bf1b7
 3802         -
-- /dev/null
        4808  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 3803   4809   
@@ -0,0 +1,6 @@
        4810  +
GET // HTTP/1.1
        4811  +
Host:example.amazonaws.com
        4812  +
X-Amz-Date:20150830T123600Z
        4813  +
X-Amz-Region-Set:us-east-1
        4814  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        4815  +
 3804   4816   
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
 3805   4817   
similarity index 99%
 3806   4818   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 3807   4819   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 3808   4820   
index 874c01c..2b3bf67 100644
 3809   4821   
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
 3810   4822   
new file mode 100644
 3811   4823   
index 0000000..379dcb2
 3812         -
-- /dev/null
        4824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 3813   4825   
@@ -0,0 +1,4 @@
        4826  +
{
        4827  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4828  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4829  +
}
 3814   4830   
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
 3815   4831   
similarity index 99%
 3816   4832   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 3817   4833   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 3818   4834   
index 81d7b0b..d10ad29 100644
 3819   4835   
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
 3820   4836   
new file mode 100644
 3821   4837   
index 0000000..d9bd824
 3822         -
-- /dev/null
        4838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 3823   4839   
@@ -0,0 +1 @@
        4840  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 3824   4841   
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
 3825   4842   
new file mode 100644
 3826   4843   
index 0000000..19d1d46
 3827         -
-- /dev/null
        4844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 3828   4845   
@@ -0,0 +1,3 @@
        4846  +
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
        4847  +
Host:example.amazonaws.com
        4848  +
 3829   4849   
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
 3830   4850   
similarity index 99%
 3831   4851   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 3832   4852   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 3833   4853   
index 17e5279..24c8a5e 100644
 3834   4854   
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
 3835   4855   
new file mode 100644
 3836   4856   
index 0000000..25bc21e
 3837         -
-- /dev/null
        4857  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 3838   4858   
@@ -0,0 +1,2 @@
        4859  +
GET // HTTP/1.1
        4860  +
Host:example.amazonaws.com
 3839   4861   
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
 3840   4862   
new file mode 100644
 3841   4863   
index 0000000..0468d80
 3842         -
-- /dev/null
        4864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 3843   4865   
@@ -0,0 +1,12 @@
        4866  +
{
        4867  +
    "credentials": {
        4868  +
        "access_key_id": "AKIDEXAMPLE",
        4869  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4870  +
    },
        4871  +
    "expiration_in_seconds": 3600,
        4872  +
    "normalize": true,
        4873  +
    "region": "us-east-1",
        4874  +
    "service": "service",
        4875  +
    "sign_body": false,
        4876  +
    "timestamp": "2015-08-30T12:36:00Z"
        4877  +
}
              \
 No newline at end of file
 3844   4878   
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
 3845   4879   
similarity index 99%
 3846   4880   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 3847   4881   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 3848   4882   
index fdf9c48..a8e9e02 100644
 3849   4883   
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
 3850   4884   
new file mode 100644
 3851   4885   
index 0000000..ffe1b60
 3852         -
-- /dev/null
        4886  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 3853   4887   
@@ -0,0 +1 @@
        4888  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 3854   4889   
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
 3855   4890   
new file mode 100644
 3856   4891   
index 0000000..3189f55
 3857         -
-- /dev/null
        4892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 3858   4893   
@@ -0,0 +1,6 @@
        4894  +
GET //example// HTTP/1.1
        4895  +
Host:example.amazonaws.com
        4896  +
X-Amz-Date:20150830T123600Z
        4897  +
X-Amz-Region-Set:us-east-1
        4898  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        4899  +
 3859   4900   
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
 3860   4901   
similarity index 99%
 3861   4902   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 3862   4903   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 3863   4904   
index 8f9c95e..430020e 100644
 3864   4905   
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
 3865   4906   
new file mode 100644
 3866   4907   
index 0000000..379dcb2
 3867         -
-- /dev/null
        4908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 3868   4909   
@@ -0,0 +1,4 @@
        4910  +
{
        4911  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4912  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4913  +
}
 3869   4914   
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
 3870   4915   
similarity index 99%
 3871   4916   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 3872   4917   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 3873   4918   
index 1046735..8d41e37 100644
 3874   4919   
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
 3875   4920   
new file mode 100644
 3876   4921   
index 0000000..93a0fa4
 3877         -
-- /dev/null
        4922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 3878   4923   
@@ -0,0 +1 @@
        4924  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 3879   4925   
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
 3880   4926   
new file mode 100644
 3881   4927   
index 0000000..65c8cb6
 3882         -
-- /dev/null
        4928  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 3883   4929   
@@ -0,0 +1,3 @@
        4930  +
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
        4931  +
Host:example.amazonaws.com
        4932  +
 3884   4933   
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
 3885   4934   
similarity index 99%
 3886   4935   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 3887   4936   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 3888   4937   
index b293cc2..0f4c4c5 100644
 3889   4938   
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
 3890   4939   
similarity index 65%
 3891   4940   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 3892   4941   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3893   4942   
index a4307ce..12e0931 100644
 3894         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        4943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3895   4944   
@@ -1,3 +1,2 @@
 3896   4945   
GET //example// HTTP/1.1
 3897   4946   
Host:example.amazonaws.com
 3898         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3899   4947   
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
 3900   4948   
new file mode 100644
 3901   4949   
index 0000000..7bee5c7
 3902         -
-- /dev/null
        4950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 3903   4951   
@@ -0,0 +1,12 @@
        4952  +
{
        4953  +
    "credentials": {
        4954  +
        "access_key_id": "AKIDEXAMPLE",
        4955  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4956  +
    },
        4957  +
    "expiration_in_seconds": 3600,
        4958  +
    "normalize": false,
        4959  +
    "region": "us-east-1",
        4960  +
    "service": "service",
        4961  +
    "sign_body": false,
        4962  +
    "timestamp": "2015-08-30T12:36:00Z"
        4963  +
}
              \
 No newline at end of file
 3904   4964   
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
 3905   4965   
similarity index 99%
 3906   4966   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 3907   4967   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 3908   4968   
index a9c55f6..76f55ed 100644
 3909   4969   
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
 3910   4970   
new file mode 100644
 3911   4971   
index 0000000..de333b2
 3912         -
-- /dev/null
        4972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 3913   4973   
@@ -0,0 +1 @@
        4974  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 3914   4975   
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
 3915   4976   
new file mode 100644
 3916   4977   
index 0000000..773ce63
 3917         -
-- /dev/null
        4978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 3918   4979   
@@ -0,0 +1,6 @@
        4980  +
GET //example// HTTP/1.1
        4981  +
Host:example.amazonaws.com
        4982  +
X-Amz-Date:20150830T123600Z
        4983  +
X-Amz-Region-Set:us-east-1
        4984  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        4985  +
 3919   4986   
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
 3920   4987   
similarity index 99%
 3921   4988   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 3922   4989   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 3923   4990   
index 5c4c2cd..46c3265 100644
 3924   4991   
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
 3925   4992   
new file mode 100644
 3926   4993   
index 0000000..379dcb2
 3927         -
-- /dev/null
        4994  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 3928   4995   
@@ -0,0 +1,4 @@
        4996  +
{
        4997  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4998  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4999  +
}
 3929   5000   
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
 3930   5001   
similarity index 99%
 3931   5002   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 3932   5003   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 3933   5004   
index c878ab4..6047ccf 100644
 3934   5005   
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
 3935   5006   
new file mode 100644
 3936   5007   
index 0000000..d61fcd0
 3937         -
-- /dev/null
        5008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 3938   5009   
@@ -0,0 +1 @@
        5010  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 3939   5011   
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
 3940   5012   
new file mode 100644
 3941   5013   
index 0000000..3e37b5b
 3942         -
-- /dev/null
        5014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 3943   5015   
@@ -0,0 +1,3 @@
        5016  +
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
        5017  +
Host:example.amazonaws.com
        5018  +
 3944   5019   
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
 3945   5020   
similarity index 99%
 3946   5021   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 3947   5022   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 3948   5023   
index 5f59645..2537d28 100644
 3949   5024   
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
 3950   5025   
new file mode 100644
 3951   5026   
index 0000000..12e0931
 3952         -
-- /dev/null
        5027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 3953   5028   
@@ -0,0 +1,2 @@
        5029  +
GET //example// HTTP/1.1
        5030  +
Host:example.amazonaws.com
 3954   5031   
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
 3955   5032   
new file mode 100644
 3956   5033   
index 0000000..0468d80
 3957         -
-- /dev/null
        5034  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 3958   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
 3959   5048   
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
 3960   5049   
new file mode 100644
 3961   5050   
index 0000000..0b2b616
 3962         -
-- /dev/null
        5051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 3963   5052   
@@ -0,0 +1,9 @@
        5053  +
GET
        5054  +
/example%20space/
        5055  +
        5056  +
host:example.amazonaws.com
        5057  +
x-amz-date:20150830T123600Z
        5058  +
x-amz-region-set:us-east-1
        5059  +
        5060  +
host;x-amz-date;x-amz-region-set
        5061  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3964   5062   
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
 3965   5063   
new file mode 100644
 3966   5064   
index 0000000..6e7841d
 3967         -
-- /dev/null
        5065  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 3968   5066   
@@ -0,0 +1 @@
        5067  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 3969   5068   
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
 3970   5069   
new file mode 100644
 3971   5070   
index 0000000..0969cd3
 3972         -
-- /dev/null
        5071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 3973   5072   
@@ -0,0 +1,6 @@
        5073  +
GET /example space/ HTTP/1.1
        5074  +
Host:example.amazonaws.com
        5075  +
X-Amz-Date:20150830T123600Z
        5076  +
X-Amz-Region-Set:us-east-1
        5077  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5078  +
 3974   5079   
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
 3975   5080   
new file mode 100644
 3976   5081   
index 0000000..ddae6e2
 3977         -
-- /dev/null
        5082  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 3978   5083   
@@ -0,0 +1,4 @@
        5084  +
AWS4-ECDSA-P256-SHA256
        5085  +
20150830T123600Z
        5086  +
20150830/service/aws4_request
        5087  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 3979   5088   
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
 3980   5089   
new file mode 100644
 3981   5090   
index 0000000..379dcb2
 3982         -
-- /dev/null
        5091  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 3983   5092   
@@ -0,0 +1,4 @@
        5093  +
{
        5094  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5095  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5096  +
}
 3984   5097   
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
 3985   5098   
new file mode 100644
 3986   5099   
index 0000000..a66b3cb
 3987         -
-- /dev/null
        5100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 3988   5101   
@@ -0,0 +1,7 @@
        5102  +
GET
        5103  +
/example%20space/
        5104  +
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
        5105  +
host:example.amazonaws.com
        5106  +
        5107  +
host
        5108  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3989   5109   
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
 3990   5110   
new file mode 100644
 3991   5111   
index 0000000..b3253ae
 3992         -
-- /dev/null
        5112  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 3993   5113   
@@ -0,0 +1 @@
        5114  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 3994   5115   
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
 3995   5116   
new file mode 100644
 3996   5117   
index 0000000..9e335b2
 3997         -
-- /dev/null
        5118  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 3998   5119   
@@ -0,0 +1,3 @@
        5120  +
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
        5121  +
Host:example.amazonaws.com
        5122  +
 3999   5123   
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
 4000   5124   
new file mode 100644
 4001   5125   
index 0000000..b6ff6fb
 4002         -
-- /dev/null
        5126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4003   5127   
@@ -0,0 +1,4 @@
        5128  +
AWS4-ECDSA-P256-SHA256
        5129  +
20150830T123600Z
        5130  +
20150830/service/aws4_request
        5131  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4004   5132   
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
 4005   5133   
new file mode 100644
 4006   5134   
index 0000000..ab509ab
 4007         -
-- /dev/null
        5135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4008   5136   
@@ -0,0 +1,2 @@
        5137  +
GET /example space/ HTTP/1.1
        5138  +
Host:example.amazonaws.com
 4009   5139   
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
 4010   5140   
new file mode 100644
 4011   5141   
index 0000000..7bee5c7
 4012         -
-- /dev/null
        5142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4013   5143   
@@ -0,0 +1,12 @@
        5144  +
{
        5145  +
    "credentials": {
        5146  +
        "access_key_id": "AKIDEXAMPLE",
        5147  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5148  +
    },
        5149  +
    "expiration_in_seconds": 3600,
        5150  +
    "normalize": false,
        5151  +
    "region": "us-east-1",
        5152  +
    "service": "service",
        5153  +
    "sign_body": false,
        5154  +
    "timestamp": "2015-08-30T12:36:00Z"
        5155  +
}
              \
 No newline at end of file
 4014   5156   
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
 4015   5157   
new file mode 100644
 4016   5158   
index 0000000..0b2b616
 4017         -
-- /dev/null
        5159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4018   5160   
@@ -0,0 +1,9 @@
        5161  +
GET
        5162  +
/example%20space/
        5163  +
        5164  +
host:example.amazonaws.com
        5165  +
x-amz-date:20150830T123600Z
        5166  +
x-amz-region-set:us-east-1
        5167  +
        5168  +
host;x-amz-date;x-amz-region-set
        5169  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4019   5170   
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
 4020   5171   
new file mode 100644
 4021   5172   
index 0000000..e75ae08
 4022         -
-- /dev/null
        5173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4023   5174   
@@ -0,0 +1 @@
        5175  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4024   5176   
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
 4025   5177   
new file mode 100644
 4026   5178   
index 0000000..cb089db
 4027         -
-- /dev/null
        5179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4028   5180   
@@ -0,0 +1,6 @@
        5181  +
GET /example space/ HTTP/1.1
        5182  +
Host:example.amazonaws.com
        5183  +
X-Amz-Date:20150830T123600Z
        5184  +
X-Amz-Region-Set:us-east-1
        5185  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5186  +
 4029   5187   
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
 4030   5188   
new file mode 100644
 4031   5189   
index 0000000..ddae6e2
 4032         -
-- /dev/null
        5190  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4033   5191   
@@ -0,0 +1,4 @@
        5192  +
AWS4-ECDSA-P256-SHA256
        5193  +
20150830T123600Z
        5194  +
20150830/service/aws4_request
        5195  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4034   5196   
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
 4035   5197   
new file mode 100644
 4036   5198   
index 0000000..379dcb2
 4037         -
-- /dev/null
        5199  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4038   5200   
@@ -0,0 +1,4 @@
        5201  +
{
        5202  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5203  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5204  +
}
 4039   5205   
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
 4040   5206   
new file mode 100644
 4041   5207   
index 0000000..a66b3cb
 4042         -
-- /dev/null
        5208  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4043   5209   
@@ -0,0 +1,7 @@
        5210  +
GET
        5211  +
/example%20space/
        5212  +
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
        5213  +
host:example.amazonaws.com
        5214  +
        5215  +
host
        5216  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4044   5217   
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
 4045   5218   
new file mode 100644
 4046   5219   
index 0000000..66a80c3
 4047         -
-- /dev/null
        5220  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4048   5221   
@@ -0,0 +1 @@
        5222  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4049   5223   
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
 4050   5224   
new file mode 100644
 4051   5225   
index 0000000..7d1b9d9
 4052         -
-- /dev/null
        5226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4053   5227   
@@ -0,0 +1,3 @@
        5228  +
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
        5229  +
Host:example.amazonaws.com
        5230  +
 4054   5231   
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
 4055   5232   
new file mode 100644
 4056   5233   
index 0000000..b6ff6fb
 4057         -
-- /dev/null
        5234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4058   5235   
@@ -0,0 +1,4 @@
        5236  +
AWS4-ECDSA-P256-SHA256
        5237  +
20150830T123600Z
        5238  +
20150830/service/aws4_request
        5239  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4059   5240   
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
 4060   5241   
new file mode 100644
 4061   5242   
index 0000000..ab509ab
 4062         -
-- /dev/null
        5243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4063   5244   
@@ -0,0 +1,2 @@
        5245  +
GET /example space/ HTTP/1.1
        5246  +
Host:example.amazonaws.com
 4064   5247   
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
 4065   5248   
new file mode 100644
 4066   5249   
index 0000000..0468d80
 4067         -
-- /dev/null
        5250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4068   5251   
@@ -0,0 +1,12 @@
        5252  +
{
        5253  +
    "credentials": {
        5254  +
        "access_key_id": "AKIDEXAMPLE",
        5255  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5256  +
    },
        5257  +
    "expiration_in_seconds": 3600,
        5258  +
    "normalize": true,
        5259  +
    "region": "us-east-1",
        5260  +
    "service": "service",
        5261  +
    "sign_body": false,
        5262  +
    "timestamp": "2015-08-30T12:36:00Z"
        5263  +
}
              \
 No newline at end of file
 4069   5264   
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
 4070   5265   
similarity index 99%
 4071   5266   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4072   5267   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4073   5268   
index b0db648..46d76bb 100644
 4074   5269   
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
 4075   5270   
new file mode 100644
 4076   5271   
index 0000000..53c0cb6
 4077         -
-- /dev/null
        5272  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4078   5273   
@@ -0,0 +1 @@
        5274  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4079   5275   
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
 4080   5276   
new file mode 100644
 4081   5277   
index 0000000..3bdb653
 4082         -
-- /dev/null
        5278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4083   5279   
@@ -0,0 +1,6 @@
        5280  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5281  +
Host:example.amazonaws.com
        5282  +
X-Amz-Date:20150830T123600Z
        5283  +
X-Amz-Region-Set:us-east-1
        5284  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5285  +
 4084   5286   
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
 4085   5287   
similarity index 99%
 4086   5288   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4087   5289   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4088   5290   
index 20c7cd6..3b30173 100644
 4089   5291   
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
 4090   5292   
new file mode 100644
 4091   5293   
index 0000000..379dcb2
 4092         -
-- /dev/null
        5294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4093   5295   
@@ -0,0 +1,4 @@
        5296  +
{
        5297  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5298  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5299  +
}
 4094   5300   
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
 4095   5301   
similarity index 99%
 4096   5302   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4097   5303   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4098   5304   
index f9fb726..7e93f58 100644
 4099   5305   
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
 4100   5306   
new file mode 100644
 4101   5307   
index 0000000..48311a8
 4102         -
-- /dev/null
        5308  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4103   5309   
@@ -0,0 +1 @@
        5310  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4104   5311   
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
 4105   5312   
new file mode 100644
 4106   5313   
index 0000000..82da9be
 4107         -
-- /dev/null
        5314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4108   5315   
@@ -0,0 +1,3 @@
        5316  +
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
        5317  +
Host:example.amazonaws.com
        5318  +
 4109   5319   
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
 4110   5320   
similarity index 99%
 4111   5321   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4112   5322   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4113   5323   
index ef06e89..4aab9a2 100644
 4114   5324   
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
 4115   5325   
similarity index 80%
 4116   5326   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4117   5327   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4118   5328   
index da760cd..a149694 100644
 4119         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5329  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4120   5330   
@@ -1,3 +1,2 @@
 4121   5331   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4122   5332   
Host:example.amazonaws.com
 4123         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4124   5333   
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
 4125   5334   
new file mode 100644
 4126   5335   
index 0000000..0468d80
 4127         -
-- /dev/null
        5336  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4128   5337   
@@ -0,0 +1,12 @@
        5338  +
{
        5339  +
    "credentials": {
        5340  +
        "access_key_id": "AKIDEXAMPLE",
        5341  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5342  +
    },
        5343  +
    "expiration_in_seconds": 3600,
        5344  +
    "normalize": true,
        5345  +
    "region": "us-east-1",
        5346  +
    "service": "service",
        5347  +
    "sign_body": false,
        5348  +
    "timestamp": "2015-08-30T12:36:00Z"
        5349  +
}
              \
 No newline at end of file
 4129   5350   
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
 4130   5351   
new file mode 100644
 4131   5352   
index 0000000..0f1afe7
 4132         -
-- /dev/null
        5353  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4133   5354   
@@ -0,0 +1,9 @@
        5355  +
GET
        5356  +
/%E1%88%B4
        5357  +
        5358  +
host:example.amazonaws.com
        5359  +
x-amz-date:20150830T123600Z
        5360  +
x-amz-region-set:us-east-1
        5361  +
        5362  +
host;x-amz-date;x-amz-region-set
        5363  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4134   5364   
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
 4135   5365   
new file mode 100644
 4136   5366   
index 0000000..4b9af6c
 4137         -
-- /dev/null
        5367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4138   5368   
@@ -0,0 +1 @@
        5369  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4139   5370   
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
 4140   5371   
new file mode 100644
 4141   5372   
index 0000000..d42d7b3
 4142         -
-- /dev/null
        5373  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4143   5374   
@@ -0,0 +1,6 @@
        5375  +
GET /ሴ HTTP/1.1
        5376  +
Host:example.amazonaws.com
        5377  +
X-Amz-Date:20150830T123600Z
        5378  +
X-Amz-Region-Set:us-east-1
        5379  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        5380  +
 4144   5381   
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
 4145   5382   
new file mode 100644
 4146   5383   
index 0000000..0827f62
 4147         -
-- /dev/null
        5384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4148   5385   
@@ -0,0 +1,4 @@
        5386  +
AWS4-ECDSA-P256-SHA256
        5387  +
20150830T123600Z
        5388  +
20150830/service/aws4_request
        5389  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4149   5390   
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
 4150   5391   
new file mode 100644
 4151   5392   
index 0000000..379dcb2
 4152         -
-- /dev/null
        5393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4153   5394   
@@ -0,0 +1,4 @@
        5395  +
{
        5396  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5397  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5398  +
}
 4154   5399   
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
 4155   5400   
new file mode 100644
 4156   5401   
index 0000000..a41a2f8
 4157         -
-- /dev/null
        5402  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4158   5403   
@@ -0,0 +1,7 @@
        5404  +
GET
        5405  +
/%E1%88%B4
        5406  +
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
        5407  +
host:example.amazonaws.com
        5408  +
        5409  +
host
        5410  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4159   5411   
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
 4160   5412   
new file mode 100644
 4161   5413   
index 0000000..a5c7f4f
 4162         -
-- /dev/null
        5414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4163   5415   
@@ -0,0 +1 @@
        5416  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4164   5417   
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
 4165   5418   
new file mode 100644
 4166   5419   
index 0000000..492ed33
 4167         -
-- /dev/null
        5420  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4168   5421   
@@ -0,0 +1,3 @@
        5422  +
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
        5423  +
Host:example.amazonaws.com
        5424  +
 4169   5425   
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
 4170   5426   
new file mode 100644
 4171   5427   
index 0000000..a93108f
 4172         -
-- /dev/null
        5428  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4173   5429   
@@ -0,0 +1,4 @@
        5430  +
AWS4-ECDSA-P256-SHA256
        5431  +
20150830T123600Z
        5432  +
20150830/service/aws4_request
        5433  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4174   5434   
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
 4175   5435   
new file mode 100644
 4176   5436   
index 0000000..9e273f6
 4177         -
-- /dev/null
        5437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4178   5438   
@@ -0,0 +1,2 @@
        5439  +
GET /ሴ HTTP/1.1
        5440  +
Host:example.amazonaws.com
 4179   5441   
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
 4180   5442   
new file mode 100644
 4181   5443   
index 0000000..0468d80
 4182         -
-- /dev/null
        5444  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4183   5445   
@@ -0,0 +1,12 @@
        5446  +
{
        5447  +
    "credentials": {
        5448  +
        "access_key_id": "AKIDEXAMPLE",
        5449  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5450  +
    },
        5451  +
    "expiration_in_seconds": 3600,
        5452  +
    "normalize": true,
        5453  +
    "region": "us-east-1",
        5454  +
    "service": "service",
        5455  +
    "sign_body": false,
        5456  +
    "timestamp": "2015-08-30T12:36:00Z"
        5457  +
}
              \
 No newline at end of file
 4184   5458   
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
 4185   5459   
similarity index 99%
 4186   5460   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4187   5461   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4188   5462   
index bb9d4bf..edc0bb4 100644
 4189   5463   
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
 4190   5464   
new file mode 100644
 4191   5465   
index 0000000..ee9a272
 4192         -
-- /dev/null
        5466  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4193   5467   
@@ -0,0 +1 @@
        5468  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4194   5469   
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
 4195   5470   
new file mode 100644
 4196   5471   
index 0000000..2090343
 4197         -
-- /dev/null
        5472  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4198   5473   
@@ -0,0 +1,6 @@
        5474  +
GET /?Param1=value1 HTTP/1.1
        5475  +
Host:example.amazonaws.com
        5476  +
X-Amz-Date:20150830T123600Z
        5477  +
X-Amz-Region-Set:us-east-1
        5478  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        5479  +
 4199   5480   
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
 4200   5481   
similarity index 99%
 4201   5482   
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
 4202   5483   
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
 4203   5484   
index a176f1d..06ed74f 100644
 4204   5485   
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
 4205   5486   
new file mode 100644
 4206   5487   
index 0000000..379dcb2
 4207         -
-- /dev/null
        5488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4208   5489   
@@ -0,0 +1,4 @@
        5490  +
{
        5491  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5492  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5493  +
}
 4209   5494   
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
 4210   5495   
similarity index 99%
 4211   5496   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4212   5497   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4213   5498   
index 344384b..a875d70 100644
 4214   5499   
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
 4215   5500   
new file mode 100644
 4216   5501   
index 0000000..ef93624
 4217         -
-- /dev/null
        5502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4218   5503   
@@ -0,0 +1 @@
        5504  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4219   5505   
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
 4220   5506   
new file mode 100644
 4221   5507   
index 0000000..92829f7
 4222         -
-- /dev/null
        5508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4223   5509   
@@ -0,0 +1,3 @@
        5510  +
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
        5511  +
Host:example.amazonaws.com
        5512  +
 4224   5513   
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
 4225   5514   
similarity index 99%
 4226   5515   
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
 4227   5516   
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
 4228   5517   
index b625052..4ff9191 100644
 4229   5518   
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
 4230   5519   
similarity index 67%
 4231   5520   
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
 4232   5521   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4233   5522   
index 970d0a0..f4a03bb 100644
 4234         -
-- 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
        5523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4235   5524   
@@ -1,3 +1,2 @@
 4236   5525   
GET /?Param1=value1 HTTP/1.1
 4237   5526   
Host:example.amazonaws.com
 4238         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4239   5527   
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
 4240   5528   
new file mode 100644
 4241   5529   
index 0000000..0468d80
 4242         -
-- /dev/null
        5530  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4243   5531   
@@ -0,0 +1,12 @@
        5532  +
{
        5533  +
    "credentials": {
        5534  +
        "access_key_id": "AKIDEXAMPLE",
        5535  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5536  +
    },
        5537  +
    "expiration_in_seconds": 3600,
        5538  +
    "normalize": true,
        5539  +
    "region": "us-east-1",
        5540  +
    "service": "service",
        5541  +
    "sign_body": false,
        5542  +
    "timestamp": "2015-08-30T12:36:00Z"
        5543  +
}
              \
 No newline at end of file
 4244   5544   
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
 4245   5545   
new file mode 100644
 4246   5546   
index 0000000..da07537
 4247         -
-- /dev/null
        5547  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4248   5548   
@@ -0,0 +1,9 @@
        5549  +
GET
        5550  +
/
        5551  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        5552  +
host:example.amazonaws.com
        5553  +
x-amz-date:20150830T123600Z
        5554  +
x-amz-region-set:us-east-1
        5555  +
        5556  +
host;x-amz-date;x-amz-region-set
        5557  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4249   5558   
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
 4250   5559   
new file mode 100644
 4251   5560   
index 0000000..edb21e5
 4252         -
-- /dev/null
        5561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4253   5562   
@@ -0,0 +1 @@
        5563  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4254   5564   
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
 4255   5565   
new file mode 100644
 4256   5566   
index 0000000..e60394c
 4257         -
-- /dev/null
        5567  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4258   5568   
@@ -0,0 +1,6 @@
        5569  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5570  +
Host:example.amazonaws.com
        5571  +
X-Amz-Date:20150830T123600Z
        5572  +
X-Amz-Region-Set:us-east-1
        5573  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        5574  +
 4259   5575   
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
 4260   5576   
new file mode 100644
 4261   5577   
index 0000000..1dfc886
 4262         -
-- /dev/null
        5578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4263   5579   
@@ -0,0 +1,4 @@
        5580  +
AWS4-ECDSA-P256-SHA256
        5581  +
20150830T123600Z
        5582  +
20150830/service/aws4_request
        5583  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4264   5584   
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
 4265   5585   
new file mode 100644
 4266   5586   
index 0000000..379dcb2
 4267         -
-- /dev/null
        5587  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4268   5588   
@@ -0,0 +1,4 @@
        5589  +
{
        5590  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5591  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5592  +
}
 4269   5593   
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
 4270   5594   
new file mode 100644
 4271   5595   
index 0000000..e94dc0c
 4272         -
-- /dev/null
        5596  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4273   5597   
@@ -0,0 +1,7 @@
        5598  +
GET
        5599  +
/
        5600  +
%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
        5601  +
host:example.amazonaws.com
        5602  +
        5603  +
host
        5604  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4274   5605   
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
 4275   5606   
new file mode 100644
 4276   5607   
index 0000000..7489437
 4277         -
-- /dev/null
        5608  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4278   5609   
@@ -0,0 +1 @@
        5610  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4279   5611   
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
 4280   5612   
new file mode 100644
 4281   5613   
index 0000000..90c0e73
 4282         -
-- /dev/null
        5614  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4283   5615   
@@ -0,0 +1,3 @@
        5616  +
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
        5617  +
Host:example.amazonaws.com
        5618  +
 4284   5619   
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
 4285   5620   
new file mode 100644
 4286   5621   
index 0000000..ab8a711
 4287         -
-- /dev/null
        5622  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4288   5623   
@@ -0,0 +1,4 @@
        5624  +
AWS4-ECDSA-P256-SHA256
        5625  +
20150830T123600Z
        5626  +
20150830/service/aws4_request
        5627  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4289   5628   
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
 4290   5629   
new file mode 100644
 4291   5630   
index 0000000..368c6e3
 4292         -
-- /dev/null
        5631  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4293   5632   
@@ -0,0 +1,2 @@
        5633  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5634  +
Host:example.amazonaws.com
 4294   5635   
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
 4295   5636   
new file mode 100644
 4296   5637   
index 0000000..0468d80
 4297         -
-- /dev/null
        5638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4298   5639   
@@ -0,0 +1,12 @@
        5640  +
{
        5641  +
    "credentials": {
        5642  +
        "access_key_id": "AKIDEXAMPLE",
        5643  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5644  +
    },
        5645  +
    "expiration_in_seconds": 3600,
        5646  +
    "normalize": true,
        5647  +
    "region": "us-east-1",
        5648  +
    "service": "service",
        5649  +
    "sign_body": false,
        5650  +
    "timestamp": "2015-08-30T12:36:00Z"
        5651  +
}
              \
 No newline at end of file
 4299   5652   
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
 4300   5653   
similarity index 99%
 4301   5654   
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
 4302   5655   
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
 4303   5656   
index 74f625a..3db56f7 100644
 4304   5657   
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
 4305   5658   
new file mode 100644
 4306   5659   
index 0000000..e6042bc
 4307         -
-- /dev/null
        5660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4308   5661   
@@ -0,0 +1 @@
        5662  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4309   5663   
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
 4310   5664   
new file mode 100644
 4311   5665   
index 0000000..5505969
 4312         -
-- /dev/null
        5666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4313   5667   
@@ -0,0 +1,6 @@
        5668  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        5669  +
Host:example.amazonaws.com
        5670  +
X-Amz-Date:20150830T123600Z
        5671  +
X-Amz-Region-Set:us-east-1
        5672  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        5673  +
 4314   5674   
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
 4315   5675   
similarity index 99%
 4316   5676   
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
 4317   5677   
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
 4318   5678   
index 44873b7..e8f5e31 100644
 4319   5679   
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
 4320   5680   
new file mode 100644
 4321   5681   
index 0000000..379dcb2
 4322         -
-- /dev/null
        5682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4323   5683   
@@ -0,0 +1,4 @@
        5684  +
{
        5685  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5686  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5687  +
}
 4324   5688   
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
 4325   5689   
similarity index 99%
 4326   5690   
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
 4327   5691   
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
 4328   5692   
index 6d30727..3fe6a9f 100644
 4329   5693   
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
 4330   5694   
new file mode 100644
 4331   5695   
index 0000000..3f35de8
 4332         -
-- /dev/null
        5696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4333   5697   
@@ -0,0 +1 @@
        5698  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 4334   5699   
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
 4335   5700   
new file mode 100644
 4336   5701   
index 0000000..30b336b
 4337         -
-- /dev/null
        5702  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 4338   5703   
@@ -0,0 +1,3 @@
        5704  +
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
        5705  +
Host:example.amazonaws.com
        5706  +
 4339   5707   
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
 4340   5708   
similarity index 99%
 4341   5709   
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
 4342   5710   
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
 4343   5711   
index 99d0510..7f0565f 100644
 4344   5712   
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
 4345   5713   
similarity index 100%
 4346   5714   
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
 4347   5715   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 4348   5716   
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
 4349   5717   
new file mode 100644
 4350   5718   
index 0000000..0468d80
 4351         -
-- /dev/null
        5719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 4352   5720   
@@ -0,0 +1,12 @@
        5721  +
{
        5722  +
    "credentials": {
        5723  +
        "access_key_id": "AKIDEXAMPLE",
        5724  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5725  +
    },
        5726  +
    "expiration_in_seconds": 3600,
        5727  +
    "normalize": true,
        5728  +
    "region": "us-east-1",
        5729  +
    "service": "service",
        5730  +
    "sign_body": false,
        5731  +
    "timestamp": "2015-08-30T12:36:00Z"
        5732  +
}
              \
 No newline at end of file
 4353   5733   
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
 4354   5734   
similarity index 99%
 4355   5735   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 4356   5736   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4357   5737   
index 816c862..cc4537a 100644
 4358   5738   
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
 4359   5739   
new file mode 100644
 4360   5740   
index 0000000..70d38c1
 4361         -
-- /dev/null
        5741  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 4362   5742   
@@ -0,0 +1 @@
        5743  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 4363   5744   
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
 4364   5745   
new file mode 100644
 4365   5746   
index 0000000..0647eea
 4366         -
-- /dev/null
        5747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 4367   5748   
@@ -0,0 +1,6 @@
        5749  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5750  +
Host:example.amazonaws.com
        5751  +
X-Amz-Date:20150830T123600Z
        5752  +
X-Amz-Region-Set:us-east-1
        5753  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        5754  +
 4368   5755   
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
 4369   5756   
similarity index 99%
 4370   5757   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 4371   5758   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4372   5759   
index 6129fc5..cc19d14 100644
 4373   5760   
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
 4374   5761   
new file mode 100644
 4375   5762   
index 0000000..379dcb2
 4376         -
-- /dev/null
        5763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 4377   5764   
@@ -0,0 +1,4 @@
        5765  +
{
        5766  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5767  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5768  +
}
 4378   5769   
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
 4379   5770   
similarity index 99%
 4380   5771   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 4381   5772   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4382   5773   
index b77ee9f..ed6a10e 100644
 4383   5774   
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
 4384   5775   
new file mode 100644
 4385   5776   
index 0000000..2ceba7b
 4386         -
-- /dev/null
        5777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 4387   5778   
@@ -0,0 +1 @@
        5779  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 4388   5780   
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
 4389   5781   
new file mode 100644
 4390   5782   
index 0000000..0cd6d0a
 4391         -
-- /dev/null
        5783  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 4392   5784   
@@ -0,0 +1,3 @@
        5785  +
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
        5786  +
Host:example.amazonaws.com
        5787  +
 4393   5788   
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
 4394   5789   
similarity index 99%
 4395   5790   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 4396   5791   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4397   5792   
index 1cfed7a..aad1421 100644
 4398   5793   
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
 4399   5794   
similarity index 86%
 4400   5795   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 4401   5796   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4402   5797   
index d2833b3..36b2fe3 100644
 4403         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        5798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4404   5799   
@@ -1,3 +1,2 @@
 4405   5800   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4406   5801   
Host:example.amazonaws.com
 4407         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4408   5802   
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
 4409   5803   
new file mode 100644
 4410   5804   
index 0000000..0468d80
 4411         -
-- /dev/null
        5805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 4412   5806   
@@ -0,0 +1,12 @@
        5807  +
{
        5808  +
    "credentials": {
        5809  +
        "access_key_id": "AKIDEXAMPLE",
        5810  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5811  +
    },
        5812  +
    "expiration_in_seconds": 3600,
        5813  +
    "normalize": true,
        5814  +
    "region": "us-east-1",
        5815  +
    "service": "service",
        5816  +
    "sign_body": false,
        5817  +
    "timestamp": "2015-08-30T12:36:00Z"
        5818  +
}
              \
 No newline at end of file
 4413   5819   
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
 4414   5820   
new file mode 100644
 4415   5821   
index 0000000..76db73d
 4416         -
-- /dev/null
        5822  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 4417   5823   
@@ -0,0 +1,9 @@
        5824  +
GET
        5825  +
/
        5826  +
        5827  +
host:example.amazonaws.com
        5828  +
x-amz-date:20150830T123600Z
        5829  +
x-amz-region-set:us-east-1
        5830  +
        5831  +
host;x-amz-date;x-amz-region-set
        5832  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4418   5833   
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
 4419   5834   
new file mode 100644
 4420   5835   
index 0000000..281cc62
 4421         -
-- /dev/null
        5836  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 4422   5837   
@@ -0,0 +1 @@
        5838  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 4423   5839   
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
 4424   5840   
new file mode 100644
 4425   5841   
index 0000000..cce9925
 4426         -
-- /dev/null
        5842  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 4427   5843   
@@ -0,0 +1,6 @@
        5844  +
GET / HTTP/1.1
        5845  +
Host:example.amazonaws.com
        5846  +
X-Amz-Date:20150830T123600Z
        5847  +
X-Amz-Region-Set:us-east-1
        5848  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        5849  +
 4428   5850   
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
 4429   5851   
new file mode 100644
 4430   5852   
index 0000000..600f1d8
 4431         -
-- /dev/null
        5853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 4432   5854   
@@ -0,0 +1,4 @@
        5855  +
AWS4-ECDSA-P256-SHA256
        5856  +
20150830T123600Z
        5857  +
20150830/service/aws4_request
        5858  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4433   5859   
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
 4434   5860   
new file mode 100644
 4435   5861   
index 0000000..379dcb2
 4436         -
-- /dev/null
        5862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 4437   5863   
@@ -0,0 +1,4 @@
        5864  +
{
        5865  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5866  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5867  +
}
 4438   5868   
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
 4439   5869   
new file mode 100644
 4440   5870   
index 0000000..779c51c
 4441         -
-- /dev/null
        5871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 4442   5872   
@@ -0,0 +1,7 @@
        5873  +
GET
        5874  +
/
        5875  +
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
        5876  +
host:example.amazonaws.com
        5877  +
        5878  +
host
        5879  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4443   5880   
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
 4444   5881   
new file mode 100644
 4445   5882   
index 0000000..2979e5e
 4446         -
-- /dev/null
        5883  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 4447   5884   
@@ -0,0 +1 @@
        5885  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 4448   5886   
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
 4449   5887   
new file mode 100644
 4450   5888   
index 0000000..1b3179c
 4451         -
-- /dev/null
        5889  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 4452   5890   
@@ -0,0 +1,3 @@
        5891  +
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
        5892  +
Host:example.amazonaws.com
        5893  +
 4453   5894   
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
 4454   5895   
new file mode 100644
 4455   5896   
index 0000000..6e29a7e
 4456         -
-- /dev/null
        5897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 4457   5898   
@@ -0,0 +1,4 @@
        5899  +
AWS4-ECDSA-P256-SHA256
        5900  +
20150830T123600Z
        5901  +
20150830/service/aws4_request
        5902  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4458   5903   
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
 4459   5904   
similarity index 60%
 4460   5905   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 4461   5906   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4462   5907   
index 0f7a9bf..e659c3b 100644
 4463         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        5908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4464   5909   
@@ -1,3 +1,2 @@
 4465   5910   
GET / HTTP/1.1
 4466   5911   
Host:example.amazonaws.com
 4467         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4468   5912   
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
 4469   5913   
new file mode 100644
 4470   5914   
index 0000000..0468d80
 4471         -
-- /dev/null
        5915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 4472   5916   
@@ -0,0 +1,12 @@
        5917  +
{
        5918  +
    "credentials": {
        5919  +
        "access_key_id": "AKIDEXAMPLE",
        5920  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5921  +
    },
        5922  +
    "expiration_in_seconds": 3600,
        5923  +
    "normalize": true,
        5924  +
    "region": "us-east-1",
        5925  +
    "service": "service",
        5926  +
    "sign_body": false,
        5927  +
    "timestamp": "2015-08-30T12:36:00Z"
        5928  +
}
              \
 No newline at end of file
 4473   5929   
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
 4474   5930   
new file mode 100644
 4475   5931   
index 0000000..8841ddf
 4476         -
-- /dev/null
        5932  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 4477   5933   
@@ -0,0 +1,9 @@
        5934  +
GET
        5935  +
/
        5936  +
%E1%88%B4=bar
        5937  +
host:example.amazonaws.com
        5938  +
x-amz-date:20150830T123600Z
        5939  +
x-amz-region-set:us-east-1
        5940  +
        5941  +
host;x-amz-date;x-amz-region-set
        5942  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4478   5943   
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
 4479   5944   
new file mode 100644
 4480   5945   
index 0000000..1497add
 4481         -
-- /dev/null
        5946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 4482   5947   
@@ -0,0 +1 @@
        5948  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 4483   5949   
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
 4484   5950   
new file mode 100644
 4485   5951   
index 0000000..961bc10
 4486         -
-- /dev/null
        5952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 4487   5953   
@@ -0,0 +1,6 @@
        5954  +
GET /?ሴ=bar HTTP/1.1
        5955  +
Host:example.amazonaws.com
        5956  +
X-Amz-Date:20150830T123600Z
        5957  +
X-Amz-Region-Set:us-east-1
        5958  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        5959  +
 4488   5960   
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
 4489   5961   
new file mode 100644
 4490   5962   
index 0000000..e78ed70
 4491         -
-- /dev/null
        5963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 4492   5964   
@@ -0,0 +1,4 @@
        5965  +
AWS4-ECDSA-P256-SHA256
        5966  +
20150830T123600Z
        5967  +
20150830/service/aws4_request
        5968  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 4493   5969   
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
 4494   5970   
new file mode 100644
 4495   5971   
index 0000000..379dcb2
 4496         -
-- /dev/null
        5972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 4497   5973   
@@ -0,0 +1,4 @@
        5974  +
{
        5975  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5976  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5977  +
}
 4498   5978   
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
 4499   5979   
new file mode 100644
 4500   5980   
index 0000000..6d5ae93
 4501         -
-- /dev/null
        5981  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 4502   5982   
@@ -0,0 +1,7 @@
        5983  +
GET
        5984  +
/
        5985  +
%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
        5986  +
host:example.amazonaws.com
        5987  +
        5988  +
host
        5989  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4503   5990   
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
 4504   5991   
new file mode 100644
 4505   5992   
index 0000000..92107f2
 4506         -
-- /dev/null
        5993  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 4507   5994   
@@ -0,0 +1 @@
        5995  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 4508   5996   
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
 4509   5997   
new file mode 100644
 4510   5998   
index 0000000..bb8a75b
 4511         -
-- /dev/null
        5999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 4512   6000   
@@ -0,0 +1,3 @@
        6001  +
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
        6002  +
Host:example.amazonaws.com
        6003  +
 4513   6004   
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
 4514   6005   
new file mode 100644
 4515   6006   
index 0000000..9fa94c7
 4516         -
-- /dev/null
        6007  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 4517   6008   
@@ -0,0 +1,4 @@
        6009  +
AWS4-ECDSA-P256-SHA256
        6010  +
20150830T123600Z
        6011  +
20150830/service/aws4_request
        6012  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 4518   6013   
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
 4519   6014   
new file mode 100644
 4520   6015   
index 0000000..aff333a
 4521         -
-- /dev/null
        6016  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 4522   6017   
@@ -0,0 +1,2 @@
        6018  +
GET /?ሴ=bar HTTP/1.1
        6019  +
Host:example.amazonaws.com
 4523   6020   
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
 4524   6021   
new file mode 100644
 4525   6022   
index 0000000..a334e18
 4526         -
-- /dev/null
        6023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 4527   6024   
@@ -0,0 +1,13 @@
        6025  +
{
        6026  +
    "credentials": {
        6027  +
        "access_key_id": "AKIDEXAMPLE",
        6028  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6029  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6030  +
    },
        6031  +
    "expiration_in_seconds": 3600,
        6032  +
    "normalize": true,
        6033  +
    "region": "us-east-1",
        6034  +
    "service": "service",
        6035  +
    "sign_body": false,
        6036  +
    "timestamp": "2015-08-30T12:36:00Z"
        6037  +
}
              \
 No newline at end of file
 4528   6038   
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
 4529   6039   
similarity index 99%
 4530   6040   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 4531   6041   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 4532   6042   
index f14defd..0e9ad42 100644
 4533   6043   
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
 4534   6044   
new file mode 100644
 4535   6045   
index 0000000..a7673b5
 4536         -
-- /dev/null
        6046  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 4537   6047   
@@ -0,0 +1 @@
        6048  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 4538   6049   
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
 4539   6050   
new file mode 100644
 4540   6051   
index 0000000..ed16e76
 4541         -
-- /dev/null
        6052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 4542   6053   
@@ -0,0 +1,7 @@
        6054  +
GET / HTTP/1.1
        6055  +
Host:example.amazonaws.com
        6056  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6057  +
X-Amz-Date:20150830T123600Z
        6058  +
X-Amz-Region-Set:us-east-1
        6059  +
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
        6060  +
 4543   6061   
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
 4544   6062   
similarity index 99%
 4545   6063   
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
 4546   6064   
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
 4547   6065   
index 4edece5..6c1ec65 100644
 4548   6066   
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
 4549   6067   
new file mode 100644
 4550   6068   
index 0000000..379dcb2
 4551         -
-- /dev/null
        6069  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 4552   6070   
@@ -0,0 +1,4 @@
        6071  +
{
        6072  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6073  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6074  +
}
 4553   6075   
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
 4554   6076   
similarity index 99%
 4555   6077   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 4556   6078   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 4557   6079   
index 7c042af..1876b42 100644
 4558   6080   
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
 4559   6081   
new file mode 100644
 4560   6082   
index 0000000..903dfb4
 4561         -
-- /dev/null
        6083  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 4562   6084   
@@ -0,0 +1 @@
        6085  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 4563   6086   
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
 4564   6087   
new file mode 100644
 4565   6088   
index 0000000..bf1d246
 4566         -
-- /dev/null
        6089  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 4567   6090   
@@ -0,0 +1,3 @@
        6091  +
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
        6092  +
Host:example.amazonaws.com
        6093  +
 4568   6094   
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
 4569   6095   
similarity index 99%
 4570   6096   
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
 4571   6097   
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
 4572   6098   
index 0fd066a..f1b1790 100644
 4573   6099   
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
 4574   6100   
similarity index 60%
 4575   6101   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 4576   6102   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4577   6103   
index 0f7a9bf..e659c3b 100644
 4578         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4579   6105   
@@ -1,3 +1,2 @@
 4580   6106   
GET / HTTP/1.1
 4581   6107   
Host:example.amazonaws.com
 4582         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4583   6108   
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
 4584   6109   
new file mode 100644
 4585   6110   
index 0000000..76db73d
 4586         -
-- /dev/null
        6111  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 4587   6112   
@@ -0,0 +1,9 @@
        6113  +
GET
        6114  +
/
        6115  +
        6116  +
host:example.amazonaws.com
        6117  +
x-amz-date:20150830T123600Z
        6118  +
x-amz-region-set:us-east-1
        6119  +
        6120  +
host;x-amz-date;x-amz-region-set
        6121  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4588   6122   
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
 4589   6123   
new file mode 100644
 4590   6124   
index 0000000..0468d80
 4591         -
-- /dev/null
        6125  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 4592   6126   
@@ -0,0 +1,12 @@
        6127  +
{
        6128  +
    "credentials": {
        6129  +
        "access_key_id": "AKIDEXAMPLE",
        6130  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6131  +
    },
        6132  +
    "expiration_in_seconds": 3600,
        6133  +
    "normalize": true,
        6134  +
    "region": "us-east-1",
        6135  +
    "service": "service",
        6136  +
    "sign_body": false,
        6137  +
    "timestamp": "2015-08-30T12:36:00Z"
        6138  +
}
              \
 No newline at end of file
 4593   6139   
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
 4594   6140   
new file mode 100644
 4595   6141   
index 0000000..76db73d
 4596         -
-- /dev/null
        6142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 4597   6143   
@@ -0,0 +1,9 @@
        6144  +
GET
        6145  +
/
        6146  +
        6147  +
host:example.amazonaws.com
        6148  +
x-amz-date:20150830T123600Z
        6149  +
x-amz-region-set:us-east-1
        6150  +
        6151  +
host;x-amz-date;x-amz-region-set
        6152  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4598   6153   
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
 4599   6154   
new file mode 100644
 4600   6155   
index 0000000..a96ff24
 4601         -
-- /dev/null
        6156  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 4602   6157   
@@ -0,0 +1 @@
        6158  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 4603   6159   
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
 4604   6160   
new file mode 100644
 4605   6161   
index 0000000..689078b
 4606         -
-- /dev/null
        6162  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 4607   6163   
@@ -0,0 +1,6 @@
        6164  +
GET / HTTP/1.1
        6165  +
Host:example.amazonaws.com
        6166  +
X-Amz-Date:20150830T123600Z
        6167  +
X-Amz-Region-Set:us-east-1
        6168  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6169  +
 4608   6170   
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
 4609   6171   
new file mode 100644
 4610   6172   
index 0000000..600f1d8
 4611         -
-- /dev/null
        6173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 4612   6174   
@@ -0,0 +1,4 @@
        6175  +
AWS4-ECDSA-P256-SHA256
        6176  +
20150830T123600Z
        6177  +
20150830/service/aws4_request
        6178  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4613   6179   
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
 4614   6180   
new file mode 100644
 4615   6181   
index 0000000..379dcb2
 4616         -
-- /dev/null
        6182  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 4617   6183   
@@ -0,0 +1,4 @@
        6184  +
{
        6185  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6186  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6187  +
}
 4618   6188   
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
 4619   6189   
new file mode 100644
 4620   6190   
index 0000000..779c51c
 4621         -
-- /dev/null
        6191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 4622   6192   
@@ -0,0 +1,7 @@
        6193  +
GET
        6194  +
/
        6195  +
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
        6196  +
host:example.amazonaws.com
        6197  +
        6198  +
host
        6199  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4623   6200   
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
 4624   6201   
new file mode 100644
 4625   6202   
index 0000000..cc42158
 4626         -
-- /dev/null
        6203  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 4627   6204   
@@ -0,0 +1 @@
        6205  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 4628   6206   
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
 4629   6207   
new file mode 100644
 4630   6208   
index 0000000..dc6d01d
 4631         -
-- /dev/null
        6209  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 4632   6210   
@@ -0,0 +1,3 @@
        6211  +
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
        6212  +
Host:example.amazonaws.com
        6213  +
 4633   6214   
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
 4634   6215   
new file mode 100644
 4635   6216   
index 0000000..6e29a7e
 4636         -
-- /dev/null
        6217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 4637   6218   
@@ -0,0 +1,4 @@
        6219  +
AWS4-ECDSA-P256-SHA256
        6220  +
20150830T123600Z
        6221  +
20150830/service/aws4_request
        6222  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4638   6223   
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
 4639   6224   
new file mode 100644
 4640   6225   
index 0000000..e659c3b
 4641         -
-- /dev/null
        6226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 4642   6227   
@@ -0,0 +1,2 @@
        6228  +
GET / HTTP/1.1
        6229  +
Host:example.amazonaws.com
 4643   6230   
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
 4644   6231   
new file mode 100644
 4645   6232   
index 0000000..600f1d8
 4646         -
-- /dev/null
        6233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 4647   6234   
@@ -0,0 +1,4 @@
        6235  +
AWS4-ECDSA-P256-SHA256
        6236  +
20150830T123600Z
        6237  +
20150830/service/aws4_request
        6238  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4648   6239   
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
 4649   6240   
new file mode 100644
 4650   6241   
index 0000000..0468d80
 4651         -
-- /dev/null
        6242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 4652   6243   
@@ -0,0 +1,12 @@
        6244  +
{
        6245  +
    "credentials": {
        6246  +
        "access_key_id": "AKIDEXAMPLE",
        6247  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6248  +
    },
        6249  +
    "expiration_in_seconds": 3600,
        6250  +
    "normalize": true,
        6251  +
    "region": "us-east-1",
        6252  +
    "service": "service",
        6253  +
    "sign_body": false,
        6254  +
    "timestamp": "2015-08-30T12:36:00Z"
        6255  +
}
              \
 No newline at end of file
 4653   6256   
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
 4654   6257   
similarity index 99%
 4655   6258   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 4656   6259   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 4657   6260   
index a6942c1..e881ac7 100644
 4658   6261   
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
 4659   6262   
new file mode 100644
 4660   6263   
index 0000000..4210210
 4661         -
-- /dev/null
        6264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 4662   6265   
@@ -0,0 +1 @@
        6266  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 4663   6267   
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
 4664   6268   
new file mode 100644
 4665   6269   
index 0000000..257b110
 4666         -
-- /dev/null
        6270  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 4667   6271   
@@ -0,0 +1,6 @@
        6272  +
POST / HTTP/1.1
        6273  +
Host:example.amazonaws.com
        6274  +
X-Amz-Date:20150830T123600Z
        6275  +
X-Amz-Region-Set:us-east-1
        6276  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        6277  +
 4668   6278   
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
 4669   6279   
similarity index 99%
 4670   6280   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 4671   6281   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 4672   6282   
index d5650cb..f8adf13 100644
 4673   6283   
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
 4674   6284   
new file mode 100644
 4675   6285   
index 0000000..379dcb2
 4676         -
-- /dev/null
        6286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 4677   6287   
@@ -0,0 +1,4 @@
        6288  +
{
        6289  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6290  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6291  +
}
 4678   6292   
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
 4679   6293   
similarity index 99%
 4680   6294   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 4681   6295   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 4682   6296   
index e48ce07..5ea8e3c 100644
 4683   6297   
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
 4684   6298   
new file mode 100644
 4685   6299   
index 0000000..9e2069e
 4686         -
-- /dev/null
        6300  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 4687   6301   
@@ -0,0 +1 @@
        6302  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 4688   6303   
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
 4689   6304   
new file mode 100644
 4690   6305   
index 0000000..67f5d29
 4691         -
-- /dev/null
        6306  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 4692   6307   
@@ -0,0 +1,3 @@
        6308  +
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
        6309  +
Host:example.amazonaws.com
        6310  +
 4693   6311   
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
 4694   6312   
similarity index 99%
 4695   6313   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 4696   6314   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 4697   6315   
index 34e3382..711c162 100644
 4698   6316   
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
 4699   6317   
similarity index 61%
 4700   6318   
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
 4701   6319   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4702   6320   
index 3dc4179..3f0a82a 100644
 4703         -
-- 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
        6321  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4704   6322   
@@ -1,3 +1,2 @@
 4705   6323   
POST / HTTP/1.1
 4706   6324   
Host:example.amazonaws.com
 4707         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4708   6325   
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
 4709   6326   
new file mode 100644
 4710   6327   
index 0000000..0468d80
 4711         -
-- /dev/null
        6328  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 4712   6329   
@@ -0,0 +1,12 @@
        6330  +
{
        6331  +
    "credentials": {
        6332  +
        "access_key_id": "AKIDEXAMPLE",
        6333  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6334  +
    },
        6335  +
    "expiration_in_seconds": 3600,
        6336  +
    "normalize": true,
        6337  +
    "region": "us-east-1",
        6338  +
    "service": "service",
        6339  +
    "sign_body": false,
        6340  +
    "timestamp": "2015-08-30T12:36:00Z"
        6341  +
}
              \
 No newline at end of file
 4713   6342   
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
 4714   6343   
similarity index 99%
 4715   6344   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 4716   6345   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 4717   6346   
index a8e1727..2883822 100644
 4718   6347   
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
 4719   6348   
new file mode 100644
 4720   6349   
index 0000000..e3c2e6e
 4721         -
-- /dev/null
        6350  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 4722   6351   
@@ -0,0 +1 @@
        6352  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 4723   6353   
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
 4724   6354   
new file mode 100644
 4725   6355   
index 0000000..1d6e288
 4726         -
-- /dev/null
        6356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 4727   6357   
@@ -0,0 +1,7 @@
        6358  +
POST / HTTP/1.1
        6359  +
Host:example.amazonaws.com
        6360  +
My-Header1:value1
        6361  +
X-Amz-Date:20150830T123600Z
        6362  +
X-Amz-Region-Set:us-east-1
        6363  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        6364  +
 4728   6365   
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
 4729   6366   
similarity index 99%
 4730   6367   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 4731   6368   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 4732   6369   
index f6e3e9b..7c5236a 100644
 4733   6370   
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
 4734   6371   
new file mode 100644
 4735   6372   
index 0000000..379dcb2
 4736         -
-- /dev/null
        6373  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 4737   6374   
@@ -0,0 +1,4 @@
        6375  +
{
        6376  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6377  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6378  +
}
 4738   6379   
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
 4739   6380   
similarity index 99%
 4740   6381   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 4741   6382   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 4742   6383   
index 0ae73e1..2cf3f29 100644
 4743   6384   
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
 4744   6385   
new file mode 100644
 4745   6386   
index 0000000..2a08401
 4746         -
-- /dev/null
        6387  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 4747   6388   
@@ -0,0 +1 @@
        6389  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 4748   6390   
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
 4749   6391   
new file mode 100644
 4750   6392   
index 0000000..8d2343f
 4751         -
-- /dev/null
        6393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 4752   6394   
@@ -0,0 +1,4 @@
        6395  +
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
        6396  +
Host:example.amazonaws.com
        6397  +
My-Header1:value1
        6398  +
 4753   6399   
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
 4754   6400   
similarity index 99%
 4755   6401   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 4756   6402   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 4757   6403   
index 8cb96bf..2c4db7a 100644
 4758   6404   
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
 4759   6405   
similarity index 69%
 4760   6406   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 4761   6407   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4762   6408   
index 0253f19..917720e 100644
 4763         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        6409  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4764   6410   
@@ -1,4 +1,3 @@
 4765   6411   
POST / HTTP/1.1
 4766   6412   
Host:example.amazonaws.com
 4767   6413   
My-Header1:value1
 4768         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4769   6414   
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
 4770   6415   
new file mode 100644
 4771   6416   
index 0000000..0468d80
 4772         -
-- /dev/null
        6417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 4773   6418   
@@ -0,0 +1,12 @@
        6419  +
{
        6420  +
    "credentials": {
        6421  +
        "access_key_id": "AKIDEXAMPLE",
        6422  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6423  +
    },
        6424  +
    "expiration_in_seconds": 3600,
        6425  +
    "normalize": true,
        6426  +
    "region": "us-east-1",
        6427  +
    "service": "service",
        6428  +
    "sign_body": false,
        6429  +
    "timestamp": "2015-08-30T12:36:00Z"
        6430  +
}
              \
 No newline at end of file
 4774   6431   
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
 4775   6432   
similarity index 99%
 4776   6433   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 4777   6434   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 4778   6435   
index 1dc3ef8..164e65c 100644
 4779   6436   
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
 4780   6437   
new file mode 100644
 4781   6438   
index 0000000..7072b0e
 4782         -
-- /dev/null
        6439  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 4783   6440   
@@ -0,0 +1 @@
        6441  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 4784   6442   
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
 4785   6443   
new file mode 100644
 4786   6444   
index 0000000..17f5e3e
 4787         -
-- /dev/null
        6445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 4788   6446   
@@ -0,0 +1,7 @@
        6447  +
POST / HTTP/1.1
        6448  +
Host:example.amazonaws.com
        6449  +
My-Header1:VALUE1
        6450  +
X-Amz-Date:20150830T123600Z
        6451  +
X-Amz-Region-Set:us-east-1
        6452  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        6453  +
 4789   6454   
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
 4790   6455   
similarity index 99%
 4791   6456   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 4792   6457   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 4793   6458   
index 59c7e45..620f54e 100644
 4794   6459   
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
 4795   6460   
new file mode 100644
 4796   6461   
index 0000000..379dcb2
 4797         -
-- /dev/null
        6462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 4798   6463   
@@ -0,0 +1,4 @@
        6464  +
{
        6465  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6466  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6467  +
}
 4799   6468   
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
 4800   6469   
similarity index 99%
 4801   6470   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 4802   6471   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 4803   6472   
index 377e6f3..23e0da3 100644
 4804   6473   
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
 4805   6474   
new file mode 100644
 4806   6475   
index 0000000..a18acb8
 4807         -
-- /dev/null
        6476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 4808   6477   
@@ -0,0 +1 @@
        6478  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 4809   6479   
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
 4810   6480   
new file mode 100644
 4811   6481   
index 0000000..7cbdcfa
 4812         -
-- /dev/null
        6482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 4813   6483   
@@ -0,0 +1,4 @@
        6484  +
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
        6485  +
Host:example.amazonaws.com
        6486  +
My-Header1:VALUE1
        6487  +
 4814   6488   
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
 4815   6489   
similarity index 99%
 4816   6490   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 4817   6491   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 4818   6492   
index 84a7afd..0c90627 100644
 4819   6493   
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
 4820   6494   
similarity index 69%
 4821   6495   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 4822   6496   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4823   6497   
index 3f9987a..5f14c91 100644
 4824         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        6498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4825   6499   
@@ -1,4 +1,3 @@
 4826   6500   
POST / HTTP/1.1
 4827   6501   
Host:example.amazonaws.com
 4828   6502   
My-Header1:VALUE1
 4829         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4830   6503   
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
 4831   6504   
new file mode 100644
 4832   6505   
index 0000000..8f1d5ce
 4833         -
-- /dev/null
        6506  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 4834   6507   
@@ -0,0 +1,14 @@
        6508  +
{
        6509  +
    "credentials": {
        6510  +
        "access_key_id": "AKIDEXAMPLE",
        6511  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6512  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6513  +
    },
        6514  +
    "expiration_in_seconds": 3600,
        6515  +
    "normalize": true,
        6516  +
    "region": "us-east-1",
        6517  +
    "service": "service",
        6518  +
    "sign_body": false,
        6519  +
    "timestamp": "2015-08-30T12:36:00Z",
        6520  +
    "omit_session_token": true
        6521  +
}
 4835   6522   
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
 4836   6523   
similarity index 99%
 4837   6524   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 4838   6525   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 4839   6526   
index a6942c1..e881ac7 100644
 4840   6527   
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
 4841   6528   
new file mode 100644
 4842   6529   
index 0000000..9c5ecb9
 4843         -
-- /dev/null
        6530  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 4844   6531   
@@ -0,0 +1 @@
        6532  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 4845   6533   
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
 4846   6534   
similarity index 52%
 4847   6535   
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
 4848   6536   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4849   6537   
index 9d91775..61b6527 100644
 4850         -
-- 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
        6538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4851   6539   
@@ -1,4 +1,7 @@
 4852   6540   
POST / HTTP/1.1
 4853   6541   
Host:example.amazonaws.com
 4854         -
X-Amz-Date:20150830T123600Z
 4855   6542   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6543  +
X-Amz-Date:20150830T123600Z
        6544  +
X-Amz-Region-Set:us-east-1
        6545  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        6546  +
 4856   6547   
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
 4857   6548   
similarity index 99%
 4858   6549   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 4859   6550   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 4860   6551   
index d5650cb..f8adf13 100644
 4861   6552   
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
 4862   6553   
new file mode 100644
 4863   6554   
index 0000000..379dcb2
 4864         -
-- /dev/null
        6555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 4865   6556   
@@ -0,0 +1,4 @@
        6557  +
{
        6558  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6559  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6560  +
}
 4866   6561   
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
 4867   6562   
similarity index 99%
 4868   6563   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 4869   6564   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 4870   6565   
index e48ce07..5ea8e3c 100644
 4871   6566   
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
 4872   6567   
new file mode 100644
 4873   6568   
index 0000000..ff8823a
 4874         -
-- /dev/null
        6569  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 4875   6570   
@@ -0,0 +1 @@
        6571  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 4876   6572   
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
 4877   6573   
new file mode 100644
 4878   6574   
index 0000000..cfac41b
 4879         -
-- /dev/null
        6575  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 4880   6576   
@@ -0,0 +1,3 @@
        6577  +
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
        6578  +
Host:example.amazonaws.com
        6579  +
 4881   6580   
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
 4882   6581   
similarity index 99%
 4883   6582   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 4884   6583   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 4885   6584   
index 34e3382..711c162 100644
 4886   6585   
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
 4887   6586   
similarity index 61%
 4888   6587   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 4889   6588   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4890   6589   
index 3dc4179..3f0a82a 100644
 4891         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        6590  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4892   6591   
@@ -1,3 +1,2 @@
 4893   6592   
POST / HTTP/1.1
 4894   6593   
Host:example.amazonaws.com
 4895         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4896   6594   
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
 4897   6595   
new file mode 100644
 4898   6596   
index 0000000..5187392
 4899         -
-- /dev/null
        6597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 4900   6598   
@@ -0,0 +1,14 @@
        6599  +
{
        6600  +
    "credentials": {
        6601  +
        "access_key_id": "AKIDEXAMPLE",
        6602  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6603  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6604  +
    },
        6605  +
    "expiration_in_seconds": 3600,
        6606  +
    "normalize": true,
        6607  +
    "region": "us-east-1",
        6608  +
    "service": "service",
        6609  +
    "sign_body": false,
        6610  +
    "timestamp": "2015-08-30T12:36:00Z",
        6611  +
    "omit_session_token": false
        6612  +
}
 4901   6613   
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
 4902   6614   
similarity index 99%
 4903   6615   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 4904   6616   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 4905   6617   
index dd408c8..e95924e 100644
 4906   6618   
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
 4907   6619   
new file mode 100644
 4908   6620   
index 0000000..1573f07
 4909         -
-- /dev/null
        6621  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 4910   6622   
@@ -0,0 +1 @@
        6623  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 4911   6624   
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
 4912   6625   
new file mode 100644
 4913   6626   
index 0000000..6ef9a08
 4914         -
-- /dev/null
        6627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 4915   6628   
@@ -0,0 +1,7 @@
        6629  +
POST / HTTP/1.1
        6630  +
Host:example.amazonaws.com
        6631  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6632  +
X-Amz-Date:20150830T123600Z
        6633  +
X-Amz-Region-Set:us-east-1
        6634  +
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
        6635  +
 4916   6636   
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
 4917   6637   
similarity index 99%
 4918   6638   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 4919   6639   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 4920   6640   
index f352b54..3c3235f 100644
 4921   6641   
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
 4922   6642   
new file mode 100644
 4923   6643   
index 0000000..379dcb2
 4924         -
-- /dev/null
        6644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 4925   6645   
@@ -0,0 +1,4 @@
        6646  +
{
        6647  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6648  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6649  +
}
 4926   6650   
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
 4927   6651   
similarity index 99%
 4928   6652   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 4929   6653   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 4930   6654   
index 832cdc0..63b7de5 100644
 4931   6655   
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
 4932   6656   
new file mode 100644
 4933   6657   
index 0000000..713f57c
 4934         -
-- /dev/null
        6658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 4935   6659   
@@ -0,0 +1 @@
        6660  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 4936   6661   
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
 4937   6662   
new file mode 100644
 4938   6663   
index 0000000..32c3bb3
 4939         -
-- /dev/null
        6664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 4940   6665   
@@ -0,0 +1,3 @@
        6666  +
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
        6667  +
Host:example.amazonaws.com
        6668  +
 4941   6669   
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
 4942   6670   
similarity index 99%
 4943   6671   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 4944   6672   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 4945   6673   
index d7f3668..b46cd8c 100644
 4946   6674   
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
 4947   6675   
similarity index 60%
 4948   6676   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 4949   6677   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4950   6678   
index 8b5efc8..3f0a82a 100644
 4951         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        6679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4952   6680   
@@ -1,3 +1,2 @@
 4953   6681   
POST / HTTP/1.1
 4954   6682   
Host:example.amazonaws.com
 4955         -
X-Amz-Date:20150830T123600Z
 4956   6683   
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
 4957   6684   
new file mode 100644
 4958   6685   
index 0000000..0468d80
 4959         -
-- /dev/null
        6686  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 4960   6687   
@@ -0,0 +1,12 @@
        6688  +
{
        6689  +
    "credentials": {
        6690  +
        "access_key_id": "AKIDEXAMPLE",
        6691  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6692  +
    },
        6693  +
    "expiration_in_seconds": 3600,
        6694  +
    "normalize": true,
        6695  +
    "region": "us-east-1",
        6696  +
    "service": "service",
        6697  +
    "sign_body": false,
        6698  +
    "timestamp": "2015-08-30T12:36:00Z"
        6699  +
}
              \
 No newline at end of file
 4961   6700   
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
 4962   6701   
similarity index 99%
 4963   6702   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 4964   6703   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 4965   6704   
index 02af60f..34b8c11 100644
 4966   6705   
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
 4967   6706   
new file mode 100644
 4968   6707   
index 0000000..aac6427
 4969         -
-- /dev/null
        6708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 4970   6709   
@@ -0,0 +1 @@
        6710  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 4971   6711   
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
 4972   6712   
new file mode 100644
 4973   6713   
index 0000000..a611436
 4974         -
-- /dev/null
        6714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 4975   6715   
@@ -0,0 +1,6 @@
        6716  +
POST /?Param1=value1 HTTP/1.1
        6717  +
Host:example.amazonaws.com
        6718  +
X-Amz-Date:20150830T123600Z
        6719  +
X-Amz-Region-Set:us-east-1
        6720  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        6721  +
 4976   6722   
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
 4977   6723   
similarity index 99%
 4978   6724   
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
 4979   6725   
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
 4980   6726   
index 4256b4f..ad88dff 100644
 4981   6727   
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
 4982   6728   
new file mode 100644
 4983   6729   
index 0000000..379dcb2
 4984         -
-- /dev/null
        6730  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 4985   6731   
@@ -0,0 +1,4 @@
        6732  +
{
        6733  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6734  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6735  +
}
 4986   6736   
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
 4987   6737   
similarity index 99%
 4988   6738   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 4989   6739   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 4990   6740   
index fa84bbd..76d5ad6 100644
 4991   6741   
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
 4992   6742   
new file mode 100644
 4993   6743   
index 0000000..4cb1c94
 4994         -
-- /dev/null
        6744  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 4995   6745   
@@ -0,0 +1 @@
        6746  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 4996   6747   
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
 4997   6748   
new file mode 100644
 4998   6749   
index 0000000..bd22b97
 4999         -
-- /dev/null
        6750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 5000   6751   
@@ -0,0 +1,3 @@
        6752  +
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
        6753  +
Host:example.amazonaws.com
        6754  +
 5001   6755   
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
 5002   6756   
similarity index 99%
 5003   6757   
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
 5004   6758   
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
 5005   6759   
index de270ef..8c9d319 100644
 5006   6760   
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
 5007   6761   
similarity index 67%
 5008   6762   
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
 5009   6763   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5010   6764   
index 9157bc7..c9d6e5d 100644
 5011         -
-- 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
        6765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5012   6766   
@@ -1,3 +1,2 @@
 5013   6767   
POST /?Param1=value1 HTTP/1.1
 5014   6768   
Host:example.amazonaws.com
 5015         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5016   6769   
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
 5017   6770   
new file mode 100644
 5018   6771   
index 0000000..0468d80
 5019         -
-- /dev/null
        6772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 5020   6773   
@@ -0,0 +1,12 @@
        6774  +
{
        6775  +
    "credentials": {
        6776  +
        "access_key_id": "AKIDEXAMPLE",
        6777  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6778  +
    },
        6779  +
    "expiration_in_seconds": 3600,
        6780  +
    "normalize": true,
        6781  +
    "region": "us-east-1",
        6782  +
    "service": "service",
        6783  +
    "sign_body": false,
        6784  +
    "timestamp": "2015-08-30T12:36:00Z"
        6785  +
}
              \
 No newline at end of file
 5021   6786   
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
 5022   6787   
similarity index 99%
 5023   6788   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 5024   6789   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5025   6790   
index 02af60f..34b8c11 100644
 5026   6791   
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
 5027   6792   
new file mode 100644
 5028   6793   
index 0000000..34f75c8
 5029         -
-- /dev/null
        6794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 5030   6795   
@@ -0,0 +1 @@
        6796  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 5031   6797   
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
 5032   6798   
new file mode 100644
 5033   6799   
index 0000000..c731408
 5034         -
-- /dev/null
        6800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 5035   6801   
@@ -0,0 +1,6 @@
        6802  +
POST /?Param1=value1 HTTP/1.1
        6803  +
Host:example.amazonaws.com
        6804  +
X-Amz-Date:20150830T123600Z
        6805  +
X-Amz-Region-Set:us-east-1
        6806  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        6807  +
 5036   6808   
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
 5037   6809   
similarity index 99%
 5038   6810   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 5039   6811   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5040   6812   
index 4256b4f..ad88dff 100644
 5041   6813   
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
 5042   6814   
new file mode 100644
 5043   6815   
index 0000000..379dcb2
 5044         -
-- /dev/null
        6816  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 5045   6817   
@@ -0,0 +1,4 @@
        6818  +
{
        6819  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6820  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6821  +
}
 5046   6822   
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
 5047   6823   
similarity index 99%
 5048   6824   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 5049   6825   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 5050   6826   
index fa84bbd..76d5ad6 100644
 5051   6827   
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
 5052   6828   
new file mode 100644
 5053   6829   
index 0000000..ae000d6
 5054         -
-- /dev/null
        6830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 5055   6831   
@@ -0,0 +1 @@
        6832  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 5056   6833   
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
 5057   6834   
new file mode 100644
 5058   6835   
index 0000000..a868f7d
 5059         -
-- /dev/null
        6836  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 5060   6837   
@@ -0,0 +1,3 @@
        6838  +
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
        6839  +
Host:example.amazonaws.com
        6840  +
 5061   6841   
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
 5062   6842   
similarity index 99%
 5063   6843   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 5064   6844   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 5065   6845   
index de270ef..8c9d319 100644
 5066   6846   
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
 5067   6847   
similarity index 67%
 5068   6848   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 5069   6849   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5070   6850   
index 9157bc7..c9d6e5d 100644
 5071         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        6851  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5072   6852   
@@ -1,3 +1,2 @@
 5073   6853   
POST /?Param1=value1 HTTP/1.1
 5074   6854   
Host:example.amazonaws.com
 5075         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5076   6855   
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
 5077   6856   
new file mode 100644
 5078   6857   
index 0000000..0468d80
 5079         -
-- /dev/null
        6858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 5080   6859   
@@ -0,0 +1,12 @@
        6860  +
{
        6861  +
    "credentials": {
        6862  +
        "access_key_id": "AKIDEXAMPLE",
        6863  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6864  +
    },
        6865  +
    "expiration_in_seconds": 3600,
        6866  +
    "normalize": true,
        6867  +
    "region": "us-east-1",
        6868  +
    "service": "service",
        6869  +
    "sign_body": false,
        6870  +
    "timestamp": "2015-08-30T12:36:00Z"
        6871  +
}
              \
 No newline at end of file
 5081   6872   
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
 5082   6873   
similarity index 99%
 5083   6874   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 5084   6875   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 5085   6876   
index a6942c1..e881ac7 100644
 5086   6877   
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
 5087   6878   
new file mode 100644
 5088   6879   
index 0000000..7c5e47b
 5089         -
-- /dev/null
        6880  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 5090   6881   
@@ -0,0 +1 @@
        6882  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 5091   6883   
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
 5092   6884   
new file mode 100644
 5093   6885   
index 0000000..c0e50a0
 5094         -
-- /dev/null
        6886  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 5095   6887   
@@ -0,0 +1,6 @@
        6888  +
POST / HTTP/1.1
        6889  +
Host:example.amazonaws.com
        6890  +
X-Amz-Date:20150830T123600Z
        6891  +
X-Amz-Region-Set:us-east-1
        6892  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        6893  +
 5096   6894   
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
 5097   6895   
similarity index 99%
 5098   6896   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 5099   6897   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 5100   6898   
index d5650cb..f8adf13 100644
 5101   6899   
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
 5102   6900   
new file mode 100644
 5103   6901   
index 0000000..379dcb2
 5104         -
-- /dev/null
        6902  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 5105   6903   
@@ -0,0 +1,4 @@
        6904  +
{
        6905  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6906  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6907  +
}
 5106   6908   
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
 5107   6909   
similarity index 99%
 5108   6910   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 5109   6911   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 5110   6912   
index e48ce07..5ea8e3c 100644
 5111   6913   
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
 5112   6914   
new file mode 100644
 5113   6915   
index 0000000..ea8e3b4
 5114         -
-- /dev/null
        6916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 5115   6917   
@@ -0,0 +1 @@
        6918  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 5116   6919   
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
 5117   6920   
new file mode 100644
 5118   6921   
index 0000000..616973f
 5119         -
-- /dev/null
        6922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 5120   6923   
@@ -0,0 +1,3 @@
        6924  +
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
        6925  +
Host:example.amazonaws.com
        6926  +
 5121   6927   
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
 5122   6928   
similarity index 99%
 5123   6929   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 5124   6930   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 5125   6931   
index 34e3382..711c162 100644
 5126   6932   
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
 5127   6933   
new file mode 100644
 5128   6934   
index 0000000..3f0a82a
 5129         -
-- /dev/null
        6935  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 5130   6936   
@@ -0,0 +1,2 @@
        6937  +
POST / HTTP/1.1
        6938  +
Host:example.amazonaws.com
 5131   6939   
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
 5132   6940   
new file mode 100644
 5133   6941   
index 0000000..0db1df1
 5134         -
-- /dev/null
        6942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 5135   6943   
@@ -0,0 +1,12 @@
        6944  +
{
        6945  +
    "credentials": {
        6946  +
        "access_key_id": "AKIDEXAMPLE",
        6947  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6948  +
    },
        6949  +
    "expiration_in_seconds": 3600,
        6950  +
    "normalize": true,
        6951  +
    "region": "us-east-1",
        6952  +
    "service": "service",
        6953  +
    "sign_body": true,
        6954  +
    "timestamp": "2015-08-30T12:36:00Z"
        6955  +
}
              \
 No newline at end of file
 5136   6956   
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
 5137   6957   
similarity index 62%
 5138   6958   
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
 5139   6959   
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
 5140   6960   
index 05ab787..62639b2 100644
 5141         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        6961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 5142   6962   
@@ -1,12 +1,12 @@
 5143   6963   
POST
 5144   6964   
/
 5145   6965   
 5146   6966   
content-length:13
 5147   6967   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5148   6968   
host:example.amazonaws.com
 5149         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6969  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5150   6970   
x-amz-date:20150830T123600Z
 5151   6971   
x-amz-region-set:us-east-1
 5152   6972   
 5153   6973   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5154         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6974  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5155   6975   
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
 5156   6976   
new file mode 100644
 5157   6977   
index 0000000..006ec2e
 5158         -
-- /dev/null
        6978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 5159   6979   
@@ -0,0 +1 @@
        6980  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 5160   6981   
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
 5161   6982   
new file mode 100644
 5162   6983   
index 0000000..87a11f2
 5163         -
-- /dev/null
        6984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 5164   6985   
@@ -0,0 +1,10 @@
        6986  +
POST / HTTP/1.1
        6987  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        6988  +
Host:example.amazonaws.com
        6989  +
Content-Length:13
        6990  +
X-Amz-Date:20150830T123600Z
        6991  +
X-Amz-Region-Set:us-east-1
        6992  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        6993  +
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
        6994  +
        6995  +
Param1=value1
              \
 No newline at end of file
 5165   6996   
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
 5166   6997   
new file mode 100644
 5167   6998   
index 0000000..c047afb
 5168         -
-- /dev/null
        6999  +
++ 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
 5169   7000   
@@ -0,0 +1,4 @@
        7001  +
AWS4-ECDSA-P256-SHA256
        7002  +
20150830T123600Z
        7003  +
20150830/service/aws4_request
        7004  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 5170   7005   
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
 5171   7006   
new file mode 100644
 5172   7007   
index 0000000..379dcb2
 5173         -
-- /dev/null
        7008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 5174   7009   
@@ -0,0 +1,4 @@
        7010  +
{
        7011  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7012  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7013  +
}
 5175   7014   
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
 5176   7015   
similarity index 85%
 5177   7016   
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
 5178   7017   
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
 5179   7018   
index fcc454f..6933a8c 100644
 5180         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        7019  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 5181   7020   
@@ -1,9 +1,9 @@
 5182   7021   
POST
 5183   7022   
/
 5184   7023   
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
 5185   7024   
content-length:13
 5186   7025   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5187   7026   
host:example.amazonaws.com
 5188   7027   
 5189   7028   
content-length;content-type;host
 5190         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7029  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5191   7030   
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
 5192   7031   
new file mode 100644
 5193   7032   
index 0000000..34a2e12
 5194         -
-- /dev/null
        7033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 5195   7034   
@@ -0,0 +1 @@
        7035  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 5196   7036   
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
 5197   7037   
new file mode 100644
 5198   7038   
index 0000000..197b99e
 5199         -
-- /dev/null
        7039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 5200   7040   
@@ -0,0 +1,6 @@
        7041  +
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
        7042  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7043  +
Host:example.amazonaws.com
        7044  +
Content-Length:13
        7045  +
        7046  +
Param1=value1
              \
 No newline at end of file
 5201   7047   
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
 5202   7048   
new file mode 100644
 5203   7049   
index 0000000..9d2bc74
 5204         -
-- /dev/null
        7050  +
++ 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
 5205   7051   
@@ -0,0 +1,4 @@
        7052  +
AWS4-ECDSA-P256-SHA256
        7053  +
20150830T123600Z
        7054  +
20150830/service/aws4_request
        7055  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 5206   7056   
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
 5207   7057   
similarity index 80%
 5208   7058   
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
 5209   7059   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5210   7060   
index 36015f1..8289eaa 100644
 5211         -
-- 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
        7061  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5212   7062   
@@ -1,6 +1,6 @@
 5213   7063   
POST / HTTP/1.1
 5214   7064   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 5215   7065   
Host:example.amazonaws.com
 5216         -
X-Amz-Date:20150830T123600Z
        7066  +
Content-Length:13
 5217   7067   
 5218   7068   
Param1=value1
              \
 No newline at end of file
 5219   7069   
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
 5220   7070   
new file mode 100644
 5221   7071   
index 0000000..0db1df1
 5222         -
-- /dev/null
        7072  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 5223   7073   
@@ -0,0 +1,12 @@
        7074  +
{
        7075  +
    "credentials": {
        7076  +
        "access_key_id": "AKIDEXAMPLE",
        7077  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7078  +
    },
        7079  +
    "expiration_in_seconds": 3600,
        7080  +
    "normalize": true,
        7081  +
    "region": "us-east-1",
        7082  +
    "service": "service",
        7083  +
    "sign_body": true,
        7084  +
    "timestamp": "2015-08-30T12:36:00Z"
        7085  +
}
              \
 No newline at end of file
 5224   7086   
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
 5225   7087   
similarity index 61%
 5226   7088   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 5227   7089   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5228   7090   
index 69009dc..797632b 100644
 5229         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        7091  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5230   7092   
@@ -1,12 +1,12 @@
 5231   7093   
POST
 5232   7094   
/
 5233   7095   
 5234   7096   
content-length:13
 5235   7097   
content-type:application/x-www-form-urlencoded
 5236   7098   
host:example.amazonaws.com
 5237         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7099  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5238   7100   
x-amz-date:20150830T123600Z
 5239   7101   
x-amz-region-set:us-east-1
 5240   7102   
 5241   7103   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5242         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7104  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5243   7105   
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
 5244   7106   
new file mode 100644
 5245   7107   
index 0000000..f5a641c
 5246         -
-- /dev/null
        7108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 5247   7109   
@@ -0,0 +1 @@
        7110  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 5248   7111   
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
 5249   7112   
new file mode 100644
 5250   7113   
index 0000000..7bd94a7
 5251         -
-- /dev/null
        7114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 5252   7115   
@@ -0,0 +1,10 @@
        7116  +
POST / HTTP/1.1
        7117  +
Content-Type:application/x-www-form-urlencoded
        7118  +
Host:example.amazonaws.com
        7119  +
Content-Length:13
        7120  +
X-Amz-Date:20150830T123600Z
        7121  +
X-Amz-Region-Set:us-east-1
        7122  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7123  +
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
        7124  +
        7125  +
Param1=value1
              \
 No newline at end of file
 5253   7126   
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
 5254   7127   
new file mode 100644
 5255   7128   
index 0000000..8d25ba9
 5256         -
-- /dev/null
        7129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 5257   7130   
@@ -0,0 +1,4 @@
        7131  +
AWS4-ECDSA-P256-SHA256
        7132  +
20150830T123600Z
        7133  +
20150830/service/aws4_request
        7134  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 5258   7135   
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
 5259   7136   
new file mode 100644
 5260   7137   
index 0000000..379dcb2
 5261         -
-- /dev/null
        7138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 5262   7139   
@@ -0,0 +1,4 @@
        7140  +
{
        7141  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7142  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7143  +
}
 5263   7144   
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
 5264   7145   
similarity index 99%
 5265   7146   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 5266   7147   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 5267   7148   
index 9ed065b..563ff58 100644
 5268   7149   
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
 5269   7150   
new file mode 100644
 5270   7151   
index 0000000..0c77daf
 5271         -
-- /dev/null
        7152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 5272   7153   
@@ -0,0 +1 @@
        7154  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 5273   7155   
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
 5274   7156   
new file mode 100644
 5275   7157   
index 0000000..71d6de9
 5276         -
-- /dev/null
        7158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 5277   7159   
@@ -0,0 +1,6 @@
        7160  +
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
        7161  +
Content-Type:application/x-www-form-urlencoded
        7162  +
Host:example.amazonaws.com
        7163  +
Content-Length:13
        7164  +
        7165  +
Param1=value1
              \
 No newline at end of file
 5278   7166   
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
 5279   7167   
similarity index 99%
 5280   7168   
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
 5281   7169   
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
 5282   7170   
index bef3143..cc7a224 100644
 5283   7171   
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
 5284   7172   
new file mode 100644
 5285   7173   
index 0000000..760b2d3
 5286         -
-- /dev/null
        7174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 5287   7175   
@@ -0,0 +1,6 @@
        7176  +
POST / HTTP/1.1
        7177  +
Content-Type:application/x-www-form-urlencoded
        7178  +
Host:example.amazonaws.com
        7179  +
Content-Length:13
        7180  +
        7181  +
Param1=value1
              \
 No newline at end of file
 5288   7182   
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
 5289   7183   
index 9bd636f..b53f33f 100644
 5290         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        7184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 5291   7185   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 5292   7186   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 5293   7187   
        }
 5294   7188   
 5295   7189   
        if let SignatureValues::QueryParams(values) = values {
 5296   7190   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 5297   7191   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 5298   7192   
 5299   7193   
            #[cfg(feature = "sigv4a")]
 5300   7194   
            if let Some(regions) = values.region_set {
 5301   7195   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 5302   7196   
            }
 5303   7197   
 5304   7198   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 5305   7199   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 5306   7200   
            add_param(
 5307   7201   
                &mut params,
 5308   7202   
                param::X_AMZ_SIGNED_HEADERS,
 5309   7203   
                values.signed_headers.as_str(),
 5310   7204   
            );
 5311   7205   
 5312   7206   
            if let Some(security_token) = values.security_token {
 5313   7207   
                add_param(
 5314   7208   
                    &mut params,
 5315   7209   
                    settings
 5316   7210   
                        .session_token_name_override
 5317   7211   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 5318   7212   
                    security_token,
 5319   7213   
                );
 5320   7214   
            }
 5321   7215   
        }
 5322         -
        // Sort by param name, and then by param value
        7216  +
        7217  +
        // Sort on the _encoded_ key/value pairs
        7218  +
        let mut params: Vec<(String, String)> = params
        7219  +
            .into_iter()
        7220  +
            .map(|x| {
        7221  +
                use aws_smithy_http::query::fmt_string;
        7222  +
                let enc_k = fmt_string(&x.0);
        7223  +
                let enc_v = fmt_string(&x.1);
        7224  +
                (enc_k, enc_v)
        7225  +
            })
        7226  +
            .collect();
        7227  +
 5323   7228   
        params.sort();
 5324   7229   
 5325   7230   
        let mut query = QueryWriter::new(uri);
 5326   7231   
        query.clear_params();
 5327   7232   
        for (key, value) in params {
 5328         -
            query.insert(&key, &value);
        7233  +
            query.insert_encoded(&key, &value);
 5329   7234   
        }
 5330   7235   
 5331   7236   
        let query = query.build_query();
 5332   7237   
        if query.is_empty() {
 5333   7238   
            None
 5334   7239   
        } else {
 5335   7240   
            Some(query)
 5336   7241   
        }
 5337   7242   
    }
 5338   7243   
 5339   7244   
    fn insert_host_header(
 5340   7245   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 5341   7246   
        uri: &Uri,
 5342   7247   
    ) -> HeaderValue {
 5343   7248   
        match canonical_headers.get(&HOST) {
 5344   7249   
            Some(header) => header.clone(),
 5345   7250   
            None => {
 5346   7251   
                let port = uri.port();
 5347   7252   
                let scheme = uri.scheme();
 5348   7253   
                let authority = uri
 5349   7254   
                    .authority()
 5350   7255   
                    .expect("request uri authority must be set for signing")
 5351   7256   
                    .as_str();
 5352   7257   
                let host = uri
 5353   7258   
                    .host()
 5354   7259   
                    .expect("request uri host must be set for signing");
 5355   7260   
 5356   7261   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 5357   7262   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 5358   7263   
                // sent in the Host header (and Hyper strips default ports if they are present)
 5359   7264   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 5360   7265   
            service,
 5361   7266   
            hashed_creq,
 5362   7267   
            signature_version: SignatureVersion::V4a,
 5363   7268   
        }
 5364   7269   
    }
 5365   7270   
}
 5366   7271   
 5367   7272   
impl fmt::Display for StringToSign<'_> {
 5368   7273   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 5369   7274   
        write!(
 5370   7275   
            f,
 5371   7276   
            "{}\n{}\n{}\n{}",
 5372   7277   
            self.algorithm,
 5373   7278   
            format_date_time(self.time),
 5374   7279   
            match self.signature_version {
 5375   7280   
                SignatureVersion::V4 => self.scope.to_string(),
 5376   7281   
                SignatureVersion::V4a => self.scope.v4a_display(),
 5377   7282   
            },
 5378   7283   
            self.hashed_creq
 5379   7284   
        )
 5380   7285   
    }
 5381   7286   
}
 5382   7287   
 5383   7288   
#[cfg(test)]
 5384   7289   
mod tests {
 5385   7290   
    use crate::date_time::test_parsers::parse_date_time;
 5386   7291   
    use crate::http_request::canonical_request::{
 5387   7292   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 5388   7293   
    };
 5389   7294   
    use crate::http_request::test;
        7295  +
    use crate::http_request::test::SigningSuiteTest;
 5390   7296   
    use crate::http_request::{
 5391   7297   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 5392   7298   
        SigningParams, SigningSettings,
 5393   7299   
    };
 5394   7300   
    use crate::sign::v4;
 5395   7301   
    use crate::sign::v4::sha256_hex_string;
 5396   7302   
    use aws_credential_types::Credentials;
 5397   7303   
    use aws_smithy_http::query_writer::QueryWriter;
 5398   7304   
    use aws_smithy_runtime_api::client::identity::Identity;
 5399   7305   
    use http0::{HeaderValue, Uri};
 5400   7306   
    use pretty_assertions::assert_eq;
 5401   7307   
    use proptest::{prelude::*, proptest};
 5402   7308   
    use std::borrow::Cow;
 5403   7309   
    use std::time::Duration;
 5404   7310   
 5405   7311   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 5406   7312   
        v4::signing_params::Builder::default()
 5407   7313   
            .identity(identity)
 5408   7314   
            .region("test-region")
 5409   7315   
            .name("testservicename")
 5410   7316   
            .time(parse_date_time("20210511T154045Z").unwrap())
 5411   7317   
            .settings(settings)
 5412   7318   
            .build()
 5413   7319   
            .unwrap()
 5414   7320   
            .into()
 5415   7321   
    }
 5416   7322   
 5417   7323   
    #[test]
 5418   7324   
    fn test_repeated_header() {
 5419         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7325  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7326  +
        let mut req = test.request();
 5420   7327   
        req.headers.push((
 5421   7328   
            "x-amz-object-attributes".to_string(),
 5422   7329   
            "Checksum".to_string(),
 5423   7330   
        ));
 5424   7331   
        req.headers.push((
 5425   7332   
            "x-amz-object-attributes".to_string(),
 5426   7333   
            "ObjectSize".to_string(),
 5427   7334   
        ));
 5428   7335   
        let req = SignableRequest::from(&req);
 5429   7336   
        let settings = SigningSettings {
 5430   7337   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5431   7338   
            session_token_mode: SessionTokenMode::Exclude,
 5432   7339   
            ..Default::default()
 5433   7340   
        };
 5434   7341   
        let identity = Credentials::for_tests().into();
 5435   7342   
        let signing_params = signing_params(&identity, settings);
 5436   7343   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5437   7344   
 5438   7345   
        assert_eq!(
 5439   7346   
            creq.values.signed_headers().to_string(),
 5440   7347   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 5441   7348   
        );
 5442   7349   
        assert_eq!(
 5443   7350   
            creq.header_values_for("x-amz-object-attributes"),
 5444   7351   
            "Checksum,ObjectSize",
 5445   7352   
        );
 5446   7353   
    }
 5447   7354   
 5448   7355   
    #[test]
 5449   7356   
    fn test_host_header_properly_handles_ports() {
 5450   7357   
        fn host_header_test_setup(endpoint: String) -> String {
 5451         -
            let mut req = test::v4::test_request("get-vanilla");
        7358  +
            let test = SigningSuiteTest::v4("get-vanilla");
        7359  +
            let mut req = test.request();
 5452   7360   
            req.uri = endpoint;
 5453   7361   
            let req = SignableRequest::from(&req);
 5454   7362   
            let settings = SigningSettings {
 5455   7363   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5456   7364   
                session_token_mode: SessionTokenMode::Exclude,
 5457   7365   
                ..Default::default()
 5458   7366   
            };
 5459   7367   
            let identity = Credentials::for_tests().into();
 5460   7368   
            let signing_params = signing_params(&identity, settings);
 5461   7369   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5462   7370   
            creq.header_values_for("host")
 5463   7371   
        }
 5464   7372   
 5465   7373   
        // HTTP request with 80 port should not be signed with that port
 5466   7374   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 5467   7375   
        assert_eq!(http_80_host_header, "localhost",);
 5468   7376   
 5469   7377   
        // HTTP request with non-80 port should be signed with that port
 5470   7378   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 5471   7379   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 5472   7380   
 5473   7381   
        // HTTPS request with 443 port should not be signed with that port
 5474   7382   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 5475   7383   
        assert_eq!(https_443_host_header, "localhost",);
 5476   7384   
 5477   7385   
        // HTTPS request with non-443 port should be signed with that port
 5478   7386   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 5479   7387   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 5480   7388   
    }
 5481   7389   
 5482   7390   
    #[test]
 5483   7391   
    fn test_set_xamz_sha_256() {
 5484         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7392  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7393  +
        let req = test.request();
 5485   7394   
        let req = SignableRequest::from(&req);
 5486   7395   
        let settings = SigningSettings {
 5487   7396   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5488   7397   
            session_token_mode: SessionTokenMode::Exclude,
 5489   7398   
            ..Default::default()
 5490   7399   
        };
 5491   7400   
        let identity = Credentials::for_tests().into();
 5492   7401   
        let mut signing_params = signing_params(&identity, settings);
 5493   7402   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5494   7403   
        assert_eq!(
 5495   7404   
            creq.values.content_sha256(),
 5496   7405   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 5497   7406   
        );
 5498   7407   
        // assert that the sha256 header was added
 5499   7408   
        assert_eq!(
 5500   7409   
            creq.values.signed_headers().as_str(),
 5501   7410   
            "host;x-amz-content-sha256;x-amz-date"
 5502   7411   
        );
 5503   7412   
 5504   7413   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 5505   7414   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5506   7415   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5507   7416   
    }
 5508   7417   
 5509   7418   
    #[test]
 5510   7419   
    fn test_unsigned_payload() {
 5511         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7420  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7421  +
        let mut req = test.request();
 5512   7422   
        req.set_body(SignableBody::UnsignedPayload);
 5513   7423   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 5514   7424   
 5515   7425   
        let settings = SigningSettings {
 5516   7426   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5517   7427   
            ..Default::default()
 5518   7428   
        };
 5519   7429   
        let identity = Credentials::for_tests().into();
 5520   7430   
        let signing_params = signing_params(&identity, settings);
 5521   7431   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5522   7432   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 5523   7433   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 5524   7434   
    }
 5525   7435   
 5526   7436   
    #[test]
 5527   7437   
    fn test_precomputed_payload() {
 5528   7438   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 5529         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7439  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7440  +
        let mut req = test.request();
 5530   7441   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 5531   7442   
        let req = SignableRequest::from(&req);
 5532   7443   
        let settings = SigningSettings {
 5533   7444   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5534   7445   
            ..Default::default()
 5535   7446   
        };
 5536   7447   
        let identity = Credentials::for_tests().into();
 5537   7448   
        let signing_params = signing_params(&identity, settings);
 5538   7449   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5539   7450   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 5540   7451   
        assert!(creq.to_string().ends_with(payload_hash));
 5541   7452   
    }
 5542   7453   
 5543   7454   
    #[test]
 5544   7455   
    fn test_generate_scope() {
 5545   7456   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 5546   7457   
        let scope = SigningScope {
 5547   7458   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5548   7459   
            region: "us-east-1",
 5549   7460   
            service: "iam",
 5550   7461   
        };
 5551   7462   
        assert_eq!(format!("{}\n", scope), expected);
 5552   7463   
    }
 5553   7464   
 5554   7465   
    #[test]
 5555   7466   
    fn test_string_to_sign() {
 5556   7467   
        let time = parse_date_time("20150830T123600Z").unwrap();
 5557         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 5558         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        7468  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7469  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        7470  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 5559   7471   
        let encoded = sha256_hex_string(creq.as_bytes());
 5560   7472   
 5561   7473   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 5562   7474   
        assert_eq!(expected_sts, actual.to_string());
 5563   7475   
    }
 5564   7476   
 5565   7477   
    #[test]
 5566   7478   
    fn test_digest_of_canonical_request() {
 5567         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        7479  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7480  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 5568   7481   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 5569   7482   
        let actual = sha256_hex_string(creq.as_bytes());
 5570   7483   
        assert_eq!(expected, actual);
 5571   7484   
    }
 5572   7485   
 5573   7486   
    #[test]
 5574   7487   
    fn test_double_url_encode_path() {
 5575         -
        let req = test::v4::test_request("double-encode-path");
        7488  +
        let test = SigningSuiteTest::v4("double-encode-path");
        7489  +
        let req = test.request();
 5576   7490   
        let req = SignableRequest::from(&req);
 5577   7491   
        let identity = Credentials::for_tests().into();
 5578   7492   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5579   7493   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5580   7494   
 5581         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        7495  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5582   7496   
        let actual = format!("{}", creq);
 5583   7497   
        assert_eq!(actual, expected);
 5584   7498   
    }
 5585   7499   
 5586   7500   
    #[test]
 5587   7501   
    fn test_double_url_encode() {
 5588         -
        let req = test::v4::test_request("double-url-encode");
        7502  +
        let test = SigningSuiteTest::v4("double-url-encode");
        7503  +
        let req = test.request();
 5589   7504   
        let req = SignableRequest::from(&req);
 5590   7505   
        let identity = Credentials::for_tests().into();
 5591   7506   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5592   7507   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5593         -
 5594         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        7508  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5595   7509   
        let actual = format!("{}", creq);
 5596   7510   
        assert_eq!(actual, expected);
 5597   7511   
    }
 5598   7512   
 5599   7513   
    #[test]
 5600   7514   
    fn test_tilde_in_uri() {
 5601   7515   
        let req = http0::Request::builder()
 5602   7516   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 5603   7517   
        let req = SignableRequest::from(&req);
 5604   7518   
        let identity = Credentials::for_tests().into();
 5605   7519   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5606   7520   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5607   7521   
        assert_eq!(
 5608   7522   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 5609   7523   
            creq.params.as_deref(),
 5610   7524   
        );
 5611   7525   
    }
 5612   7526   
 5613   7527   
    #[test]
 5614   7528   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 5615   7529   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 5616   7530   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 5617   7531   
 5618   7532   
        let mut query_writer = QueryWriter::new(&uri);
 5619   7533   
        query_writer.insert("list-type", "2");
 5620   7534   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 5621   7535   
 5622   7536   
        let req = http0::Request::builder()
 5623   7537   
            .uri(query_writer.build_uri())
 5624   7538   
            .body("")
 5625   7539   
            .unwrap()
 5626   7540   
            .into();
 5627   7541   
        let req = SignableRequest::from(&req);
 5628   7542   
        let identity = Credentials::for_tests().into();
 5629   7543   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5630   7544   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5631   7545   
 5632   7546   
        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~";
 5633   7547   
        let actual = creq.params.unwrap();
 5634   7548   
        assert_eq!(expected, actual);
 5635   7549   
    }
 5636   7550   
 5637   7551   
    #[test]
 5638   7552   
    fn test_omit_session_token() {
 5639         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7553  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7554  +
        let req = test.request();
 5640   7555   
        let req = SignableRequest::from(&req);
 5641   7556   
        let settings = SigningSettings {
 5642   7557   
            session_token_mode: SessionTokenMode::Include,
 5643   7558   
            ..Default::default()
 5644   7559   
        };
 5645   7560   
        let identity = Credentials::for_tests_with_session_token().into();
 5646   7561   
        let mut signing_params = signing_params(&identity, settings);
 5647   7562   
 5648   7563   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5649   7564   
        assert_eq!(
 5650   7565   
            creq.values.signed_headers().as_str(),
 5651   7566   
            "host;x-amz-date;x-amz-security-token"
 5652   7567   
        );
 5653   7568   
        assert_eq!(
 5654   7569   
            creq.headers.get("x-amz-security-token").unwrap(),
 5655   7570   
            "notarealsessiontoken"
 5656   7571   
        );
 5657   7572   
 5658   7573   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 5659   7574   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5660   7575   
        assert_eq!(
 5661   7576   
            creq.headers.get("x-amz-security-token").unwrap(),
 5662   7577   
            "notarealsessiontoken"
 5663   7578   
        );
 5664   7579   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5665   7580   
    }
 5666   7581   
 5667   7582   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 5668   7583   
    #[test]
 5669   7584   
    fn non_presigning_header_exclusion() {
 5670   7585   
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
 5671   7586   
index c4bbbee..30b4743 100644
 5672         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        7587  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 5673   7588   
@@ -478,436 +478,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 5674   7589   
        sensitive,
 5675   7590   
    });
 5676   7591   
}
 5677   7592   
 5678   7593   
// add signature to authorization header
 5679   7594   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 5680   7595   
fn build_authorization_header(
 5681   7596   
    access_key: &str,
 5682   7597   
    creq: &CanonicalRequest<'_>,
 5683   7598   
    sts: StringToSign<'_>,
 5684   7599   
    signature: &str,
 5685   7600   
    signature_version: SignatureVersion,
 5686   7601   
) -> String {
 5687   7602   
    let scope = match signature_version {
 5688   7603   
        SignatureVersion::V4 => sts.scope.to_string(),
 5689   7604   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 5690   7605   
    };
 5691   7606   
    format!(
 5692   7607   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 5693   7608   
        sts.algorithm,
 5694   7609   
        access_key,
 5695   7610   
        scope,
 5696   7611   
        creq.values.signed_headers().as_str(),
 5697   7612   
        signature
 5698   7613   
    )
 5699   7614   
}
 5700   7615   
#[cfg(test)]
 5701   7616   
mod tests {
 5702   7617   
    use crate::date_time::test_parsers::parse_date_time;
 5703   7618   
    use crate::http_request::sign::{add_header, SignableRequest};
        7619  +
    use crate::http_request::test::SigningSuiteTest;
 5704   7620   
    use crate::http_request::{
 5705         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        7621  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 5706   7622   
        SigningSettings,
 5707   7623   
    };
 5708   7624   
    use crate::sign::v4;
 5709   7625   
    use aws_credential_types::Credentials;
 5710   7626   
    use http0::{HeaderValue, Request};
 5711   7627   
    use pretty_assertions::assert_eq;
 5712   7628   
    use proptest::proptest;
 5713   7629   
    use std::borrow::Cow;
 5714   7630   
    use std::iter;
 5715         -
    use std::time::Duration;
 5716   7631   
 5717   7632   
    macro_rules! assert_req_eq {
 5718   7633   
        (http: $expected:expr, $actual:expr) => {
 5719   7634   
            let mut expected = ($expected).map(|_b|"body");
 5720   7635   
            let mut actual = ($actual).map(|_b|"body");
 5721   7636   
            make_headers_comparable(&mut expected);
 5722   7637   
            make_headers_comparable(&mut actual);
 5723   7638   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 5724   7639   
        };
 5725   7640   
        ($expected:tt, $actual:tt) => {
 5726   7641   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 5727   7642   
        };
 5728   7643   
    }
 5729   7644   
 5730   7645   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 5731   7646   
        for (_name, value) in request.headers_mut() {
 5732   7647   
            value.set_sensitive(false);
 5733   7648   
        }
 5734   7649   
    }
 5735   7650   
 5736         -
    #[test]
 5737         -
    fn test_sign_vanilla_with_headers() {
 5738         -
        let settings = SigningSettings::default();
 5739         -
        let identity = &Credentials::for_tests().into();
 5740         -
        let params = v4::SigningParams {
 5741         -
            identity,
 5742         -
            region: "us-east-1",
 5743         -
            name: "service",
 5744         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5745         -
            settings,
 5746         -
        }
 5747         -
        .into();
 5748         -
 5749         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5750         -
        let signable = SignableRequest::from(&original);
 5751         -
        let out = sign(signable, &params).unwrap();
 5752         -
        assert_eq!(
 5753         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 5754         -
            out.signature
 5755         -
        );
 5756         -
 5757         -
        let mut signed = original.as_http_request();
 5758         -
        out.output.apply_to_request_http0x(&mut signed);
 5759         -
 5760         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 5761         -
        assert_req_eq!(expected, signed);
 5762         -
    }
 5763         -
        7651  +
    // Sigv4A suite tests
 5764   7652   
    #[cfg(feature = "sigv4a")]
 5765         -
    mod sigv4a_tests {
 5766         -
        use super::*;
 5767         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5768         -
        use crate::http_request::{sign, test, SigningParams};
 5769         -
        use crate::sign::v4a;
 5770         -
        use p256::ecdsa::signature::{Signature, Verifier};
 5771         -
        use p256::ecdsa::{DerSignature, SigningKey};
 5772         -
        use pretty_assertions::assert_eq;
 5773         -
 5774         -
        fn new_v4a_signing_params_from_context(
 5775         -
            test_context: &'_ test::v4a::TestContext,
 5776         -
            signature_location: SignatureLocation,
 5777         -
        ) -> SigningParams<'_> {
 5778         -
            let mut params = v4a::SigningParams::from(test_context);
 5779         -
            params.settings.signature_location = signature_location;
 5780         -
 5781         -
            params.into()
 5782         -
        }
 5783         -
 5784         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 5785         -
            let tc = test::v4a::test_context(test_name);
 5786         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 5787         -
 5788         -
            let req = test::v4a::test_request(test_name);
 5789         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 5790         -
            let signable_req = SignableRequest::from(&req);
 5791         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 5792         -
 5793         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
        7653  +
    mod v4a_suite {
        7654  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 5794   7655   
 5795         -
            let expected_string_to_sign =
 5796         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 5797         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 5798         -
            let actual_string_to_sign = StringToSign::new_v4a(
 5799         -
                *params.time(),
 5800         -
                params.region_set().unwrap(),
 5801         -
                params.name(),
 5802         -
                hashed_creq,
 5803         -
            )
 5804         -
            .to_string();
 5805         -
 5806         -
            assert_eq!(
 5807         -
                expected_string_to_sign, actual_string_to_sign,
 5808         -
                "'string to sign' didn't match"
 5809         -
            );
 5810         -
 5811         -
            let out = sign(signable_req, &params).unwrap();
 5812         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 5813         -
            out.output
 5814         -
                .apply_to_request_http0x(&mut req.as_http_request());
 5815         -
 5816         -
            let creds = params.credentials().unwrap();
 5817         -
            let signing_key =
 5818         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 5819         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 5820         -
            let sig = sig
 5821         -
                .try_into()
 5822         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 5823         -
 5824         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 5825         -
            let peer_public_key = signing_key.verifying_key();
 5826         -
            let sts = actual_string_to_sign.as_bytes();
 5827         -
            peer_public_key.verify(sts, &sig).unwrap();
        7656  +
        #[test]
        7657  +
        fn test_get_header_key_duplicate() {
        7658  +
            run_test_suite_v4a("get-header-key-duplicate")
 5828   7659   
        }
 5829   7660   
 5830   7661   
        #[test]
 5831         -
        fn test_get_header_key_duplicate() {
 5832         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        7662  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7663  +
        fn test_get_header_value_multiline() {
        7664  +
            run_test_suite_v4a("get-header-value-multiline")
 5833   7665   
        }
 5834   7666   
 5835   7667   
        #[test]
 5836   7668   
        fn test_get_header_value_order() {
 5837         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        7669  +
            run_test_suite_v4a("get-header-value-order")
 5838   7670   
        }
 5839   7671   
 5840   7672   
        #[test]
 5841   7673   
        fn test_get_header_value_trim() {
 5842         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        7674  +
            run_test_suite_v4a("get-header-value-trim");
 5843   7675   
        }
 5844   7676   
 5845   7677   
        #[test]
 5846   7678   
        fn test_get_relative_normalized() {
 5847         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        7679  +
            run_test_suite_v4a("get-relative-normalized");
 5848   7680   
        }
 5849   7681   
 5850   7682   
        #[test]
 5851   7683   
        fn test_get_relative_relative_normalized() {
 5852         -
            run_v4a_test_suite(
 5853         -
                "get-relative-relative-normalized",
 5854         -
                SignatureLocation::Headers,
 5855         -
            );
        7684  +
            run_test_suite_v4a("get-relative-relative-normalized");
 5856   7685   
        }
 5857   7686   
 5858   7687   
        #[test]
 5859   7688   
        fn test_get_relative_relative_unnormalized() {
 5860         -
            run_v4a_test_suite(
 5861         -
                "get-relative-relative-unnormalized",
 5862         -
                SignatureLocation::Headers,
 5863         -
            );
        7689  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 5864   7690   
        }
 5865   7691   
 5866   7692   
        #[test]
 5867   7693   
        fn test_get_relative_unnormalized() {
 5868         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        7694  +
            run_test_suite_v4a("get-relative-unnormalized");
 5869   7695   
        }
 5870   7696   
 5871   7697   
        #[test]
 5872   7698   
        fn test_get_slash_dot_slash_normalized() {
 5873         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        7699  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 5874   7700   
        }
 5875   7701   
 5876   7702   
        #[test]
 5877   7703   
        fn test_get_slash_dot_slash_unnormalized() {
 5878         -
            run_v4a_test_suite(
 5879         -
                "get-slash-dot-slash-unnormalized",
 5880         -
                SignatureLocation::Headers,
 5881         -
            );
        7704  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 5882   7705   
        }
 5883   7706   
 5884   7707   
        #[test]
 5885   7708   
        fn test_get_slash_normalized() {
 5886         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        7709  +
            run_test_suite_v4a("get-slash-normalized");
 5887   7710   
        }
 5888   7711   
 5889   7712   
        #[test]
 5890   7713   
        fn test_get_slash_pointless_dot_normalized() {
 5891         -
            run_v4a_test_suite(
 5892         -
                "get-slash-pointless-dot-normalized",
 5893         -
                SignatureLocation::Headers,
 5894         -
            );
        7714  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 5895   7715   
        }
 5896   7716   
 5897   7717   
        #[test]
 5898   7718   
        fn test_get_slash_pointless_dot_unnormalized() {
 5899         -
            run_v4a_test_suite(
 5900         -
                "get-slash-pointless-dot-unnormalized",
 5901         -
                SignatureLocation::Headers,
 5902         -
            );
        7719  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 5903   7720   
        }
 5904   7721   
 5905   7722   
        #[test]
 5906   7723   
        fn test_get_slash_unnormalized() {
 5907         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        7724  +
            run_test_suite_v4a("get-slash-unnormalized");
 5908   7725   
        }
 5909   7726   
 5910   7727   
        #[test]
 5911   7728   
        fn test_get_slashes_normalized() {
 5912         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        7729  +
            run_test_suite_v4a("get-slashes-normalized");
 5913   7730   
        }
 5914   7731   
 5915   7732   
        #[test]
 5916   7733   
        fn test_get_slashes_unnormalized() {
 5917         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        7734  +
            run_test_suite_v4a("get-slashes-unnormalized");
        7735  +
        }
        7736  +
        7737  +
        #[test]
        7738  +
        #[ignore = "relies on single encode of path segments"]
        7739  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7740  +
        // skipped until we add control over double_uri_encode in context.json
        7741  +
        fn test_get_space_normalized() {
        7742  +
            run_test_suite_v4a("get-space-normalized");
        7743  +
        }
        7744  +
        7745  +
        #[test]
        7746  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7747  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7748  +
        fn test_get_space_unnormalized() {
        7749  +
            run_test_suite_v4a("get-space-unnormalized");
 5918   7750   
        }
 5919   7751   
 5920   7752   
        #[test]
 5921   7753   
        fn test_get_unreserved() {
 5922         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        7754  +
            run_test_suite_v4a("get-unreserved");
        7755  +
        }
        7756  +
        7757  +
        #[test]
        7758  +
        #[ignore = "httparse fails on invalid uri character"]
        7759  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7760  +
        fn test_get_utf8() {
        7761  +
            run_test_suite_v4a("get-utf8");
 5923   7762   
        }
 5924   7763   
 5925   7764   
        #[test]
 5926   7765   
        fn test_get_vanilla() {
 5927         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        7766  +
            run_test_suite_v4a("get-vanilla");
 5928   7767   
        }
 5929   7768   
 5930   7769   
        #[test]
 5931   7770   
        fn test_get_vanilla_empty_query_key() {
 5932         -
            run_v4a_test_suite(
 5933         -
                "get-vanilla-empty-query-key",
 5934         -
                SignatureLocation::QueryParams,
 5935         -
            );
        7771  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 5936   7772   
        }
 5937   7773   
 5938   7774   
        #[test]
 5939   7775   
        fn test_get_vanilla_query() {
 5940         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        7776  +
            run_test_suite_v4a("get-vanilla-query");
        7777  +
        }
        7778  +
        7779  +
        #[test]
        7780  +
        fn test_get_vanilla_query_order_encoded() {
        7781  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 5941   7782   
        }
 5942   7783   
 5943   7784   
        #[test]
 5944   7785   
        fn test_get_vanilla_query_order_key_case() {
 5945         -
            run_v4a_test_suite(
 5946         -
                "get-vanilla-query-order-key-case",
 5947         -
                SignatureLocation::QueryParams,
 5948         -
            );
        7786  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 5949   7787   
        }
 5950   7788   
 5951   7789   
        #[test]
 5952   7790   
        fn test_get_vanilla_query_unreserved() {
 5953         -
            run_v4a_test_suite(
 5954         -
                "get-vanilla-query-unreserved",
 5955         -
                SignatureLocation::QueryParams,
 5956         -
            );
        7791  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        7792  +
        }
        7793  +
        7794  +
        #[test]
        7795  +
        #[ignore = "httparse fails on invalid uri character"]
        7796  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7797  +
        fn test_get_vanilla_utf8_query() {
        7798  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 5957   7799   
        }
 5958   7800   
 5959   7801   
        #[test]
 5960   7802   
        fn test_get_vanilla_with_session_token() {
 5961         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        7803  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 5962   7804   
        }
 5963   7805   
 5964   7806   
        #[test]
 5965   7807   
        fn test_post_header_key_case() {
 5966         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        7808  +
            run_test_suite_v4a("post-header-key-case");
 5967   7809   
        }
 5968   7810   
 5969   7811   
        #[test]
 5970   7812   
        fn test_post_header_key_sort() {
 5971         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        7813  +
            run_test_suite_v4a("post-header-key-sort");
 5972   7814   
        }
 5973   7815   
 5974   7816   
        #[test]
 5975   7817   
        fn test_post_header_value_case() {
 5976         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        7818  +
            run_test_suite_v4a("post-header-value-case");
 5977   7819   
        }
 5978   7820   
 5979   7821   
        #[test]
 5980   7822   
        fn test_post_sts_header_after() {
 5981         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        7823  +
            run_test_suite_v4a("post-sts-header-after");
 5982   7824   
        }
 5983   7825   
 5984   7826   
        #[test]
 5985   7827   
        fn test_post_sts_header_before() {
 5986         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        7828  +
            run_test_suite_v4a("post-sts-header-before");
 5987   7829   
        }
 5988   7830   
 5989   7831   
        #[test]
 5990   7832   
        fn test_post_vanilla() {
 5991         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        7833  +
            run_test_suite_v4a("post-vanilla");
 5992   7834   
        }
 5993   7835   
 5994   7836   
        #[test]
 5995   7837   
        fn test_post_vanilla_empty_query_value() {
 5996         -
            run_v4a_test_suite(
 5997         -
                "post-vanilla-empty-query-value",
 5998         -
                SignatureLocation::QueryParams,
 5999         -
            );
        7838  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 6000   7839   
        }
 6001   7840   
 6002   7841   
        #[test]
 6003   7842   
        fn test_post_vanilla_query() {
 6004         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        7843  +
            run_test_suite_v4a("post-vanilla-query");
 6005   7844   
        }
 6006   7845   
 6007   7846   
        #[test]
 6008   7847   
        fn test_post_x_www_form_urlencoded() {
 6009         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        7848  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 6010   7849   
        }
 6011   7850   
 6012   7851   
        #[test]
 6013   7852   
        fn test_post_x_www_form_urlencoded_parameters() {
 6014         -
            run_v4a_test_suite(
 6015         -
                "post-x-www-form-urlencoded-parameters",
 6016         -
                SignatureLocation::QueryParams,
 6017         -
            );
        7853  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 6018   7854   
        }
 6019   7855   
    }
 6020   7856   
 6021   7857   
    #[test]
 6022   7858   
    fn test_sign_url_escape() {
 6023         -
        let test = "double-encode-path";
        7859  +
        let test = SigningSuiteTest::v4("double-encode-path");
 6024   7860   
        let settings = SigningSettings::default();
 6025   7861   
        let identity = &Credentials::for_tests().into();
 6026   7862   
        let params = v4::SigningParams {
 6027   7863   
            identity,
 6028   7864   
            region: "us-east-1",
 6029   7865   
            name: "service",
 6030   7866   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6031   7867   
            settings,
 6032   7868   
        }
 6033   7869   
        .into();
 6034   7870   
 6035         -
        let original = test::v4::test_request(test);
        7871  +
        let original = test.request();
 6036   7872   
        let signable = SignableRequest::from(&original);
 6037   7873   
        let out = sign(signable, &params).unwrap();
 6038   7874   
        assert_eq!(
 6039   7875   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 6040   7876   
            out.signature
 6041   7877   
        );
 6042   7878   
 6043   7879   
        let mut signed = original.as_http_request();
 6044   7880   
        out.output.apply_to_request_http0x(&mut signed);
 6045   7881   
 6046         -
        let expected = test::v4::test_signed_request(test);
 6047         -
        assert_req_eq!(expected, signed);
 6048         -
    }
 6049         -
 6050         -
    #[test]
 6051         -
    fn test_sign_vanilla_with_query_params() {
 6052         -
        let settings = SigningSettings {
 6053         -
            signature_location: SignatureLocation::QueryParams,
 6054         -
            expires_in: Some(Duration::from_secs(35)),
 6055         -
            ..Default::default()
 6056         -
        };
 6057         -
        let identity = &Credentials::for_tests().into();
 6058         -
        let params = v4::SigningParams {
 6059         -
            identity,
 6060         -
            region: "us-east-1",
 6061         -
            name: "service",
 6062         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6063         -
            settings,
 6064         -
        }
 6065         -
        .into();
 6066         -
 6067         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6068         -
        let signable = SignableRequest::from(&original);
 6069         -
        let out = sign(signable, &params).unwrap();
 6070         -
        assert_eq!(
 6071         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 6072         -
            out.signature
 6073         -
        );
 6074         -
 6075         -
        let mut signed = original.as_http_request();
 6076         -
        out.output.apply_to_request_http0x(&mut signed);
 6077         -
 6078         -
        let expected =
 6079         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        7882  +
        let expected = test.signed_request(SignatureLocation::Headers);
 6080   7883   
        assert_req_eq!(expected, signed);
 6081   7884   
    }
 6082   7885   
 6083   7886   
    #[test]
 6084   7887   
    fn test_sign_headers_utf8() {
 6085   7888   
        let settings = SigningSettings::default();
 6086   7889   
        let identity = &Credentials::for_tests().into();
 6087   7890   
        let params = v4::SigningParams {
 6088   7891   
            identity,
 6089   7892   
            region: "us-east-1",
 6090   7893   
            name: "service",
 6091   7894   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6092   7895   
            settings,
 6093   7896   
        }
 6094   7897   
        .into();
 6095   7898   
 6096   7899   
        let original = http0::Request::builder()
 6097   7900   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 6098   7901   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 6099   7902   
            .body("")
 6100   7903   
            .unwrap()
 6101   7904   
            .into();
 6102   7905   
        let signable = SignableRequest::from(&original);
 6103   7906   
        let out = sign(signable, &params).unwrap();
 6104   7907   
        assert_eq!(
 6105   7908   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 6106   7909   
            out.signature
 6107   7910   
        );
 6108   7911   
 6109   7912   
        let mut signed = original.as_http_request();
 6110   7913   
@@ -1138,31 +1026,236 @@ mod tests {
 6111   7914   
        let mut request = http::Request::builder()
 6112   7915   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 6113   7916   
            .body("")
 6114   7917   
            .unwrap();
 6115   7918   
 6116   7919   
        instructions.apply_to_request_http1x(&mut request);
 6117   7920   
 6118   7921   
        assert_eq!(
 6119   7922   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 6120   7923   
            request.uri().path_and_query().unwrap().to_string()
 6121   7924   
        );
 6122   7925   
    }
 6123   7926   
 6124   7927   
    #[test]
 6125   7928   
    fn test_debug_signable_body() {
 6126   7929   
        let sut = SignableBody::Bytes(b"hello signable body");
 6127   7930   
        assert_eq!(
 6128   7931   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 6129   7932   
            format!("{sut:?}")
 6130   7933   
        );
 6131   7934   
 6132   7935   
        let sut = SignableBody::UnsignedPayload;
 6133   7936   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 6134   7937   
 6135   7938   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 6136   7939   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 6137   7940   
 6138   7941   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 6139   7942   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 6140   7943   
    }
        7944  +
        7945  +
    // v4 test suite
        7946  +
    mod v4_suite {
        7947  +
        use crate::http_request::test::run_test_suite_v4;
        7948  +
        7949  +
        #[test]
        7950  +
        fn test_get_header_key_duplicate() {
        7951  +
            run_test_suite_v4("get-header-key-duplicate");
        7952  +
        }
        7953  +
        7954  +
        #[test]
        7955  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7956  +
        fn test_get_header_value_multiline() {
        7957  +
            run_test_suite_v4("get-header-value-multiline");
        7958  +
        }
        7959  +
        7960  +
        #[test]
        7961  +
        fn test_get_header_value_order() {
        7962  +
            run_test_suite_v4("get-header-value-order");
        7963  +
        }
        7964  +
        7965  +
        #[test]
        7966  +
        fn test_get_header_value_trim() {
        7967  +
            run_test_suite_v4("get-header-value-trim");
        7968  +
        }
        7969  +
        7970  +
        #[test]
        7971  +
        fn test_get_relative_normalized() {
        7972  +
            run_test_suite_v4("get-relative-normalized");
        7973  +
        }
        7974  +
        7975  +
        #[test]
        7976  +
        fn test_get_relative_relative_normalized() {
        7977  +
            run_test_suite_v4("get-relative-relative-normalized");
        7978  +
        }
        7979  +
        7980  +
        #[test]
        7981  +
        fn test_get_relative_relative_unnormalized() {
        7982  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        7983  +
        }
        7984  +
        7985  +
        #[test]
        7986  +
        fn test_get_relative_unnormalized() {
        7987  +
            run_test_suite_v4("get-relative-unnormalized");
        7988  +
        }
        7989  +
        7990  +
        #[test]
        7991  +
        fn test_get_slash_dot_slash_normalized() {
        7992  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        7993  +
        }
        7994  +
        7995  +
        #[test]
        7996  +
        fn test_get_slash_dot_slash_unnormalized() {
        7997  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        7998  +
        }
        7999  +
        8000  +
        #[test]
        8001  +
        fn test_get_slash_normalized() {
        8002  +
            run_test_suite_v4("get-slash-normalized");
        8003  +
        }
        8004  +
        8005  +
        #[test]
        8006  +
        fn test_get_slash_pointless_dot_normalized() {
        8007  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        8008  +
        }
        8009  +
        8010  +
        #[test]
        8011  +
        fn test_get_slash_pointless_dot_unnormalized() {
        8012  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        8013  +
        }
        8014  +
        8015  +
        #[test]
        8016  +
        fn test_get_slash_unnormalized() {
        8017  +
            run_test_suite_v4("get-slash-unnormalized");
        8018  +
        }
        8019  +
        8020  +
        #[test]
        8021  +
        fn test_get_slashes_normalized() {
        8022  +
            run_test_suite_v4("get-slashes-normalized");
        8023  +
        }
        8024  +
        8025  +
        #[test]
        8026  +
        fn test_get_slashes_unnormalized() {
        8027  +
            run_test_suite_v4("get-slashes-unnormalized");
        8028  +
        }
        8029  +
        8030  +
        #[test]
        8031  +
        #[ignore = "relies on single encode of path segments"]
        8032  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8033  +
        // skipped until we add control over double_uri_encode in context.json
        8034  +
        fn test_get_space_normalized() {
        8035  +
            run_test_suite_v4("get-space-normalized");
        8036  +
        }
        8037  +
        8038  +
        #[test]
        8039  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8040  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8041  +
        fn test_get_space_unnormalized() {
        8042  +
            run_test_suite_v4("get-space-unnormalized");
        8043  +
        }
        8044  +
        8045  +
        #[test]
        8046  +
        fn test_get_unreserved() {
        8047  +
            run_test_suite_v4("get-unreserved");
        8048  +
        }
        8049  +
        8050  +
        #[test]
        8051  +
        #[ignore = "httparse fails on invalid uri character"]
        8052  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8053  +
        fn test_get_utf8() {
        8054  +
            run_test_suite_v4("get-utf8");
        8055  +
        }
        8056  +
        8057  +
        #[test]
        8058  +
        fn test_get_vanilla() {
        8059  +
            run_test_suite_v4("get-vanilla");
        8060  +
        }
        8061  +
        8062  +
        #[test]
        8063  +
        fn test_get_vanilla_empty_query_key() {
        8064  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        8065  +
        }
        8066  +
        8067  +
        #[test]
        8068  +
        fn test_get_vanilla_query() {
        8069  +
            run_test_suite_v4("get-vanilla-query");
        8070  +
        }
        8071  +
        8072  +
        #[test]
        8073  +
        fn test_get_vanilla_query_order_encoded() {
        8074  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        8075  +
        }
        8076  +
        8077  +
        #[test]
        8078  +
        fn test_get_vanilla_query_order_key_case() {
        8079  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        8080  +
        }
        8081  +
        8082  +
        #[test]
        8083  +
        fn test_get_vanilla_query_unreserved() {
        8084  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        8085  +
        }
        8086  +
        8087  +
        #[test]
        8088  +
        #[ignore = "httparse fails on invalid uri character"]
        8089  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8090  +
        fn test_get_vanilla_utf8_query() {
        8091  +
            run_test_suite_v4("get-vanilla-utf8-query");
        8092  +
        }
        8093  +
        8094  +
        #[test]
        8095  +
        fn test_get_vanilla_with_session_token() {
        8096  +
            run_test_suite_v4("get-vanilla-with-session-token");
        8097  +
        }
        8098  +
        8099  +
        #[test]
        8100  +
        fn test_post_header_key_case() {
        8101  +
            run_test_suite_v4("post-header-key-case");
        8102  +
        }
        8103  +
        8104  +
        #[test]
        8105  +
        fn test_post_header_key_sort() {
        8106  +
            run_test_suite_v4("post-header-key-sort");
        8107  +
        }
        8108  +
        8109  +
        #[test]
        8110  +
        fn test_post_header_value_case() {
        8111  +
            run_test_suite_v4("post-header-value-case");
        8112  +
        }
        8113  +
        8114  +
        #[test]
        8115  +
        fn test_post_sts_header_after() {
        8116  +
            run_test_suite_v4("post-sts-header-after");
        8117  +
        }
        8118  +
        8119  +
        #[test]
        8120  +
        fn test_post_sts_header_before() {
        8121  +
            run_test_suite_v4("post-sts-header-before");
        8122  +
        }
        8123  +
        8124  +
        #[test]
        8125  +
        fn test_post_vanilla() {
        8126  +
            run_test_suite_v4("post-vanilla");
        8127  +
        }
        8128  +
        8129  +
        #[test]
        8130  +
        fn test_post_vanilla_empty_query_value() {
        8131  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        8132  +
        }
        8133  +
        8134  +
        #[test]
        8135  +
        fn test_post_vanilla_query() {
        8136  +
            run_test_suite_v4("post-vanilla-query");
        8137  +
        }
        8138  +
        8139  +
        #[test]
        8140  +
        fn test_post_x_www_form_urlencoded() {
        8141  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        8142  +
        }
        8143  +
        8144  +
        #[test]
        8145  +
        fn test_post_x_www_form_urlencoded_parameters() {
        8146  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        8147  +
        }
        8148  +
    }
 6141   8149   
}
 6142   8150   
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
 6143   8151   
index be6c496..86eec20 100644
 6144         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        8152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 6145   8153   
@@ -1,242 +1,453 @@
 6146   8154   
/*
 6147   8155   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 6148   8156   
 * SPDX-License-Identifier: Apache-2.0
 6149   8157   
 */
 6150   8158   
 6151   8159   
//! Functions shared between the tests of several modules.
 6152   8160   
 6153         -
use crate::http_request::{SignableBody, SignableRequest};
        8161  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        8162  +
use crate::http_request::{
        8163  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        8164  +
    SigningSettings,
        8165  +
};
        8166  +
use aws_credential_types::Credentials;
        8167  +
use aws_smithy_runtime_api::client::identity::Identity;
 6154   8168   
use http0::{Method, Uri};
        8169  +
use std::borrow::Cow;
 6155   8170   
use std::error::Error as StdError;
        8171  +
use std::time::{Duration, SystemTime};
        8172  +
use time::format_description::well_known::Rfc3339;
        8173  +
use time::OffsetDateTime;
        8174  +
        8175  +
/// Common test suite collection
        8176  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        8177  +
enum Collection {
        8178  +
    V4,
        8179  +
    V4A,
        8180  +
}
 6156   8181   
 6157         -
pub(crate) mod v4 {
 6158         -
    use super::*;
        8182  +
/// A test from the common CRT test suite
        8183  +
#[derive(Debug, Clone)]
        8184  +
pub(crate) struct SigningSuiteTest {
        8185  +
    test_name: &'static str,
        8186  +
    collection: Collection,
        8187  +
}
 6159   8188   
 6160         -
    fn path(name: &str, ext: &str) -> String {
 6161         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        8189  +
impl SigningSuiteTest {
        8190  +
    /// Create a new test from the V4 test suite
        8191  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        8192  +
        Self {
        8193  +
            test_name,
        8194  +
            collection: Collection::V4,
 6162   8195   
        }
 6163         -
 6164         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 6165         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 6166         -
        read(&path(name, "creq")).trim().to_string()
 6167   8196   
    }
 6168   8197   
 6169         -
    pub(crate) fn test_sts(name: &str) -> String {
 6170         -
        read(&path(name, "sts"))
        8198  +
    /// Create a new test from the V4a test suite
        8199  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        8200  +
        Self {
        8201  +
            test_name,
        8202  +
            collection: Collection::V4A,
 6171   8203   
        }
 6172         -
 6173         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6174         -
        test_parsed_request(name, "req")
 6175   8204   
    }
 6176   8205   
 6177         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 6178         -
        test_parsed_request(name, "sreq")
        8206  +
    /// Get the path to a file in this test suite directory
        8207  +
    fn path(&self, filename: &str) -> String {
        8208  +
        let dir = match self.collection {
        8209  +
            Collection::V4 => "v4",
        8210  +
            Collection::V4A => "v4a",
        8211  +
        };
        8212  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 6179   8213   
    }
 6180   8214   
 6181         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 6182         -
        test_parsed_request(name, "qpsreq")
        8215  +
    /// Get the HTTP request for the test
        8216  +
    pub(crate) fn request(&self) -> TestRequest {
        8217  +
        test_parsed_request(&self.path("request.txt"))
 6183   8218   
    }
 6184   8219   
 6185         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 6186         -
        let path = path(name, ext);
 6187         -
        match parse_request(read(&path).as_bytes()) {
 6188         -
            Ok(parsed) => parsed,
 6189         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        8220  +
    /// Get the signed HTTP request for the test
        8221  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        8222  +
        match signature_location {
        8223  +
            SignatureLocation::QueryParams => {
        8224  +
                test_parsed_request(&self.path("query-signed-request.txt"))
 6190   8225   
            }
        8226  +
            SignatureLocation::Headers => {
        8227  +
                test_parsed_request(&self.path("header-signed-request.txt"))
 6191   8228   
            }
 6192         -
 6193         -
    #[test]
 6194         -
    fn test_parse() {
 6195         -
        test_request("post-header-key-case");
 6196   8229   
        }
 6197         -
 6198         -
    #[test]
 6199         -
    fn test_read_query_params() {
 6200         -
        test_request("get-vanilla-query-order-key-case");
 6201   8230   
    }
 6202         -
}
 6203         -
 6204         -
#[cfg(feature = "sigv4a")]
 6205         -
pub(crate) mod v4a {
 6206         -
    use super::*;
 6207         -
    use crate::http_request::{
 6208         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 6209         -
    };
 6210         -
    use aws_credential_types::Credentials;
 6211         -
    use aws_smithy_runtime_api::client::identity::Identity;
 6212         -
    use serde_derive::Deserialize;
 6213         -
    use std::time::{Duration, SystemTime};
 6214         -
    use time::format_description::well_known::Rfc3339;
 6215         -
    use time::OffsetDateTime;
 6216   8231   
 6217         -
    fn path(test_name: &str, definition_name: &str) -> String {
 6218         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        8232  +
    /// Get the canonical request for the test
        8233  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        8234  +
        match signature_location {
        8235  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        8236  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
 6219   8237   
        }
 6220         -
 6221         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6222         -
        test_parsed_request(&path(name, "request"))
 6223   8238   
    }
 6224   8239   
 6225         -
    pub(crate) fn test_canonical_request(
 6226         -
        name: &str,
 6227         -
        signature_location: SignatureLocation,
 6228         -
    ) -> String {
        8240  +
    /// Get the string to sign for the test
        8241  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
 6229   8242   
        match signature_location {
 6230         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 6231         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        8243  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        8244  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 6232   8245   
        }
 6233   8246   
    }
 6234   8247   
 6235         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
        8248  +
    /// Get the signature for the test
        8249  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
 6236   8250   
        match signature_location {
 6237         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 6238         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        8251  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        8252  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        8253  +
        }
 6239   8254   
    }
        8255  +
        8256  +
    /// Get the test context for the test
        8257  +
    pub(crate) fn context(&self) -> TestContext {
        8258  +
        let context = read(&self.path("context.json"));
        8259  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        8260  +
        tc_builder.build()
 6240   8261   
    }
        8262  +
}
 6241   8263   
 6242         -
    fn test_parsed_request(path: &str) -> TestRequest {
        8264  +
fn test_parsed_request(path: &str) -> TestRequest {
 6243   8265   
    match parse_request(read(path).as_bytes()) {
 6244   8266   
        Ok(parsed) => parsed,
 6245   8267   
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 6246   8268   
    }
 6247         -
    }
        8269  +
}
 6248   8270   
 6249         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 6250         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 6251         -
        let context = read(&path);
 6252         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 6253         -
        tc_builder.build()
 6254         -
    }
        8271  +
fn new_v4_signing_params_from_context(
        8272  +
    test_context: &'_ TestContext,
        8273  +
    signature_location: SignatureLocation,
        8274  +
) -> crate::http_request::SigningParams<'_> {
        8275  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        8276  +
    params.settings.signature_location = signature_location;
        8277  +
    params.into()
        8278  +
}
        8279  +
        8280  +
/// Run the given test from the v4 suite for both header and query
        8281  +
/// signature locations
        8282  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        8283  +
    run_v4_test(test_name, SignatureLocation::Headers);
        8284  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        8285  +
}
        8286  +
        8287  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        8288  +
    assert_eq!(expected.scheme(), actual.scheme());
        8289  +
    assert_eq!(expected.authority(), actual.authority());
        8290  +
    assert_eq!(expected.path(), actual.path());
        8291  +
        8292  +
    // query params may be out of order
        8293  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8294  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        8295  +
    expected_params.sort();
        8296  +
        8297  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8298  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        8299  +
    actual_params.sort();
        8300  +
        8301  +
    assert_eq!(expected_params, actual_params);
        8302  +
}
 6255   8303   
 6256         -
    pub(crate) struct TestContext {
        8304  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        8305  +
    let expected = expected.as_http_request();
        8306  +
    let actual = actual;
        8307  +
    assert_eq!(expected.method(), actual.method());
        8308  +
    assert_eq!(
        8309  +
        expected.headers().len(),
        8310  +
        actual.headers().len(),
        8311  +
        "extra or missing headers"
        8312  +
    );
        8313  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        8314  +
    assert_uri_eq(expected.uri(), actual.uri());
        8315  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        8316  +
}
        8317  +
        8318  +
/// Run the given test from the v4 suite for the given signature location
        8319  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        8320  +
    let test = SigningSuiteTest::v4(test_name);
        8321  +
    let tc = test.context();
        8322  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        8323  +
        8324  +
    let req = test.request();
        8325  +
    let expected_creq = test.canonical_request(signature_location);
        8326  +
    let signable_req = SignableRequest::from(&req);
        8327  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8328  +
        8329  +
    // check canonical request
        8330  +
    assert_eq!(
        8331  +
        expected_creq,
        8332  +
        actual_creq.to_string(),
        8333  +
        "canonical request didn't match (signature location: {signature_location:?})"
        8334  +
    );
        8335  +
        8336  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        8337  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8338  +
    let actual_string_to_sign = StringToSign::new_v4(
        8339  +
        *params.time(),
        8340  +
        params.region().unwrap(),
        8341  +
        params.name(),
        8342  +
        hashed_creq,
        8343  +
    )
        8344  +
    .to_string();
        8345  +
        8346  +
    // check string to sign
        8347  +
    assert_eq!(
        8348  +
        expected_string_to_sign, actual_string_to_sign,
        8349  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        8350  +
    );
        8351  +
        8352  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        8353  +
    let mut signed = req.as_http_request();
        8354  +
    out.output.apply_to_request_http0x(&mut signed);
        8355  +
        8356  +
    // check signature
        8357  +
    assert_eq!(
        8358  +
        test.signature(signature_location),
        8359  +
        out.signature,
        8360  +
        "signature didn't match (signature location: {signature_location:?})"
        8361  +
    );
        8362  +
        8363  +
    let expected = test.signed_request(signature_location);
        8364  +
    assert_requests_eq(expected, signed);
        8365  +
}
        8366  +
        8367  +
/// Test suite context.json
        8368  +
pub(crate) struct TestContext {
 6257   8369   
    pub(crate) identity: Identity,
 6258   8370   
    pub(crate) expiration_in_seconds: u64,
 6259   8371   
    pub(crate) normalize: bool,
 6260   8372   
    pub(crate) region: String,
 6261   8373   
    pub(crate) service: String,
 6262   8374   
    pub(crate) timestamp: String,
 6263   8375   
    pub(crate) omit_session_token: bool,
 6264   8376   
    pub(crate) sign_body: bool,
 6265         -
    }
 6266         -
 6267         -
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 6268         -
        fn from(tc: &'a TestContext) -> Self {
 6269         -
            crate::sign::v4a::SigningParams {
 6270         -
                identity: &tc.identity,
 6271         -
                region_set: &tc.region,
 6272         -
                name: &tc.service,
 6273         -
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 6274         -
                    .unwrap()
 6275         -
                    .into(),
 6276         -
                settings: SigningSettings {
 6277         -
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6278         -
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 6279         -
                    uri_path_normalization_mode: tc.normalize.into(),
 6280         -
                    session_token_mode: if tc.omit_session_token {
 6281         -
                        SessionTokenMode::Exclude
 6282         -
                    } else {
 6283         -
                        SessionTokenMode::Include
 6284         -
                    },
 6285         -
                    payload_checksum_kind: if tc.sign_body {
 6286         -
                        PayloadChecksumKind::XAmzSha256
 6287         -
                    } else {
 6288         -
                        PayloadChecksumKind::NoHeader
 6289         -
                    },
 6290         -
                    ..Default::default()
 6291         -
                },
 6292         -
            }
 6293         -
        }
 6294         -
    }
        8377  +
}
 6295   8378   
 6296         -
    // Serde has limitations requiring this odd workaround.
 6297         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 6298         -
    fn return_true() -> bool {
        8379  +
// Serde has limitations requiring this odd workaround.
        8380  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        8381  +
fn return_true() -> bool {
 6299   8382   
    true
 6300         -
    }
        8383  +
}
 6301   8384   
 6302         -
    #[derive(Deserialize)]
 6303         -
    pub(crate) struct TestContextBuilder {
        8385  +
#[derive(serde_derive::Deserialize)]
        8386  +
pub(crate) struct TestContextBuilder {
 6304   8387   
    credentials: TestContextCreds,
 6305   8388   
    expiration_in_seconds: u64,
 6306   8389   
    normalize: bool,
 6307   8390   
    region: String,
 6308   8391   
    service: String,
 6309   8392   
    timestamp: String,
 6310   8393   
    #[serde(default)]
 6311   8394   
    omit_session_token: bool,
 6312   8395   
    #[serde(default = "return_true")]
 6313   8396   
    sign_body: bool,
 6314         -
    }
        8397  +
}
 6315   8398   
 6316         -
    impl TestContextBuilder {
        8399  +
impl TestContextBuilder {
 6317   8400   
    pub(crate) fn build(self) -> TestContext {
 6318   8401   
        let identity = Identity::new(
 6319   8402   
            Credentials::from_keys(
 6320   8403   
                &self.credentials.access_key_id,
 6321   8404   
                &self.credentials.secret_access_key,
 6322   8405   
                self.credentials.token.clone(),
 6323   8406   
            ),
 6324   8407   
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 6325   8408   
        );
 6326   8409   
 6327   8410   
        TestContext {
 6328   8411   
            identity,
 6329   8412   
            expiration_in_seconds: self.expiration_in_seconds,
 6330   8413   
            normalize: self.normalize,
 6331   8414   
            region: self.region,
 6332   8415   
            service: self.service,
 6333   8416   
            timestamp: self.timestamp,
 6334   8417   
            omit_session_token: self.omit_session_token,
 6335   8418   
            sign_body: self.sign_body,
 6336   8419   
        }
 6337   8420   
    }
 6338         -
    }
        8421  +
}
 6339   8422   
 6340         -
    #[derive(Deserialize)]
 6341         -
    pub(crate) struct TestContextCreds {
        8423  +
#[derive(serde_derive::Deserialize)]
        8424  +
pub(crate) struct TestContextCreds {
 6342   8425   
    access_key_id: String,
 6343   8426   
    secret_access_key: String,
 6344   8427   
    token: Option<String>,
        8428  +
}
        8429  +
        8430  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        8431  +
    fn from(tc: &'a TestContext) -> Self {
        8432  +
        crate::sign::v4::SigningParams {
        8433  +
            identity: &tc.identity,
        8434  +
            region: &tc.region,
        8435  +
            name: &tc.service,
        8436  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8437  +
                .unwrap()
        8438  +
                .into(),
        8439  +
            settings: SigningSettings {
        8440  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8441  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8442  +
                uri_path_normalization_mode: tc.normalize.into(),
        8443  +
                session_token_mode: if tc.omit_session_token {
        8444  +
                    SessionTokenMode::Exclude
        8445  +
                } else {
        8446  +
                    SessionTokenMode::Include
        8447  +
                },
        8448  +
                payload_checksum_kind: if tc.sign_body {
        8449  +
                    PayloadChecksumKind::XAmzSha256
        8450  +
                } else {
        8451  +
                    PayloadChecksumKind::NoHeader
        8452  +
                },
        8453  +
                ..Default::default()
        8454  +
            },
        8455  +
        }
        8456  +
    }
        8457  +
}
        8458  +
        8459  +
#[cfg(feature = "sigv4a")]
        8460  +
pub(crate) mod v4a {
        8461  +
    use super::*;
        8462  +
    use crate::http_request::{
        8463  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        8464  +
    };
        8465  +
    use crate::sign::v4a;
        8466  +
    use p256::ecdsa::signature::{Signature, Verifier};
        8467  +
    use p256::ecdsa::{DerSignature, SigningKey};
        8468  +
    use std::time::Duration;
        8469  +
    use time::format_description::well_known::Rfc3339;
        8470  +
    use time::OffsetDateTime;
        8471  +
        8472  +
    fn new_v4a_signing_params_from_context(
        8473  +
        test_context: &'_ TestContext,
        8474  +
        signature_location: SignatureLocation,
        8475  +
    ) -> crate::http_request::SigningParams<'_> {
        8476  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        8477  +
        params.settings.signature_location = signature_location;
        8478  +
        params.into()
        8479  +
    }
        8480  +
        8481  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        8482  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        8483  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
        8484  +
    }
        8485  +
        8486  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        8487  +
        let test = SigningSuiteTest::v4a(test_name);
        8488  +
        let tc = test.context();
        8489  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        8490  +
        8491  +
        let req = test.request();
        8492  +
        let expected_creq = test.canonical_request(signature_location);
        8493  +
        let signable_req = SignableRequest::from(&req);
        8494  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8495  +
        8496  +
        assert_eq!(
        8497  +
            expected_creq,
        8498  +
            actual_creq.to_string(),
        8499  +
            "canonical request didn't match (signature location: {signature_location:?})"
        8500  +
        );
        8501  +
        8502  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        8503  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8504  +
        let actual_string_to_sign = StringToSign::new_v4a(
        8505  +
            *params.time(),
        8506  +
            params.region_set().unwrap(),
        8507  +
            params.name(),
        8508  +
            hashed_creq,
        8509  +
        )
        8510  +
        .to_string();
        8511  +
        8512  +
        assert_eq!(
        8513  +
            expected_string_to_sign, actual_string_to_sign,
        8514  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        8515  +
        );
        8516  +
        8517  +
        let out = sign(signable_req, &params).unwrap();
        8518  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        8519  +
        out.output
        8520  +
            .apply_to_request_http0x(&mut req.as_http_request());
        8521  +
        8522  +
        let creds = params.credentials().unwrap();
        8523  +
        let signing_key =
        8524  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        8525  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        8526  +
        let sig = sig
        8527  +
            .try_into()
        8528  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        8529  +
        8530  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        8531  +
        let peer_public_key = signing_key.verifying_key();
        8532  +
        let sts = actual_string_to_sign.as_bytes();
        8533  +
        peer_public_key.verify(sts, &sig).unwrap();
        8534  +
        // TODO(sigv4a) - use public.key.json as verifying key?
        8535  +
    }
        8536  +
        8537  +
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
        8538  +
        fn from(tc: &'a TestContext) -> Self {
        8539  +
            crate::sign::v4a::SigningParams {
        8540  +
                identity: &tc.identity,
        8541  +
                region_set: &tc.region,
        8542  +
                name: &tc.service,
        8543  +
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8544  +
                    .unwrap()
        8545  +
                    .into(),
        8546  +
                settings: SigningSettings {
        8547  +
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8548  +
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8549  +
                    uri_path_normalization_mode: tc.normalize.into(),
        8550  +
                    session_token_mode: if tc.omit_session_token {
        8551  +
                        SessionTokenMode::Exclude
        8552  +
                    } else {
        8553  +
                        SessionTokenMode::Include
        8554  +
                    },
        8555  +
                    payload_checksum_kind: if tc.sign_body {
        8556  +
                        PayloadChecksumKind::XAmzSha256
        8557  +
                    } else {
        8558  +
                        PayloadChecksumKind::NoHeader
        8559  +
                    },
        8560  +
                    ..Default::default()
        8561  +
                },
        8562  +
            }
        8563  +
        }
 6345   8564   
    }
 6346   8565   
 6347   8566   
    #[test]
 6348   8567   
    fn test_parse() {
 6349         -
        let req = test_request("post-header-key-case");
        8568  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 6350   8569   
        assert_eq!(req.method, "POST");
 6351   8570   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6352   8571   
        assert!(req.headers.is_empty());
 6353   8572   
    }
 6354   8573   
 6355   8574   
    #[test]
 6356   8575   
    fn test_read_query_params() {
 6357         -
        let req = test_request("get-header-value-trim");
        8576  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 6358   8577   
        assert_eq!(req.method, "GET");
 6359   8578   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6360   8579   
        assert!(!req.headers.is_empty());
 6361   8580   
    }
 6362   8581   
}
 6363   8582   
 6364   8583   
fn read(path: &str) -> String {
 6365   8584   
    println!("Loading `{}` for test case...", path);
 6366   8585   
    let v = {
 6367   8586   
        match std::fs::read_to_string(path) {
 6368   8587   
            // This replacement is necessary for tests to pass on Windows, as reading the
 6369   8588   
            // test snapshots from the file system results in CRLF line endings being inserted.
 6370   8589   
            Ok(value) => value.replace("\r\n", "\n"),
 6371   8590   
            Err(err) => {
 6372   8591   
                panic!("failed to load test case `{}`: {}", path, err);
 6373   8592   
            }
 6374   8593   
        }
 6375   8594   
    };
 6376   8595   
 6377   8596   
    v.trim().to_string()
 6378   8597   
}
 6379   8598   
 6380   8599   
pub(crate) struct TestRequest {
 6381   8600   
    pub(crate) uri: String,
 6382   8601   
    pub(crate) method: String,
 6383   8602   
    pub(crate) headers: Vec<(String, String)>,
 6384   8603   
    pub(crate) body: TestSignedBody,
 6385   8604   
}
 6386   8605   
 6387   8606   
pub(crate) enum TestSignedBody {
 6388   8607   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 6389   8608   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 6390   8609   
                    )
 6391   8610   
                })
 6392   8611   
                .collect::<Vec<_>>(),
 6393   8612   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 6394   8613   
        }
 6395   8614   
    }
 6396   8615   
}
 6397   8616   
 6398   8617   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 6399   8618   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 6400   8619   
        SignableRequest::new(
 6401   8620   
            &request.method,
 6402   8621   
            &request.uri,
 6403   8622   
            request
 6404   8623   
                .headers
 6405   8624   
                .iter()
 6406   8625   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 6407   8626   
            request.body.as_signable_body(),
 6408   8627   
        )
 6409   8628   
        .expect("URI MUST be valid")
 6410   8629   
    }
 6411   8630   
}
 6412   8631   
 6413   8632   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 6414   8633   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 6415   8634   
    // httparse 1.5 requires two trailing newlines to head the header section.
 6416   8635   
    let mut with_newline = Vec::from(s);
 6417   8636   
    with_newline.push(b'\n');
 6418   8637   
    let mut req = httparse::Request::new(&mut headers);
 6419         -
    let _ = req.parse(&with_newline).unwrap();
        8638  +
    let status = req.parse(&with_newline).unwrap();
        8639  +
        8640  +
    let body = if status.is_complete() {
        8641  +
        let body_offset = status.unwrap();
        8642  +
        // ignore the newline we added, take from original
        8643  +
        &s[body_offset..]
        8644  +
    } else {
        8645  +
        &[]
        8646  +
    };
 6420   8647   
 6421   8648   
    let mut uri_builder = Uri::builder().scheme("https");
 6422   8649   
    if let Some(path) = req.path {
 6423   8650   
        uri_builder = uri_builder.path_and_query(path);
 6424   8651   
    }
 6425   8652   
 6426   8653   
    let mut headers = vec![];
 6427   8654   
    for header in req.headers {
 6428   8655   
        let name = header.name.to_lowercase();
 6429   8656   
        if name == "host" {
 6430   8657   
            uri_builder = uri_builder.authority(header.value);
 6431   8658   
        } else if !name.is_empty() {
 6432   8659   
            headers.push((
 6433   8660   
                header.name.to_string(),
 6434   8661   
                std::str::from_utf8(header.value)?.to_string(),
 6435   8662   
            ));
 6436   8663   
        }
 6437   8664   
    }
 6438   8665   
 6439   8666   
    Ok(TestRequest {
 6440   8667   
        uri: uri_builder.build()?.to_string(),
 6441   8668   
        method: req.method.unwrap().to_string(),
 6442   8669   
        headers,
 6443         -
        body: TestSignedBody::Bytes(vec![]),
        8670  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 6444   8671   
    })
 6445   8672   
}
 6446   8673   
 6447   8674   
#[test]
 6448   8675   
fn test_parse_headers() {
 6449   8676   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 6450   8677   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 6451   8678   
    assert_eq!(
 6452   8679   
        httparse::parse_headers(buf, &mut headers),
 6453   8680   
        Ok(httparse::Status::Complete((
 6454   8681   
            56,
 6455   8682   
            &[
 6456   8683   
                httparse::Header {
 6457   8684   
                    name: "Host",
 6458   8685   
                    value: b"example.amazonaws.com",
 6459   8686   
                },
 6460   8687   
                httparse::Header {
 6461   8688   
                    name: "X-Amz-Date",
 6462   8689   
                    value: b"20150830T123600Z",
 6463   8690   
                }
 6464   8691   
            ][..]
 6465   8692   
        )))
 6466   8693   
    );
 6467   8694   
}
 6468   8695   
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
 6469   8696   
index a208453..fc00249 100644
 6470         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        8697  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 6471   8698   
@@ -168,52 +168,54 @@ pub mod signing_params {
 6472   8699   
        );
 6473   8700   
 6474   8701   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 6475   8702   
        /// a required argument was not given.
 6476   8703   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 6477   8704   
            Ok(SigningParams {
 6478   8705   
                identity: self
 6479   8706   
                    .identity
 6480   8707   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 6481   8708   
                region: self
 6482   8709   
                    .region
 6483   8710   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 6484   8711   
                name: self
 6485   8712   
                    .name
 6486   8713   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 6487   8714   
                time: self
 6488   8715   
                    .time
 6489   8716   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 6490   8717   
                settings: self
 6491   8718   
                    .settings
 6492   8719   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 6493   8720   
            })
 6494   8721   
        }
 6495   8722   
    }
 6496   8723   
}
 6497   8724   
 6498   8725   
#[cfg(test)]
 6499   8726   
mod tests {
 6500   8727   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 6501   8728   
    use crate::date_time::test_parsers::parse_date_time;
 6502         -
    use crate::http_request::test;
 6503   8729   
 6504   8730   
    #[test]
 6505   8731   
    fn test_signature_calculation() {
 6506   8732   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 6507         -
        let creq = test::v4::test_canonical_request("iam");
        8733  +
        let creq = r#"AWS4-HMAC-SHA256
        8734  +
20150830T123600Z
        8735  +
20150830/us-east-1/iam/aws4_request
        8736  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 6508   8737   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6509   8738   
 6510   8739   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 6511   8740   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 6512   8741   
 6513   8742   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 6514   8743   
        assert_eq!(expected, &signature);
 6515   8744   
    }
 6516   8745   
 6517   8746   
    #[test]
 6518   8747   
    fn sign_payload_empty_string() {
 6519   8748   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 6520   8749   
        let actual = sha256_hex_string([]);
 6521   8750   
        assert_eq!(expected, actual);
 6522   8751   
    }
 6523   8752   
}
 6524   8753   
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
 6525   8754   
index ce78c38..8c2f591 100644
 6526         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        8755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 6527   8756   
@@ -1,43 +1,43 @@
 6528   8757   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6529   8758   
[package]
 6530   8759   
name = "aws-smithy-checksums"
 6531   8760   
version = "0.63.5"
 6532   8761   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 6533   8762   
description = "Checksum calculation and verification callbacks"
 6534   8763   
edition = "2021"
 6535   8764   
license = "Apache-2.0"
 6536   8765   
repository = "https://github.com/smithy-lang/smithy-rs"
 6537   8766   
[package.metadata.docs.rs]
 6538   8767   
all-features = true
 6539   8768   
targets = ["x86_64-unknown-linux-gnu"]
 6540   8769   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6541   8770   
rustdoc-args = ["--cfg", "docsrs"]
 6542   8771   
 6543   8772   
[dependencies]
 6544   8773   
bytes = "1.10.0"
 6545   8774   
crc-fast = "1.3.0"
 6546   8775   
hex = "0.4.3"
 6547   8776   
http = "0.2.9"
 6548   8777   
http-body = "0.4.5"
 6549   8778   
md-5 = "0.10"
 6550   8779   
pin-project-lite = "0.2.14"
 6551   8780   
sha1 = "0.10"
 6552   8781   
sha2 = "0.10"
 6553   8782   
tracing = "0.1.40"
 6554   8783   
 6555   8784   
[dependencies.aws-smithy-http]
 6556   8785   
path = "../aws-smithy-http"
 6557         -
version = "0.62.2"
        8786  +
version = "0.62.3"
 6558   8787   
 6559   8788   
[dependencies.aws-smithy-types]
 6560   8789   
path = "../aws-smithy-types"
 6561   8790   
version = "1.3.2"
 6562   8791   
 6563   8792   
[dev-dependencies]
 6564   8793   
bytes-utils = "0.1.2"
 6565   8794   
pretty_assertions = "1.3"
 6566   8795   
tracing-test = "0.2.1"
 6567   8796   
 6568   8797   
[dev-dependencies.tokio]
 6569   8798   
version = "1.23.1"
 6570   8799   
features = ["macros", "rt"]
 6571   8800   
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
 6572   8801   
index 970c99e..d3c7a49 100644
 6573         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        8802  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 6574   8803   
@@ -1,34 +1,34 @@
 6575   8804   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6576   8805   
[package]
 6577   8806   
name = "aws-smithy-http"
 6578         -
version = "0.62.2"
        8807  +
version = "0.62.3"
 6579   8808   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6580   8809   
description = "Smithy HTTP logic for smithy-rs."
 6581   8810   
edition = "2021"
 6582   8811   
license = "Apache-2.0"
 6583   8812   
repository = "https://github.com/smithy-lang/smithy-rs"
 6584   8813   
[package.metadata.docs.rs]
 6585   8814   
all-features = true
 6586   8815   
targets = ["x86_64-unknown-linux-gnu"]
 6587   8816   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6588   8817   
rustdoc-args = ["--cfg", "docsrs"]
 6589   8818   
 6590   8819   
[features]
 6591   8820   
event-stream = ["aws-smithy-eventstream"]
 6592   8821   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 6593   8822   
 6594   8823   
[dependencies]
 6595   8824   
bytes = "1.10.0"
 6596   8825   
bytes-utils = "0.1"
 6597   8826   
percent-encoding = "2.3.1"
 6598   8827   
pin-project-lite = "0.2.14"
 6599   8828   
pin-utils = "0.1.0"
 6600   8829   
tracing = "0.1.40"
 6601   8830   
futures-core = "0.3.31"
 6602   8831   
 6603   8832   
[dependencies.aws-smithy-eventstream]
 6604   8833   
path = "../aws-smithy-eventstream"
 6605   8834   
optional = true
 6606   8835   
version = "0.60.10"
 6607   8836   
 6608   8837   
[dependencies.aws-smithy-runtime-api]
 6609   8838   
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
 6610   8839   
index 508f7a2..361545e 100644
 6611         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        8840  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 6612   8841   
@@ -1,27 +1,27 @@
 6613   8842   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6614   8843   
[[bin]]
 6615   8844   
name = "read_many_from_str"
 6616   8845   
path = "fuzz_targets/read_many_from_str.rs"
 6617   8846   
test = false
 6618   8847   
doc = false
 6619   8848   
 6620   8849   
[package]
 6621   8850   
name = "aws-smithy-http-fuzz"
 6622   8851   
version = "0.0.0"
 6623   8852   
authors = ["Automatically generated"]
 6624   8853   
publish = false
 6625   8854   
edition = "2021"
 6626   8855   
 6627   8856   
[package.metadata]
 6628   8857   
cargo-fuzz = true
 6629   8858   
 6630   8859   
[dependencies]
 6631   8860   
libfuzzer-sys = "=0.4.7"
 6632   8861   
http = "0.2.3"
 6633   8862   
 6634   8863   
[dependencies.aws-smithy-http]
 6635   8864   
path = ".."
 6636         -
version = "0.62.2"
        8865  +
version = "0.62.3"
 6637   8866   
 6638   8867   
[workspace]
 6639   8868   
members = ["."]
 6640   8869   
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
 6641   8870   
index fef41d0..2792229 100644
 6642         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        8871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 6643   8872   
@@ -25,68 +25,74 @@ impl QueryWriter {
 6644   8873   
    pub fn new(uri: &Uri) -> Self {
 6645   8874   
        let new_path_and_query = uri
 6646   8875   
            .path_and_query()
 6647   8876   
            .map(|pq| pq.to_string())
 6648   8877   
            .unwrap_or_default();
 6649   8878   
        let prefix = if uri.query().is_none() {
 6650   8879   
            Some('?')
 6651   8880   
        } else if !uri.query().unwrap_or_default().is_empty() {
 6652   8881   
            Some('&')
 6653   8882   
        } else {
 6654   8883   
            None
 6655   8884   
        };
 6656   8885   
        QueryWriter {
 6657   8886   
            base_uri: uri.clone(),
 6658   8887   
            new_path_and_query,
 6659   8888   
            prefix,
 6660   8889   
        }
 6661   8890   
    }
 6662   8891   
 6663   8892   
    /// Clears all query parameters.
 6664   8893   
    pub fn clear_params(&mut self) {
 6665   8894   
        if let Some(index) = self.new_path_and_query.find('?') {
 6666   8895   
            self.new_path_and_query.truncate(index);
 6667   8896   
            self.prefix = Some('?');
 6668   8897   
        }
 6669   8898   
    }
 6670   8899   
 6671   8900   
    /// Inserts a new query parameter. The key and value are percent encoded
 6672   8901   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 6673   8902   
    pub fn insert(&mut self, k: &str, v: &str) {
        8903  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        8904  +
    }
        8905  +
    
        8906  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        8907  +
    /// as is.
        8908  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 6674   8909   
        if let Some(prefix) = self.prefix {
 6675   8910   
            self.new_path_and_query.push(prefix);
 6676   8911   
        }
 6677   8912   
        self.prefix = Some('&');
 6678         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        8913  +
        self.new_path_and_query.push_str(encoded_k);
 6679   8914   
        self.new_path_and_query.push('=');
        8915  +
        self.new_path_and_query.push_str(encoded_v)
 6680   8916   
        
 6681         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
 6682   8917   
    }
 6683   8918   
 6684   8919   
    /// Returns just the built query string.
 6685   8920   
    pub fn build_query(self) -> String {
 6686   8921   
        self.build_uri().query().unwrap_or_default().to_string()
 6687   8922   
    }
 6688   8923   
 6689   8924   
    /// Returns a full [`Uri`] with the query string updated.
 6690   8925   
    pub fn build_uri(self) -> Uri {
 6691   8926   
        let mut parts = self.base_uri.into_parts();
 6692   8927   
        parts.path_and_query = Some(
 6693   8928   
            self.new_path_and_query
 6694   8929   
                .parse()
 6695   8930   
                .expect("adding query should not invalidate URI"),
 6696   8931   
        );
 6697   8932   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 6698   8933   
    }
 6699   8934   
}
 6700   8935   
 6701   8936   
#[cfg(test)]
 6702   8937   
mod test {
 6703   8938   
    use super::QueryWriter;
 6704   8939   
    use http_02x::Uri;
 6705   8940   
 6706   8941   
    #[test]
 6707   8942   
    fn empty_uri() {
 6708   8943   
        let uri = Uri::from_static("http://www.example.com");
 6709   8944   
        let mut query_writer = QueryWriter::new(&uri);
 6710   8945   
        query_writer.insert("key", "val%ue");
 6711   8946   
        query_writer.insert("another", "value");
 6712   8947   
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
 6713   8948   
index f108978..df7a9fe 100644
 6714         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        8949  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 6715   8950   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 6716   8951   
 6717   8952   
[package.metadata.smithy-rs-release-tooling]
 6718   8953   
stable = true
 6719   8954   
[package.metadata.cargo-udeps.ignore]
 6720   8955   
normal = ["aws-smithy-http"]
 6721   8956   
 6722   8957   
[features]
 6723   8958   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 6724   8959   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 6725   8960   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 6726   8961   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 6727   8962   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 6728   8963   
rt-tokio = ["tokio/rt"]
 6729   8964   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 6730   8965   
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"]
 6731   8966   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 6732   8967   
 6733   8968   
[dependencies]
 6734   8969   
bytes = "1.10.0"
 6735   8970   
fastrand = "2.3.0"
 6736   8971   
pin-project-lite = "0.2.14"
 6737   8972   
pin-utils = "0.1.0"
 6738   8973   
tracing = "0.1.40"
 6739   8974   
 6740   8975   
[dependencies.aws-smithy-async]
 6741   8976   
path = "../aws-smithy-async"
 6742   8977   
version = "1.2.5"
 6743   8978   
 6744   8979   
[dependencies.aws-smithy-http]
 6745   8980   
path = "../aws-smithy-http"
 6746         -
version = "0.62.2"
        8981  +
version = "0.62.3"
 6747   8982   
 6748   8983   
[dependencies.aws-smithy-observability]
 6749   8984   
path = "../aws-smithy-observability"
 6750   8985   
version = "0.1.3"
 6751   8986   
 6752   8987   
[dependencies.aws-smithy-runtime-api]
 6753   8988   
path = "../aws-smithy-runtime-api"
 6754   8989   
version = "1.8.5"
 6755   8990   
 6756   8991   
[dependencies.aws-smithy-types]
 6757   8992   
path = "../aws-smithy-types"
 6758   8993   
features = ["http-body-0-4-x"]
 6759   8994   
version = "1.3.2"
 6760   8995   
 6761   8996   
[dependencies.aws-smithy-http-client]
 6762   8997   
path = "../aws-smithy-http-client"
 6763   8998   
optional = true
 6764   8999   
version = "1.0.6"
 6765   9000   
 6766   9001   
[dependencies.http-02x]
 6767   9002   
package = "http"
 6768   9003   
version = "0.2.9"
 6769   9004   
 6770   9005   
[dependencies.http-1x]
 6771   9006   
package = "http"
 6772   9007   
version = "1"
 6773   9008   
 6774   9009   
[dependencies.http-body-04x]
 6775   9010   
package = "http-body"
 6776   9011   
version = "0.4.5"
 6777   9012   
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
 6778   9013   
index 4e050c6..f58eb1c 100644
 6779         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
        9014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 6780   9015   
@@ -1,33 +1,33 @@
 6781   9016   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6782   9017   
[package]
 6783   9018   
name = "aws-smithy-wasm"
 6784   9019   
version = "0.1.4"
 6785   9020   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 6786   9021   
description = "Smithy WebAssembly configuration for smithy-rs."
 6787   9022   
edition = "2021"
 6788   9023   
license = "Apache-2.0"
 6789   9024   
repository = "https://github.com/awslabs/smithy-rs"
 6790   9025   
[package.metadata.docs.rs]
 6791   9026   
all-features = true
 6792   9027   
targets = ["x86_64-unknown-linux-gnu"]
 6793   9028   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6794   9029   
rustdoc-args = ["--cfg", "docsrs"]
 6795   9030   
 6796   9031   
[dependencies]
 6797   9032   
bytes = "1.10.0"
 6798   9033   
http = "1.0.0"
 6799   9034   
tracing = "0.1.40"
 6800   9035   
wasi = "0.12.1"
 6801   9036   
 6802   9037   
[dependencies.aws-smithy-runtime-api]
 6803   9038   
path = "../aws-smithy-runtime-api"
 6804   9039   
features = ["http-1x"]
 6805   9040   
version = "1.8.5"
 6806   9041   
 6807   9042   
[dependencies.aws-smithy-http]
 6808   9043   
path = "../aws-smithy-http"
 6809         -
version = "0.62.2"
        9044  +
version = "0.62.3"
 6810   9045   
 6811   9046   
[dependencies.aws-smithy-types]
 6812   9047   
path = "../aws-smithy-types"
 6813   9048   
version = "1.3.2"
 6814   9049   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6815   9050   
index a880648..139e808 100644
 6816         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
        9051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6817   9052   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 6818   9053   
edition = "2021"
 6819   9054   
license = "Apache-2.0"
 6820   9055   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6821   9056   
rust-version = "1.86.0"
 6822   9057   
readme = "README.md"
 6823   9058   
[package.metadata.smithy]
 6824   9059   
codegen-version = "ci"
 6825   9060   
[package.metadata.docs.rs]
 6826   9061   
all-features = true
 6827   9062   
targets = ["x86_64-unknown-linux-gnu"]
 6828   9063   
[dependencies.aws-credential-types]
 6829   9064   
path = "../aws-credential-types"
 6830   9065   
version = "1.2.4"
 6831   9066   
 6832   9067   
[dependencies.aws-runtime]
 6833   9068   
path = "../aws-runtime"
 6834   9069   
features = ["event-stream"]
 6835   9070   
version = "1.5.9"
 6836   9071   
 6837   9072   
[dependencies.aws-smithy-async]
 6838   9073   
path = "../aws-smithy-async"
 6839   9074   
version = "1.2.5"
 6840   9075   
 6841   9076   
[dependencies.aws-smithy-eventstream]
 6842   9077   
path = "../aws-smithy-eventstream"
 6843   9078   
version = "0.60.10"
 6844   9079   
 6845   9080   
[dependencies.aws-smithy-http]
 6846   9081   
path = "../aws-smithy-http"
 6847   9082   
features = ["event-stream"]
 6848         -
version = "0.62.2"
        9083  +
version = "0.62.3"
 6849   9084   
 6850   9085   
[dependencies.aws-smithy-json]
 6851   9086   
path = "../aws-smithy-json"
 6852   9087   
version = "0.61.4"
 6853   9088   
 6854   9089   
[dependencies.aws-smithy-runtime]
 6855   9090   
path = "../aws-smithy-runtime"
 6856   9091   
features = ["client"]
 6857   9092   
version = "1.8.5"
 6858   9093   
 6859   9094   
[dependencies.aws-smithy-runtime-api]
 6860   9095   
path = "../aws-smithy-runtime-api"
 6861   9096   
features = ["client", "http-02x"]
 6862   9097   
version = "1.8.5"
 6863   9098   
 6864   9099   
[dependencies.aws-smithy-types]
 6865   9100   
path = "../aws-smithy-types"
 6866   9101   
version = "1.3.2"
 6867   9102   
 6868   9103   
[dependencies.aws-types]
 6869   9104   
path = "../aws-types"
 6870   9105   
version = "1.3.8"
 6871   9106   
 6872   9107   
[dependencies.bytes]
 6873   9108   
version = "1.4.0"
 6874   9109   
 6875   9110   
[dependencies.fastrand]
 6876   9111   
version = "2.0.0"
 6877   9112   
 6878   9113   
[dependencies.http]
 6879   9114   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6880   9115   
index 415ecc9..667d12b 100644
 6881         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
        9116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6882   9117   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 6883   9118   
edition = "2021"
 6884   9119   
license = "Apache-2.0"
 6885   9120   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6886   9121   
rust-version = "1.86.0"
 6887   9122   
readme = "README.md"
 6888   9123   
[package.metadata.smithy]
 6889   9124   
codegen-version = "ci"
 6890   9125   
[package.metadata.docs.rs]
 6891   9126   
all-features = true
 6892   9127   
targets = ["x86_64-unknown-linux-gnu"]
 6893   9128   
[dependencies.aws-credential-types]
 6894   9129   
path = "../aws-credential-types"
 6895   9130   
version = "1.2.4"
 6896   9131   
 6897   9132   
[dependencies.aws-runtime]
 6898   9133   
path = "../aws-runtime"
 6899   9134   
features = ["event-stream"]
 6900   9135   
version = "1.5.9"
 6901   9136   
 6902   9137   
[dependencies.aws-smithy-async]
 6903   9138   
path = "../aws-smithy-async"
 6904   9139   
version = "1.2.5"
 6905   9140   
 6906   9141   
[dependencies.aws-smithy-eventstream]
 6907   9142   
path = "../aws-smithy-eventstream"
 6908   9143   
version = "0.60.10"
 6909   9144   
 6910   9145   
[dependencies.aws-smithy-http]
 6911   9146   
path = "../aws-smithy-http"
 6912   9147   
features = ["event-stream"]
 6913         -
version = "0.62.2"
        9148  +
version = "0.62.3"
 6914   9149   
 6915   9150   
[dependencies.aws-smithy-json]
 6916   9151   
path = "../aws-smithy-json"
 6917   9152   
version = "0.61.4"
 6918   9153   
 6919   9154   
[dependencies.aws-smithy-runtime]
 6920   9155   
path = "../aws-smithy-runtime"
 6921   9156   
features = ["client"]
 6922   9157   
version = "1.8.5"
 6923   9158   
 6924   9159   
[dependencies.aws-smithy-runtime-api]
 6925   9160   
path = "../aws-smithy-runtime-api"
 6926   9161   
features = ["client", "http-02x"]
 6927   9162   
version = "1.8.5"
 6928   9163   
 6929   9164   
[dependencies.aws-smithy-types]
 6930   9165   
path = "../aws-smithy-types"
 6931   9166   
version = "1.3.2"
 6932   9167   
 6933   9168   
[dependencies.aws-types]
 6934   9169   
path = "../aws-types"
 6935   9170   
version = "1.3.8"
 6936   9171   
 6937   9172   
[dependencies.bytes]
 6938   9173   
version = "1.4.0"
 6939   9174   
 6940   9175   
[dependencies.fastrand]
 6941   9176   
version = "2.0.0"
 6942   9177   
 6943   9178   
[dependencies.http]
 6944   9179   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 6945   9180   
index 8871cab..ed88de6 100644
 6946         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
        9181  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 6947   9182   
@@ -1,61 +1,61 @@
 6948   9183   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6949   9184   
[package]
 6950   9185   
name = "aws-sdk-codecatalyst"
 6951   9186   
version = "0.0.0-local"
 6952   9187   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6953   9188   
description = "AWS SDK for Amazon CodeCatalyst"
 6954   9189   
edition = "2021"
 6955   9190   
license = "Apache-2.0"
 6956   9191   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6957   9192   
rust-version = "1.86.0"
 6958   9193   
readme = "README.md"
 6959   9194   
[package.metadata.smithy]
 6960   9195   
codegen-version = "ci"
 6961   9196   
[package.metadata.docs.rs]
 6962   9197   
all-features = true
 6963   9198   
targets = ["x86_64-unknown-linux-gnu"]
 6964   9199   
[dependencies.aws-credential-types]
 6965   9200   
path = "../aws-credential-types"
 6966   9201   
version = "1.2.4"
 6967   9202   
 6968   9203   
[dependencies.aws-runtime]
 6969   9204   
path = "../aws-runtime"
 6970   9205   
version = "1.5.9"
 6971   9206   
 6972   9207   
[dependencies.aws-smithy-async]
 6973   9208   
path = "../aws-smithy-async"
 6974   9209   
version = "1.2.5"
 6975   9210   
 6976   9211   
[dependencies.aws-smithy-http]
 6977   9212   
path = "../aws-smithy-http"
 6978         -
version = "0.62.2"
        9213  +
version = "0.62.3"
 6979   9214   
 6980   9215   
[dependencies.aws-smithy-json]
 6981   9216   
path = "../aws-smithy-json"
 6982   9217   
version = "0.61.4"
 6983   9218   
 6984   9219   
[dependencies.aws-smithy-runtime]
 6985   9220   
path = "../aws-smithy-runtime"
 6986   9221   
features = ["client", "http-auth"]
 6987   9222   
version = "1.8.5"
 6988   9223   
 6989   9224   
[dependencies.aws-smithy-runtime-api]
 6990   9225   
path = "../aws-smithy-runtime-api"
 6991   9226   
features = ["client", "http-02x", "http-auth"]
 6992   9227   
version = "1.8.5"
 6993   9228   
 6994   9229   
[dependencies.aws-smithy-types]
 6995   9230   
path = "../aws-smithy-types"
 6996   9231   
version = "1.3.2"
 6997   9232   
 6998   9233   
[dependencies.aws-types]
 6999   9234   
path = "../aws-types"
 7000   9235   
version = "1.3.8"
 7001   9236   
 7002   9237   
[dependencies.bytes]
 7003   9238   
version = "1.4.0"
 7004   9239   
 7005   9240   
[dependencies.fastrand]
 7006   9241   
version = "2.0.0"
 7007   9242   
 7008   9243   
[dependencies.http]
 7009   9244   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7010   9245   
index 89573ff..05238af 100644
 7011         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
        9246  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7012   9247   
@@ -1,61 +1,61 @@
 7013   9248   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7014   9249   
[package]
 7015   9250   
name = "aws-sdk-config"
 7016   9251   
version = "0.0.0-local"
 7017   9252   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7018   9253   
description = "AWS SDK for AWS Config"
 7019   9254   
edition = "2021"
 7020   9255   
license = "Apache-2.0"
 7021   9256   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7022   9257   
rust-version = "1.86.0"
 7023   9258   
readme = "README.md"
 7024   9259   
[package.metadata.smithy]
 7025   9260   
codegen-version = "ci"
 7026   9261   
[package.metadata.docs.rs]
 7027   9262   
all-features = true
 7028   9263   
targets = ["x86_64-unknown-linux-gnu"]
 7029   9264   
[dependencies.aws-credential-types]
 7030   9265   
path = "../aws-credential-types"
 7031   9266   
version = "1.2.4"
 7032   9267   
 7033   9268   
[dependencies.aws-runtime]
 7034   9269   
path = "../aws-runtime"
 7035   9270   
version = "1.5.9"
 7036   9271   
 7037   9272   
[dependencies.aws-smithy-async]
 7038   9273   
path = "../aws-smithy-async"
 7039   9274   
version = "1.2.5"
 7040   9275   
 7041   9276   
[dependencies.aws-smithy-http]
 7042   9277   
path = "../aws-smithy-http"
 7043         -
version = "0.62.2"
        9278  +
version = "0.62.3"
 7044   9279   
 7045   9280   
[dependencies.aws-smithy-json]
 7046   9281   
path = "../aws-smithy-json"
 7047   9282   
version = "0.61.4"
 7048   9283   
 7049   9284   
[dependencies.aws-smithy-runtime]
 7050   9285   
path = "../aws-smithy-runtime"
 7051   9286   
features = ["client"]
 7052   9287   
version = "1.8.5"
 7053   9288   
 7054   9289   
[dependencies.aws-smithy-runtime-api]
 7055   9290   
path = "../aws-smithy-runtime-api"
 7056   9291   
features = ["client", "http-02x"]
 7057   9292   
version = "1.8.5"
 7058   9293   
 7059   9294   
[dependencies.aws-smithy-types]
 7060   9295   
path = "../aws-smithy-types"
 7061   9296   
version = "1.3.2"
 7062   9297   
 7063   9298   
[dependencies.aws-types]
 7064   9299   
path = "../aws-types"
 7065   9300   
version = "1.3.8"
 7066   9301   
 7067   9302   
[dependencies.bytes]
 7068   9303   
version = "1.4.0"
 7069   9304   
 7070   9305   
[dependencies.fastrand]
 7071   9306   
version = "2.0.0"
 7072   9307   
 7073   9308   
[dependencies.http]
 7074   9309   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7075   9310   
index d397c58..2c1062b 100644
 7076         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
        9311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7077   9312   
@@ -1,61 +1,61 @@
 7078   9313   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7079   9314   
[package]
 7080   9315   
name = "aws-sdk-dynamodb"
 7081   9316   
version = "0.0.0-local"
 7082   9317   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7083   9318   
description = "AWS SDK for Amazon DynamoDB"
 7084   9319   
edition = "2021"
 7085   9320   
license = "Apache-2.0"
 7086   9321   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7087   9322   
rust-version = "1.86.0"
 7088   9323   
readme = "README.md"
 7089   9324   
[package.metadata.smithy]
 7090   9325   
codegen-version = "ci"
 7091   9326   
[package.metadata.docs.rs]
 7092   9327   
all-features = true
 7093   9328   
targets = ["x86_64-unknown-linux-gnu"]
 7094   9329   
[dependencies.aws-credential-types]
 7095   9330   
path = "../aws-credential-types"
 7096   9331   
version = "1.2.4"
 7097   9332   
 7098   9333   
[dependencies.aws-runtime]
 7099   9334   
path = "../aws-runtime"
 7100   9335   
version = "1.5.9"
 7101   9336   
 7102   9337   
[dependencies.aws-smithy-async]
 7103   9338   
path = "../aws-smithy-async"
 7104   9339   
version = "1.2.5"
 7105   9340   
 7106   9341   
[dependencies.aws-smithy-http]
 7107   9342   
path = "../aws-smithy-http"
 7108         -
version = "0.62.2"
        9343  +
version = "0.62.3"
 7109   9344   
 7110   9345   
[dependencies.aws-smithy-json]
 7111   9346   
path = "../aws-smithy-json"
 7112   9347   
version = "0.61.4"
 7113   9348   
 7114   9349   
[dependencies.aws-smithy-runtime]
 7115   9350   
path = "../aws-smithy-runtime"
 7116   9351   
features = ["client"]
 7117   9352   
version = "1.8.5"
 7118   9353   
 7119   9354   
[dependencies.aws-smithy-runtime-api]
 7120   9355   
path = "../aws-smithy-runtime-api"
 7121   9356   
features = ["client", "http-02x"]
 7122   9357   
version = "1.8.5"
 7123   9358   
 7124   9359   
[dependencies.aws-smithy-types]
 7125   9360   
path = "../aws-smithy-types"
 7126   9361   
version = "1.3.2"
 7127   9362   
 7128   9363   
[dependencies.aws-types]
 7129   9364   
path = "../aws-types"
 7130   9365   
version = "1.3.8"
 7131   9366   
 7132   9367   
[dependencies.bytes]
 7133   9368   
version = "1.4.0"
 7134   9369   
 7135   9370   
[dependencies.fastrand]
 7136   9371   
version = "2.0.0"
 7137   9372   
 7138   9373   
[dependencies.http]
 7139   9374   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7140   9375   
index c0ba315..46168af 100644
 7141         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
        9376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7142   9377   
@@ -1,61 +1,61 @@
 7143   9378   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7144   9379   
[package]
 7145   9380   
name = "aws-sdk-ec2"
 7146   9381   
version = "0.0.0-local"
 7147   9382   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7148   9383   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 7149   9384   
edition = "2021"
 7150   9385   
license = "Apache-2.0"
 7151   9386   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7152   9387   
rust-version = "1.86.0"
 7153   9388   
readme = "README.md"
 7154   9389   
[package.metadata.smithy]
 7155   9390   
codegen-version = "ci"
 7156   9391   
[package.metadata.docs.rs]
 7157   9392   
all-features = true
 7158   9393   
targets = ["x86_64-unknown-linux-gnu"]
 7159   9394   
[dependencies.aws-credential-types]
 7160   9395   
path = "../aws-credential-types"
 7161   9396   
version = "1.2.4"
 7162   9397   
 7163   9398   
[dependencies.aws-runtime]
 7164   9399   
path = "../aws-runtime"
 7165   9400   
version = "1.5.9"
 7166   9401   
 7167   9402   
[dependencies.aws-smithy-async]
 7168   9403   
path = "../aws-smithy-async"
 7169   9404   
version = "1.2.5"
 7170   9405   
 7171   9406   
[dependencies.aws-smithy-http]
 7172   9407   
path = "../aws-smithy-http"
 7173         -
version = "0.62.2"
        9408  +
version = "0.62.3"
 7174   9409   
 7175   9410   
[dependencies.aws-smithy-json]
 7176   9411   
path = "../aws-smithy-json"
 7177   9412   
version = "0.61.4"
 7178   9413   
 7179   9414   
[dependencies.aws-smithy-query]
 7180   9415   
path = "../aws-smithy-query"
 7181   9416   
version = "0.60.7"
 7182   9417   
 7183   9418   
[dependencies.aws-smithy-runtime]
 7184   9419   
path = "../aws-smithy-runtime"
 7185   9420   
features = ["client"]
 7186   9421   
version = "1.8.5"
 7187   9422   
 7188   9423   
[dependencies.aws-smithy-runtime-api]
 7189   9424   
path = "../aws-smithy-runtime-api"
 7190   9425   
features = ["client", "http-02x"]
 7191   9426   
version = "1.8.5"
 7192   9427   
 7193   9428   
[dependencies.aws-smithy-types]
 7194   9429   
path = "../aws-smithy-types"
 7195   9430   
version = "1.3.2"
 7196   9431   
 7197   9432   
[dependencies.aws-smithy-xml]
 7198   9433   
path = "../aws-smithy-xml"
 7199   9434   
version = "0.60.10"
 7200   9435   
 7201   9436   
[dependencies.aws-types]
 7202   9437   
path = "../aws-types"
 7203   9438   
version = "1.3.8"
 7204   9439   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7205   9440   
index 4474d17..095d40e 100644
 7206         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
        9441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7207   9442   
@@ -1,61 +1,61 @@
 7208   9443   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7209   9444   
[package]
 7210   9445   
name = "aws-sdk-ecs"
 7211   9446   
version = "0.0.0-local"
 7212   9447   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7213   9448   
description = "AWS SDK for Amazon EC2 Container Service"
 7214   9449   
edition = "2021"
 7215   9450   
license = "Apache-2.0"
 7216   9451   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7217   9452   
rust-version = "1.86.0"
 7218   9453   
readme = "README.md"
 7219   9454   
[package.metadata.smithy]
 7220   9455   
codegen-version = "ci"
 7221   9456   
[package.metadata.docs.rs]
 7222   9457   
all-features = true
 7223   9458   
targets = ["x86_64-unknown-linux-gnu"]
 7224   9459   
[dependencies.aws-credential-types]
 7225   9460   
path = "../aws-credential-types"
 7226   9461   
version = "1.2.4"
 7227   9462   
 7228   9463   
[dependencies.aws-runtime]
 7229   9464   
path = "../aws-runtime"
 7230   9465   
version = "1.5.9"
 7231   9466   
 7232   9467   
[dependencies.aws-smithy-async]
 7233   9468   
path = "../aws-smithy-async"
 7234   9469   
version = "1.2.5"
 7235   9470   
 7236   9471   
[dependencies.aws-smithy-http]
 7237   9472   
path = "../aws-smithy-http"
 7238         -
version = "0.62.2"
        9473  +
version = "0.62.3"
 7239   9474   
 7240   9475   
[dependencies.aws-smithy-json]
 7241   9476   
path = "../aws-smithy-json"
 7242   9477   
version = "0.61.4"
 7243   9478   
 7244   9479   
[dependencies.aws-smithy-runtime]
 7245   9480   
path = "../aws-smithy-runtime"
 7246   9481   
features = ["client"]
 7247   9482   
version = "1.8.5"
 7248   9483   
 7249   9484   
[dependencies.aws-smithy-runtime-api]
 7250   9485   
path = "../aws-smithy-runtime-api"
 7251   9486   
features = ["client", "http-02x"]
 7252   9487   
version = "1.8.5"
 7253   9488   
 7254   9489   
[dependencies.aws-smithy-types]
 7255   9490   
path = "../aws-smithy-types"
 7256   9491   
version = "1.3.2"
 7257   9492   
 7258   9493   
[dependencies.aws-types]
 7259   9494   
path = "../aws-types"
 7260   9495   
version = "1.3.8"
 7261   9496   
 7262   9497   
[dependencies.bytes]
 7263   9498   
version = "1.4.0"
 7264   9499   
 7265   9500   
[dependencies.fastrand]
 7266   9501   
version = "2.0.0"
 7267   9502   
 7268   9503   
[dependencies.http]
 7269   9504   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7270   9505   
index 15b1d77..16d7d89 100644
 7271         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
        9506  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7272   9507   
@@ -1,65 +1,65 @@
 7273   9508   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7274   9509   
[package]
 7275   9510   
name = "aws-sdk-glacier"
 7276   9511   
version = "0.0.0-local"
 7277   9512   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7278   9513   
description = "AWS SDK for Amazon Glacier"
 7279   9514   
edition = "2021"
 7280   9515   
license = "Apache-2.0"
 7281   9516   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7282   9517   
rust-version = "1.86.0"
 7283   9518   
readme = "README.md"
 7284   9519   
[package.metadata.smithy]
 7285   9520   
codegen-version = "ci"
 7286   9521   
[package.metadata.docs.rs]
 7287   9522   
all-features = true
 7288   9523   
targets = ["x86_64-unknown-linux-gnu"]
 7289   9524   
[dependencies.aws-credential-types]
 7290   9525   
path = "../aws-credential-types"
 7291   9526   
version = "1.2.4"
 7292   9527   
 7293   9528   
[dependencies.aws-runtime]
 7294   9529   
path = "../aws-runtime"
 7295   9530   
version = "1.5.9"
 7296   9531   
 7297   9532   
[dependencies.aws-sigv4]
 7298   9533   
path = "../aws-sigv4"
 7299         -
version = "1.3.3"
        9534  +
version = "1.3.4"
 7300   9535   
 7301   9536   
[dependencies.aws-smithy-async]
 7302   9537   
path = "../aws-smithy-async"
 7303   9538   
version = "1.2.5"
 7304   9539   
 7305   9540   
[dependencies.aws-smithy-http]
 7306   9541   
path = "../aws-smithy-http"
 7307         -
version = "0.62.2"
        9542  +
version = "0.62.3"
 7308   9543   
 7309   9544   
[dependencies.aws-smithy-json]
 7310   9545   
path = "../aws-smithy-json"
 7311   9546   
version = "0.61.4"
 7312   9547   
 7313   9548   
[dependencies.aws-smithy-runtime]
 7314   9549   
path = "../aws-smithy-runtime"
 7315   9550   
features = ["client"]
 7316   9551   
version = "1.8.5"
 7317   9552   
 7318   9553   
[dependencies.aws-smithy-runtime-api]
 7319   9554   
path = "../aws-smithy-runtime-api"
 7320   9555   
features = ["client", "http-02x"]
 7321   9556   
version = "1.8.5"
 7322   9557   
 7323   9558   
[dependencies.aws-smithy-types]
 7324   9559   
path = "../aws-smithy-types"
 7325   9560   
version = "1.3.2"
 7326   9561   
 7327   9562   
[dependencies.aws-types]
 7328   9563   
path = "../aws-types"
 7329   9564   
version = "1.3.8"
 7330   9565   
 7331   9566   
[dependencies.bytes]
 7332   9567   
version = "1.4.0"
 7333   9568   
 7334   9569   
[dependencies.fastrand]
 7335   9570   
version = "2.0.0"
 7336   9571   
 7337   9572   
[dependencies.hex]
 7338   9573   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7339   9574   
index d718a3a..65e6f24 100644
 7340         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
        9575  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7341   9576   
@@ -1,61 +1,61 @@
 7342   9577   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7343   9578   
[package]
 7344   9579   
name = "aws-sdk-iam"
 7345   9580   
version = "0.0.0-local"
 7346   9581   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7347   9582   
description = "AWS SDK for AWS Identity and Access Management"
 7348   9583   
edition = "2021"
 7349   9584   
license = "Apache-2.0"
 7350   9585   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7351   9586   
rust-version = "1.86.0"
 7352   9587   
readme = "README.md"
 7353   9588   
[package.metadata.smithy]
 7354   9589   
codegen-version = "ci"
 7355   9590   
[package.metadata.docs.rs]
 7356   9591   
all-features = true
 7357   9592   
targets = ["x86_64-unknown-linux-gnu"]
 7358   9593   
[dependencies.aws-credential-types]
 7359   9594   
path = "../aws-credential-types"
 7360   9595   
version = "1.2.4"
 7361   9596   
 7362   9597   
[dependencies.aws-runtime]
 7363   9598   
path = "../aws-runtime"
 7364   9599   
version = "1.5.9"
 7365   9600   
 7366   9601   
[dependencies.aws-smithy-async]
 7367   9602   
path = "../aws-smithy-async"
 7368   9603   
version = "1.2.5"
 7369   9604   
 7370   9605   
[dependencies.aws-smithy-http]
 7371   9606   
path = "../aws-smithy-http"
 7372         -
version = "0.62.2"
        9607  +
version = "0.62.3"
 7373   9608   
 7374   9609   
[dependencies.aws-smithy-json]
 7375   9610   
path = "../aws-smithy-json"
 7376   9611   
version = "0.61.4"
 7377   9612   
 7378   9613   
[dependencies.aws-smithy-query]
 7379   9614   
path = "../aws-smithy-query"
 7380   9615   
version = "0.60.7"
 7381   9616   
 7382   9617   
[dependencies.aws-smithy-runtime]
 7383   9618   
path = "../aws-smithy-runtime"
 7384   9619   
features = ["client"]
 7385   9620   
version = "1.8.5"
 7386   9621   
 7387   9622   
[dependencies.aws-smithy-runtime-api]
 7388   9623   
path = "../aws-smithy-runtime-api"
 7389   9624   
features = ["client", "http-02x"]
 7390   9625   
version = "1.8.5"
 7391   9626   
 7392   9627   
[dependencies.aws-smithy-types]
 7393   9628   
path = "../aws-smithy-types"
 7394   9629   
version = "1.3.2"
 7395   9630   
 7396   9631   
[dependencies.aws-smithy-xml]
 7397   9632   
path = "../aws-smithy-xml"
 7398   9633   
version = "0.60.10"
 7399   9634   
 7400   9635   
[dependencies.aws-types]
 7401   9636   
path = "../aws-types"
 7402   9637   
version = "1.3.8"
 7403   9638   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7404   9639   
index 0ed4302..3d828a5 100644
 7405         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
        9640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7406   9641   
@@ -1,61 +1,61 @@
 7407   9642   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7408   9643   
[package]
 7409   9644   
name = "aws-sdk-kms"
 7410   9645   
version = "0.0.0-local"
 7411   9646   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7412   9647   
description = "AWS SDK for AWS Key Management Service"
 7413   9648   
edition = "2021"
 7414   9649   
license = "Apache-2.0"
 7415   9650   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7416   9651   
rust-version = "1.86.0"
 7417   9652   
readme = "README.md"
 7418   9653   
[package.metadata.smithy]
 7419   9654   
codegen-version = "ci"
 7420   9655   
[package.metadata.docs.rs]
 7421   9656   
all-features = true
 7422   9657   
targets = ["x86_64-unknown-linux-gnu"]
 7423   9658   
[dependencies.aws-credential-types]
 7424   9659   
path = "../aws-credential-types"
 7425   9660   
version = "1.2.4"
 7426   9661   
 7427   9662   
[dependencies.aws-runtime]
 7428   9663   
path = "../aws-runtime"
 7429   9664   
version = "1.5.9"
 7430   9665   
 7431   9666   
[dependencies.aws-smithy-async]
 7432   9667   
path = "../aws-smithy-async"
 7433   9668   
version = "1.2.5"
 7434   9669   
 7435   9670   
[dependencies.aws-smithy-http]
 7436   9671   
path = "../aws-smithy-http"
 7437         -
version = "0.62.2"
        9672  +
version = "0.62.3"
 7438   9673   
 7439   9674   
[dependencies.aws-smithy-json]
 7440   9675   
path = "../aws-smithy-json"
 7441   9676   
version = "0.61.4"
 7442   9677   
 7443   9678   
[dependencies.aws-smithy-runtime]
 7444   9679   
path = "../aws-smithy-runtime"
 7445   9680   
features = ["client"]
 7446   9681   
version = "1.8.5"
 7447   9682   
 7448   9683   
[dependencies.aws-smithy-runtime-api]
 7449   9684   
path = "../aws-smithy-runtime-api"
 7450   9685   
features = ["client", "http-02x"]
 7451   9686   
version = "1.8.5"
 7452   9687   
 7453   9688   
[dependencies.aws-smithy-types]
 7454   9689   
path = "../aws-smithy-types"
 7455   9690   
version = "1.3.2"
 7456   9691   
 7457   9692   
[dependencies.aws-types]
 7458   9693   
path = "../aws-types"
 7459   9694   
version = "1.3.8"
 7460   9695   
 7461   9696   
[dependencies.bytes]
 7462   9697   
version = "1.4.0"
 7463   9698   
 7464   9699   
[dependencies.fastrand]
 7465   9700   
version = "2.0.0"
 7466   9701   
 7467   9702   
[dependencies.http]
 7468   9703   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7469   9704   
index 6518dfc..6b94752 100644
 7470         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
        9705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7471   9706   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 7472   9707   
edition = "2021"
 7473   9708   
license = "Apache-2.0"
 7474   9709   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7475   9710   
rust-version = "1.86.0"
 7476   9711   
readme = "README.md"
 7477   9712   
[package.metadata.smithy]
 7478   9713   
codegen-version = "ci"
 7479   9714   
[package.metadata.docs.rs]
 7480   9715   
all-features = true
 7481   9716   
targets = ["x86_64-unknown-linux-gnu"]
 7482   9717   
[dependencies.aws-credential-types]
 7483   9718   
path = "../aws-credential-types"
 7484   9719   
version = "1.2.4"
 7485   9720   
 7486   9721   
[dependencies.aws-runtime]
 7487   9722   
path = "../aws-runtime"
 7488   9723   
features = ["event-stream"]
 7489   9724   
version = "1.5.9"
 7490   9725   
 7491   9726   
[dependencies.aws-smithy-async]
 7492   9727   
path = "../aws-smithy-async"
 7493   9728   
version = "1.2.5"
 7494   9729   
 7495   9730   
[dependencies.aws-smithy-eventstream]
 7496   9731   
path = "../aws-smithy-eventstream"
 7497   9732   
version = "0.60.10"
 7498   9733   
 7499   9734   
[dependencies.aws-smithy-http]
 7500   9735   
path = "../aws-smithy-http"
 7501   9736   
features = ["event-stream"]
 7502         -
version = "0.62.2"
        9737  +
version = "0.62.3"
 7503   9738   
 7504   9739   
[dependencies.aws-smithy-json]
 7505   9740   
path = "../aws-smithy-json"
 7506   9741   
version = "0.61.4"
 7507   9742   
 7508   9743   
[dependencies.aws-smithy-runtime]
 7509   9744   
path = "../aws-smithy-runtime"
 7510   9745   
features = ["client"]
 7511   9746   
version = "1.8.5"
 7512   9747   
 7513   9748   
[dependencies.aws-smithy-runtime-api]
 7514   9749   
path = "../aws-smithy-runtime-api"
 7515   9750   
features = ["client", "http-02x"]
 7516   9751   
version = "1.8.5"
 7517   9752   
 7518   9753   
[dependencies.aws-smithy-types]
 7519   9754   
path = "../aws-smithy-types"
 7520   9755   
version = "1.3.2"
 7521   9756   
 7522   9757   
[dependencies.aws-types]
 7523   9758   
path = "../aws-types"
 7524   9759   
version = "1.3.8"
 7525   9760   
 7526   9761   
[dependencies.bytes]
 7527   9762   
version = "1.4.0"
 7528   9763   
 7529   9764   
[dependencies.fastrand]
 7530   9765   
version = "2.0.0"
 7531   9766   
 7532   9767   
[dependencies.http]
 7533   9768   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7534   9769   
index dabb0e0..34cbc15 100644
 7535         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
        9770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7536   9771   
@@ -1,65 +1,65 @@
 7537   9772   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7538   9773   
[package]
 7539   9774   
name = "aws-sdk-polly"
 7540   9775   
version = "0.0.0-local"
 7541   9776   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7542   9777   
description = "AWS SDK for Amazon Polly"
 7543   9778   
edition = "2021"
 7544   9779   
license = "Apache-2.0"
 7545   9780   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7546   9781   
rust-version = "1.86.0"
 7547   9782   
readme = "README.md"
 7548   9783   
[package.metadata.smithy]
 7549   9784   
codegen-version = "ci"
 7550   9785   
[package.metadata.docs.rs]
 7551   9786   
all-features = true
 7552   9787   
targets = ["x86_64-unknown-linux-gnu"]
 7553   9788   
[dependencies.aws-credential-types]
 7554   9789   
path = "../aws-credential-types"
 7555   9790   
version = "1.2.4"
 7556   9791   
 7557   9792   
[dependencies.aws-runtime]
 7558   9793   
path = "../aws-runtime"
 7559   9794   
version = "1.5.9"
 7560   9795   
 7561   9796   
[dependencies.aws-sigv4]
 7562   9797   
path = "../aws-sigv4"
 7563         -
version = "1.3.3"
        9798  +
version = "1.3.4"
 7564   9799   
 7565   9800   
[dependencies.aws-smithy-async]
 7566   9801   
path = "../aws-smithy-async"
 7567   9802   
version = "1.2.5"
 7568   9803   
 7569   9804   
[dependencies.aws-smithy-http]
 7570   9805   
path = "../aws-smithy-http"
 7571         -
version = "0.62.2"
        9806  +
version = "0.62.3"
 7572   9807   
 7573   9808   
[dependencies.aws-smithy-json]
 7574   9809   
path = "../aws-smithy-json"
 7575   9810   
version = "0.61.4"
 7576   9811   
 7577   9812   
[dependencies.aws-smithy-runtime]
 7578   9813   
path = "../aws-smithy-runtime"
 7579   9814   
features = ["client"]
 7580   9815   
version = "1.8.5"
 7581   9816   
 7582   9817   
[dependencies.aws-smithy-runtime-api]
 7583   9818   
path = "../aws-smithy-runtime-api"
 7584   9819   
features = ["client", "http-02x"]
 7585   9820   
version = "1.8.5"
 7586   9821   
 7587   9822   
[dependencies.aws-smithy-types]
 7588   9823   
path = "../aws-smithy-types"
 7589   9824   
version = "1.3.2"
 7590   9825   
 7591   9826   
[dependencies.aws-types]
 7592   9827   
path = "../aws-types"
 7593   9828   
version = "1.3.8"
 7594   9829   
 7595   9830   
[dependencies.bytes]
 7596   9831   
version = "1.4.0"
 7597   9832   
 7598   9833   
[dependencies.fastrand]
 7599   9834   
version = "2.0.0"
 7600   9835   
 7601   9836   
[dependencies.http]
 7602   9837   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7603   9838   
index a884716..f3d8713 100644
 7604         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
        9839  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7605   9840   
@@ -1,61 +1,61 @@
 7606   9841   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7607   9842   
[package]
 7608   9843   
name = "aws-sdk-qldbsession"
 7609   9844   
version = "0.0.0-local"
 7610   9845   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7611   9846   
description = "AWS SDK for Amazon QLDB Session"
 7612   9847   
edition = "2021"
 7613   9848   
license = "Apache-2.0"
 7614   9849   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7615   9850   
rust-version = "1.86.0"
 7616   9851   
readme = "README.md"
 7617   9852   
[package.metadata.smithy]
 7618   9853   
codegen-version = "ci"
 7619   9854   
[package.metadata.docs.rs]
 7620   9855   
all-features = true
 7621   9856   
targets = ["x86_64-unknown-linux-gnu"]
 7622   9857   
[dependencies.aws-credential-types]
 7623   9858   
path = "../aws-credential-types"
 7624   9859   
version = "1.2.4"
 7625   9860   
 7626   9861   
[dependencies.aws-runtime]
 7627   9862   
path = "../aws-runtime"
 7628   9863   
version = "1.5.9"
 7629   9864   
 7630   9865   
[dependencies.aws-smithy-async]
 7631   9866   
path = "../aws-smithy-async"
 7632   9867   
version = "1.2.5"
 7633   9868   
 7634   9869   
[dependencies.aws-smithy-http]
 7635   9870   
path = "../aws-smithy-http"
 7636         -
version = "0.62.2"
        9871  +
version = "0.62.3"
 7637   9872   
 7638   9873   
[dependencies.aws-smithy-json]
 7639   9874   
path = "../aws-smithy-json"
 7640   9875   
version = "0.61.4"
 7641   9876   
 7642   9877   
[dependencies.aws-smithy-runtime]
 7643   9878   
path = "../aws-smithy-runtime"
 7644   9879   
features = ["client"]
 7645   9880   
version = "1.8.5"
 7646   9881   
 7647   9882   
[dependencies.aws-smithy-runtime-api]
 7648   9883   
path = "../aws-smithy-runtime-api"
 7649   9884   
features = ["client", "http-02x"]
 7650   9885   
version = "1.8.5"
 7651   9886   
 7652   9887   
[dependencies.aws-smithy-types]
 7653   9888   
path = "../aws-smithy-types"
 7654   9889   
version = "1.3.2"
 7655   9890   
 7656   9891   
[dependencies.aws-types]
 7657   9892   
path = "../aws-types"
 7658   9893   
version = "1.3.8"
 7659   9894   
 7660   9895   
[dependencies.bytes]
 7661   9896   
version = "1.4.0"
 7662   9897   
 7663   9898   
[dependencies.fastrand]
 7664   9899   
version = "2.0.0"
 7665   9900   
 7666   9901   
[dependencies.http]
 7667   9902   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7668   9903   
index 32a7dc9..a2c752d 100644
 7669         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
        9904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7670   9905   
@@ -1,61 +1,61 @@
 7671   9906   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7672   9907   
[package]
 7673   9908   
name = "aws-sdk-route53"
 7674   9909   
version = "0.0.0-local"
 7675   9910   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7676   9911   
description = "AWS SDK for Amazon Route 53"
 7677   9912   
edition = "2021"
 7678   9913   
license = "Apache-2.0"
 7679   9914   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7680   9915   
rust-version = "1.86.0"
 7681   9916   
readme = "README.md"
 7682   9917   
[package.metadata.smithy]
 7683   9918   
codegen-version = "ci"
 7684   9919   
[package.metadata.docs.rs]
 7685   9920   
all-features = true
 7686   9921   
targets = ["x86_64-unknown-linux-gnu"]
 7687   9922   
[dependencies.aws-credential-types]
 7688   9923   
path = "../aws-credential-types"
 7689   9924   
version = "1.2.4"
 7690   9925   
 7691   9926   
[dependencies.aws-runtime]
 7692   9927   
path = "../aws-runtime"
 7693   9928   
version = "1.5.9"
 7694   9929   
 7695   9930   
[dependencies.aws-smithy-async]
 7696   9931   
path = "../aws-smithy-async"
 7697   9932   
version = "1.2.5"
 7698   9933   
 7699   9934   
[dependencies.aws-smithy-http]
 7700   9935   
path = "../aws-smithy-http"
 7701         -
version = "0.62.2"
        9936  +
version = "0.62.3"
 7702   9937   
 7703   9938   
[dependencies.aws-smithy-json]
 7704   9939   
path = "../aws-smithy-json"
 7705   9940   
version = "0.61.4"
 7706   9941   
 7707   9942   
[dependencies.aws-smithy-runtime]
 7708   9943   
path = "../aws-smithy-runtime"
 7709   9944   
features = ["client"]
 7710   9945   
version = "1.8.5"
 7711   9946   
 7712   9947   
[dependencies.aws-smithy-runtime-api]
 7713   9948   
path = "../aws-smithy-runtime-api"
 7714   9949   
features = ["client", "http-02x"]
 7715   9950   
version = "1.8.5"
 7716   9951   
 7717   9952   
[dependencies.aws-smithy-types]
 7718   9953   
path = "../aws-smithy-types"
 7719   9954   
version = "1.3.2"
 7720   9955   
 7721   9956   
[dependencies.aws-smithy-xml]
 7722   9957   
path = "../aws-smithy-xml"
 7723   9958   
version = "0.60.10"
 7724   9959   
 7725   9960   
[dependencies.aws-types]
 7726   9961   
path = "../aws-types"
 7727   9962   
version = "1.3.8"
 7728   9963   
 7729   9964   
[dependencies.fastrand]
 7730   9965   
version = "2.0.0"
 7731   9966   
 7732   9967   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7733   9968   
index f65e261..2f6bec0 100644
 7734         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
        9969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7735   9970   
@@ -1,75 +1,75 @@
 7736   9971   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7737   9972   
[package]
 7738   9973   
name = "aws-sdk-s3"
 7739   9974   
version = "0.0.0-local"
 7740   9975   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7741   9976   
description = "AWS SDK for Amazon Simple Storage Service"
 7742   9977   
edition = "2021"
 7743   9978   
license = "Apache-2.0"
 7744   9979   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7745   9980   
rust-version = "1.86.0"
 7746   9981   
readme = "README.md"
 7747   9982   
[package.metadata.smithy]
 7748   9983   
codegen-version = "ci"
 7749   9984   
[package.metadata.docs.rs]
 7750   9985   
all-features = true
 7751   9986   
targets = ["x86_64-unknown-linux-gnu"]
 7752   9987   
[dependencies.aws-credential-types]
 7753   9988   
path = "../aws-credential-types"
 7754   9989   
version = "1.2.4"
 7755   9990   
 7756   9991   
[dependencies.aws-runtime]
 7757   9992   
path = "../aws-runtime"
 7758   9993   
features = ["event-stream", "http-02x"]
 7759   9994   
version = "1.5.9"
 7760   9995   
 7761   9996   
[dependencies.aws-sigv4]
 7762   9997   
path = "../aws-sigv4"
 7763         -
version = "1.3.3"
        9998  +
version = "1.3.4"
 7764   9999   
 7765  10000   
[dependencies.aws-smithy-async]
 7766  10001   
path = "../aws-smithy-async"
 7767  10002   
version = "1.2.5"
 7768  10003   
 7769  10004   
[dependencies.aws-smithy-checksums]
 7770  10005   
path = "../aws-smithy-checksums"
 7771  10006   
version = "0.63.5"
 7772  10007   
 7773  10008   
[dependencies.aws-smithy-eventstream]
 7774  10009   
path = "../aws-smithy-eventstream"
 7775  10010   
version = "0.60.10"
 7776  10011   
 7777  10012   
[dependencies.aws-smithy-http]
 7778  10013   
path = "../aws-smithy-http"
 7779  10014   
features = ["event-stream"]
 7780         -
version = "0.62.2"
       10015  +
version = "0.62.3"
 7781  10016   
 7782  10017   
[dependencies.aws-smithy-json]
 7783  10018   
path = "../aws-smithy-json"
 7784  10019   
version = "0.61.4"
 7785  10020   
 7786  10021   
[dependencies.aws-smithy-runtime]
 7787  10022   
path = "../aws-smithy-runtime"
 7788  10023   
features = ["client"]
 7789  10024   
version = "1.8.5"
 7790  10025   
 7791  10026   
[dependencies.aws-smithy-runtime-api]
 7792  10027   
path = "../aws-smithy-runtime-api"
 7793  10028   
features = ["client", "http-02x"]
 7794  10029   
version = "1.8.5"
 7795  10030   
 7796  10031   
[dependencies.aws-smithy-types]
 7797  10032   
path = "../aws-smithy-types"
 7798  10033   
version = "1.3.2"
 7799  10034   
 7800  10035   
[dependencies.aws-smithy-xml]
 7801  10036   
path = "../aws-smithy-xml"
 7802  10037   
version = "0.60.10"
 7803  10038   
 7804  10039   
[dependencies.aws-types]
 7805  10040   
path = "../aws-types"
 7806  10041   
version = "1.3.8"
 7807  10042   
 7808  10043   
[dependencies.bytes]
 7809  10044   
version = "1.4.0"
 7810  10045   
 7811  10046   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7812  10047   
index b4d1cdd..861c0cc 100644
 7813         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       10048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7814  10049   
@@ -1,61 +1,61 @@
 7815  10050   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7816  10051   
[package]
 7817  10052   
name = "aws-sdk-s3control"
 7818  10053   
version = "0.0.0-local"
 7819  10054   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7820  10055   
description = "AWS SDK for AWS S3 Control"
 7821  10056   
edition = "2021"
 7822  10057   
license = "Apache-2.0"
 7823  10058   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7824  10059   
rust-version = "1.86.0"
 7825  10060   
readme = "README.md"
 7826  10061   
[package.metadata.smithy]
 7827  10062   
codegen-version = "ci"
 7828  10063   
[package.metadata.docs.rs]
 7829  10064   
all-features = true
 7830  10065   
targets = ["x86_64-unknown-linux-gnu"]
 7831  10066   
[dependencies.aws-credential-types]
 7832  10067   
path = "../aws-credential-types"
 7833  10068   
version = "1.2.4"
 7834  10069   
 7835  10070   
[dependencies.aws-runtime]
 7836  10071   
path = "../aws-runtime"
 7837  10072   
version = "1.5.9"
 7838  10073   
 7839  10074   
[dependencies.aws-smithy-async]
 7840  10075   
path = "../aws-smithy-async"
 7841  10076   
version = "1.2.5"
 7842  10077   
 7843  10078   
[dependencies.aws-smithy-http]
 7844  10079   
path = "../aws-smithy-http"
 7845         -
version = "0.62.2"
       10080  +
version = "0.62.3"
 7846  10081   
 7847  10082   
[dependencies.aws-smithy-json]
 7848  10083   
path = "../aws-smithy-json"
 7849  10084   
version = "0.61.4"
 7850  10085   
 7851  10086   
[dependencies.aws-smithy-runtime]
 7852  10087   
path = "../aws-smithy-runtime"
 7853  10088   
features = ["client"]
 7854  10089   
version = "1.8.5"
 7855  10090   
 7856  10091   
[dependencies.aws-smithy-runtime-api]
 7857  10092   
path = "../aws-smithy-runtime-api"
 7858  10093   
features = ["client", "http-02x"]
 7859  10094   
version = "1.8.5"
 7860  10095   
 7861  10096   
[dependencies.aws-smithy-types]
 7862  10097   
path = "../aws-smithy-types"
 7863  10098   
version = "1.3.2"
 7864  10099   
 7865  10100   
[dependencies.aws-smithy-xml]
 7866  10101   
path = "../aws-smithy-xml"
 7867  10102   
version = "0.60.10"
 7868  10103   
 7869  10104   
[dependencies.aws-types]
 7870  10105   
path = "../aws-types"
 7871  10106   
version = "1.3.8"
 7872  10107   
 7873  10108   
[dependencies.fastrand]
 7874  10109   
version = "2.0.0"
 7875  10110   
 7876  10111   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7877  10112   
index 2cde182..fc367f4 100644
 7878         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       10113  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7879  10114   
@@ -1,61 +1,61 @@
 7880  10115   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7881  10116   
[package]
 7882  10117   
name = "aws-sdk-sso"
 7883  10118   
version = "0.0.0-local"
 7884  10119   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7885  10120   
description = "AWS SDK for AWS Single Sign-On"
 7886  10121   
edition = "2021"
 7887  10122   
license = "Apache-2.0"
 7888  10123   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7889  10124   
rust-version = "1.86.0"
 7890  10125   
readme = "README.md"
 7891  10126   
[package.metadata.smithy]
 7892  10127   
codegen-version = "ci"
 7893  10128   
[package.metadata.docs.rs]
 7894  10129   
all-features = true
 7895  10130   
targets = ["x86_64-unknown-linux-gnu"]
 7896  10131   
[dependencies.aws-credential-types]
 7897  10132   
path = "../aws-credential-types"
 7898  10133   
version = "1.2.4"
 7899  10134   
 7900  10135   
[dependencies.aws-runtime]
 7901  10136   
path = "../aws-runtime"
 7902  10137   
version = "1.5.9"
 7903  10138   
 7904  10139   
[dependencies.aws-smithy-async]
 7905  10140   
path = "../aws-smithy-async"
 7906  10141   
version = "1.2.5"
 7907  10142   
 7908  10143   
[dependencies.aws-smithy-http]
 7909  10144   
path = "../aws-smithy-http"
 7910         -
version = "0.62.2"
       10145  +
version = "0.62.3"
 7911  10146   
 7912  10147   
[dependencies.aws-smithy-json]
 7913  10148   
path = "../aws-smithy-json"
 7914  10149   
version = "0.61.4"
 7915  10150   
 7916  10151   
[dependencies.aws-smithy-runtime]
 7917  10152   
path = "../aws-smithy-runtime"
 7918  10153   
features = ["client"]
 7919  10154   
version = "1.8.5"
 7920  10155   
 7921  10156   
[dependencies.aws-smithy-runtime-api]
 7922  10157   
path = "../aws-smithy-runtime-api"
 7923  10158   
features = ["client", "http-02x"]
 7924  10159   
version = "1.8.5"
 7925  10160   
 7926  10161   
[dependencies.aws-smithy-types]
 7927  10162   
path = "../aws-smithy-types"
 7928  10163   
version = "1.3.2"
 7929  10164   
 7930  10165   
[dependencies.aws-types]
 7931  10166   
path = "../aws-types"
 7932  10167   
version = "1.3.8"
 7933  10168   
 7934  10169   
[dependencies.bytes]
 7935  10170   
version = "1.4.0"
 7936  10171   
 7937  10172   
[dependencies.fastrand]
 7938  10173   
version = "2.0.0"
 7939  10174   
 7940  10175   
[dependencies.http]
 7941  10176   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 7942  10177   
index 7a34c16..588d0bd 100644
 7943         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       10178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 7944  10179   
@@ -1,61 +1,61 @@
 7945  10180   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7946  10181   
[package]
 7947  10182   
name = "aws-sdk-ssooidc"
 7948  10183   
version = "0.0.0-local"
 7949  10184   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7950  10185   
description = "AWS SDK for AWS SSO OIDC"
 7951  10186   
edition = "2021"
 7952  10187   
license = "Apache-2.0"
 7953  10188   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7954  10189   
rust-version = "1.86.0"
 7955  10190   
readme = "README.md"
 7956  10191   
[package.metadata.smithy]
 7957  10192   
codegen-version = "ci"
 7958  10193   
[package.metadata.docs.rs]
 7959  10194   
all-features = true
 7960  10195   
targets = ["x86_64-unknown-linux-gnu"]
 7961  10196   
[dependencies.aws-credential-types]
 7962  10197   
path = "../aws-credential-types"
 7963  10198   
version = "1.2.4"
 7964  10199   
 7965  10200   
[dependencies.aws-runtime]
 7966  10201   
path = "../aws-runtime"
 7967  10202   
version = "1.5.9"
 7968  10203   
 7969  10204   
[dependencies.aws-smithy-async]
 7970  10205   
path = "../aws-smithy-async"
 7971  10206   
version = "1.2.5"
 7972  10207   
 7973  10208   
[dependencies.aws-smithy-http]
 7974  10209   
path = "../aws-smithy-http"
 7975         -
version = "0.62.2"
       10210  +
version = "0.62.3"
 7976  10211   
 7977  10212   
[dependencies.aws-smithy-json]
 7978  10213   
path = "../aws-smithy-json"
 7979  10214   
version = "0.61.4"
 7980  10215   
 7981  10216   
[dependencies.aws-smithy-runtime]
 7982  10217   
path = "../aws-smithy-runtime"
 7983  10218   
features = ["client"]
 7984  10219   
version = "1.8.5"
 7985  10220   
 7986  10221   
[dependencies.aws-smithy-runtime-api]
 7987  10222   
path = "../aws-smithy-runtime-api"
 7988  10223   
features = ["client", "http-02x"]
 7989  10224   
version = "1.8.5"
 7990  10225   
 7991  10226   
[dependencies.aws-smithy-types]
 7992  10227   
path = "../aws-smithy-types"
 7993  10228   
version = "1.3.2"
 7994  10229   
 7995  10230   
[dependencies.aws-types]
 7996  10231   
path = "../aws-types"
 7997  10232   
version = "1.3.8"
 7998  10233   
 7999  10234   
[dependencies.bytes]
 8000  10235   
version = "1.4.0"
 8001  10236   
 8002  10237   
[dependencies.fastrand]
 8003  10238   
version = "2.0.0"
 8004  10239   
 8005  10240   
[dependencies.http]
 8006  10241   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8007  10242   
index 895dfb3..f2ce34e 100644
 8008         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       10243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8009  10244   
@@ -1,61 +1,61 @@
 8010  10245   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8011  10246   
[package]
 8012  10247   
name = "aws-sdk-sts"
 8013  10248   
version = "0.0.0-local"
 8014  10249   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8015  10250   
description = "AWS SDK for AWS Security Token Service"
 8016  10251   
edition = "2021"
 8017  10252   
license = "Apache-2.0"
 8018  10253   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8019  10254   
rust-version = "1.86.0"
 8020  10255   
readme = "README.md"
 8021  10256   
[package.metadata.smithy]
 8022  10257   
codegen-version = "ci"
 8023  10258   
[package.metadata.docs.rs]
 8024  10259   
all-features = true
 8025  10260   
targets = ["x86_64-unknown-linux-gnu"]
 8026  10261   
[dependencies.aws-credential-types]
 8027  10262   
path = "../aws-credential-types"
 8028  10263   
version = "1.2.4"
 8029  10264   
 8030  10265   
[dependencies.aws-runtime]
 8031  10266   
path = "../aws-runtime"
 8032  10267   
version = "1.5.9"
 8033  10268   
 8034  10269   
[dependencies.aws-smithy-async]
 8035  10270   
path = "../aws-smithy-async"
 8036  10271   
version = "1.2.5"
 8037  10272   
 8038  10273   
[dependencies.aws-smithy-http]
 8039  10274   
path = "../aws-smithy-http"
 8040         -
version = "0.62.2"
       10275  +
version = "0.62.3"
 8041  10276   
 8042  10277   
[dependencies.aws-smithy-json]
 8043  10278   
path = "../aws-smithy-json"
 8044  10279   
version = "0.61.4"
 8045  10280   
 8046  10281   
[dependencies.aws-smithy-query]
 8047  10282   
path = "../aws-smithy-query"
 8048  10283   
version = "0.60.7"
 8049  10284   
 8050  10285   
[dependencies.aws-smithy-runtime]
 8051  10286   
path = "../aws-smithy-runtime"
 8052  10287   
features = ["client"]
 8053  10288   
version = "1.8.5"
 8054  10289   
 8055  10290   
[dependencies.aws-smithy-runtime-api]
 8056  10291   
path = "../aws-smithy-runtime-api"
 8057  10292   
features = ["client", "http-02x"]
 8058  10293   
version = "1.8.5"
 8059  10294   
 8060  10295   
[dependencies.aws-smithy-types]
 8061  10296   
path = "../aws-smithy-types"
 8062  10297   
version = "1.3.2"
 8063  10298   
 8064  10299   
[dependencies.aws-smithy-xml]
 8065  10300   
path = "../aws-smithy-xml"
 8066  10301   
version = "0.60.10"
 8067  10302   
 8068  10303   
[dependencies.aws-types]
 8069  10304   
path = "../aws-types"
 8070  10305   
version = "1.3.8"
 8071  10306   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8072  10307   
index d556561..91178b6 100644
 8073         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       10308  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8074  10309   
@@ -1,61 +1,61 @@
 8075  10310   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8076  10311   
[package]
 8077  10312   
name = "aws-sdk-timestreamquery"
 8078  10313   
version = "0.0.0-local"
 8079  10314   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8080  10315   
description = "AWS SDK for Amazon Timestream Query"
 8081  10316   
edition = "2021"
 8082  10317   
license = "Apache-2.0"
 8083  10318   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8084  10319   
rust-version = "1.86.0"
 8085  10320   
readme = "README.md"
 8086  10321   
[package.metadata.smithy]
 8087  10322   
codegen-version = "ci"
 8088  10323   
[package.metadata.docs.rs]
 8089  10324   
all-features = true
 8090  10325   
targets = ["x86_64-unknown-linux-gnu"]
 8091  10326   
[dependencies.aws-credential-types]
 8092  10327   
path = "../aws-credential-types"
 8093  10328   
version = "1.2.4"
 8094  10329   
 8095  10330   
[dependencies.aws-runtime]
 8096  10331   
path = "../aws-runtime"
 8097  10332   
version = "1.5.9"
 8098  10333   
 8099  10334   
[dependencies.aws-smithy-async]
 8100  10335   
path = "../aws-smithy-async"
 8101  10336   
version = "1.2.5"
 8102  10337   
 8103  10338   
[dependencies.aws-smithy-http]
 8104  10339   
path = "../aws-smithy-http"
 8105         -
version = "0.62.2"
       10340  +
version = "0.62.3"
 8106  10341   
 8107  10342   
[dependencies.aws-smithy-json]
 8108  10343   
path = "../aws-smithy-json"
 8109  10344   
version = "0.61.4"
 8110  10345   
 8111  10346   
[dependencies.aws-smithy-runtime]
 8112  10347   
path = "../aws-smithy-runtime"
 8113  10348   
features = ["client"]
 8114  10349   
version = "1.8.5"
 8115  10350   
 8116  10351   
[dependencies.aws-smithy-runtime-api]
 8117  10352   
path = "../aws-smithy-runtime-api"
 8118  10353   
features = ["client", "http-02x"]
 8119  10354   
version = "1.8.5"
 8120  10355   
 8121  10356   
[dependencies.aws-smithy-types]
 8122  10357   
path = "../aws-smithy-types"
 8123  10358   
version = "1.3.2"
 8124  10359   
 8125  10360   
[dependencies.aws-types]
 8126  10361   
path = "../aws-types"
 8127  10362   
version = "1.3.8"
 8128  10363   
 8129  10364   
[dependencies.bytes]
 8130  10365   
version = "1.4.0"
 8131  10366   
 8132  10367   
[dependencies.fastrand]
 8133  10368   
version = "2.0.0"
 8134  10369   
 8135  10370   
[dependencies.http]
 8136  10371   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8137  10372   
index 0c56e4c..95731e3 100644
 8138         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       10373  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8139  10374   
@@ -1,61 +1,61 @@
 8140  10375   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8141  10376   
[package]
 8142  10377   
name = "aws-sdk-timestreamwrite"
 8143  10378   
version = "0.0.0-local"
 8144  10379   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8145  10380   
description = "AWS SDK for Amazon Timestream Write"
 8146  10381   
edition = "2021"
 8147  10382   
license = "Apache-2.0"
 8148  10383   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8149  10384   
rust-version = "1.86.0"
 8150  10385   
readme = "README.md"
 8151  10386   
[package.metadata.smithy]
 8152  10387   
codegen-version = "ci"
 8153  10388   
[package.metadata.docs.rs]
 8154  10389   
all-features = true
 8155  10390   
targets = ["x86_64-unknown-linux-gnu"]
 8156  10391   
[dependencies.aws-credential-types]
 8157  10392   
path = "../aws-credential-types"
 8158  10393   
version = "1.2.4"
 8159  10394   
 8160  10395   
[dependencies.aws-runtime]
 8161  10396   
path = "../aws-runtime"
 8162  10397   
version = "1.5.9"
 8163  10398   
 8164  10399   
[dependencies.aws-smithy-async]
 8165  10400   
path = "../aws-smithy-async"
 8166  10401   
version = "1.2.5"
 8167  10402   
 8168  10403   
[dependencies.aws-smithy-http]
 8169  10404   
path = "../aws-smithy-http"
 8170         -
version = "0.62.2"
       10405  +
version = "0.62.3"
 8171  10406   
 8172  10407   
[dependencies.aws-smithy-json]
 8173  10408   
path = "../aws-smithy-json"
 8174  10409   
version = "0.61.4"
 8175  10410   
 8176  10411   
[dependencies.aws-smithy-runtime]
 8177  10412   
path = "../aws-smithy-runtime"
 8178  10413   
features = ["client"]
 8179  10414   
version = "1.8.5"
 8180  10415   
 8181  10416   
[dependencies.aws-smithy-runtime-api]
 8182  10417   
path = "../aws-smithy-runtime-api"
 8183  10418   
features = ["client", "http-02x"]
 8184  10419   
version = "1.8.5"
 8185  10420   
 8186  10421   
[dependencies.aws-smithy-types]
 8187  10422   
path = "../aws-smithy-types"
 8188  10423   
version = "1.3.2"
 8189  10424   
 8190  10425   
[dependencies.aws-types]
 8191  10426   
path = "../aws-types"
 8192  10427   
version = "1.3.8"
 8193  10428   
 8194  10429   
[dependencies.bytes]
 8195  10430   
version = "1.4.0"
 8196  10431   
 8197  10432   
[dependencies.fastrand]
 8198  10433   
version = "2.0.0"
 8199  10434   
 8200  10435   
[dependencies.http]
 8201  10436   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8202  10437   
index 5b35037..9fb220a 100644
 8203         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       10438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8204  10439   
@@ -1,71 +1,71 @@
 8205  10440   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8206  10441   
[package]
 8207  10442   
name = "aws-sdk-transcribestreaming"
 8208  10443   
version = "0.0.0-local"
 8209  10444   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8210  10445   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 8211  10446   
edition = "2021"
 8212  10447   
license = "Apache-2.0"
 8213  10448   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8214  10449   
rust-version = "1.86.0"
 8215  10450   
readme = "README.md"
 8216  10451   
[package.metadata.smithy]
 8217  10452   
codegen-version = "ci"
 8218  10453   
[package.metadata.docs.rs]
 8219  10454   
all-features = true
 8220  10455   
targets = ["x86_64-unknown-linux-gnu"]
 8221  10456   
[dependencies.aws-credential-types]
 8222  10457   
path = "../aws-credential-types"
 8223  10458   
version = "1.2.4"
 8224  10459   
 8225  10460   
[dependencies.aws-runtime]
 8226  10461   
path = "../aws-runtime"
 8227  10462   
features = ["event-stream"]
 8228  10463   
version = "1.5.9"
 8229  10464   
 8230  10465   
[dependencies.aws-sigv4]
 8231  10466   
path = "../aws-sigv4"
 8232         -
version = "1.3.3"
       10467  +
version = "1.3.4"
 8233  10468   
 8234  10469   
[dependencies.aws-smithy-async]
 8235  10470   
path = "../aws-smithy-async"
 8236  10471   
version = "1.2.5"
 8237  10472   
 8238  10473   
[dependencies.aws-smithy-eventstream]
 8239  10474   
path = "../aws-smithy-eventstream"
 8240  10475   
version = "0.60.10"
 8241  10476   
 8242  10477   
[dependencies.aws-smithy-http]
 8243  10478   
path = "../aws-smithy-http"
 8244  10479   
features = ["event-stream"]
 8245         -
version = "0.62.2"
       10480  +
version = "0.62.3"
 8246  10481   
 8247  10482   
[dependencies.aws-smithy-json]
 8248  10483   
path = "../aws-smithy-json"
 8249  10484   
version = "0.61.4"
 8250  10485   
 8251  10486   
[dependencies.aws-smithy-runtime]
 8252  10487   
path = "../aws-smithy-runtime"
 8253  10488   
features = ["client"]
 8254  10489   
version = "1.8.5"
 8255  10490