AWS SDK

AWS SDK

rev. 628eeeeeed390f5efdbfe607c18848c033debd3e

Files changed:

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

@@ -1,0 +4,0 @@
    1         -
GET /?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=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb

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.authz

@@ -1,0 +9480,11701 @@
    1         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 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-key-case/get-vanilla-query-order-key-case.qpsreq b/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.qpsreq
    3      1   
deleted file mode 100644
    4      2   
index b29c1e0..0000000
    5         -
-- 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.qpsreq
           3  +
++ /dev/null
    6      4   
@@ -1,2 +0,0 @@
    7         -
GET /?Param2=value2&Param1=value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=ANOTREAL%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=35&X-Amz-SignedHeaders=host&X-Amz-Signature=ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab HTTP/1.1
    8         -
Host:example.amazonaws.com
    9      5   
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.sreq b/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.sreq
   10      6   
deleted file mode 100644
   11      7   
index e55b6b8..0000000
   12         -
-- 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.sreq
           8  +
++ /dev/null
   13      9   
@@ -1,4 +0,0 @@
   14         -
GET /?Param2=value2&Param1=value1 HTTP/1.1
   15         -
Host:example.amazonaws.com
   16         -
X-Amz-Date:20150830T123600Z
   17         -
Authorization: AWS4-HMAC-SHA256 Credential=ANOTREAL/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947
   18     10   
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.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.authz
   19     11   
deleted file mode 100644
   20     12   
index 812cd3f..0000000
   21         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.authz
          13  +
++ /dev/null
   22     14   
@@ -1 +0,0 @@
   23         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eedbc4e291e521cf13422ffca22be7d2eb8146eecf653089df300a15b2382bd1
              \
 No newline at end of file
   24     15   
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.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.req
   25     16   
deleted file mode 100644
   26     17   
index 375a496..0000000
   27         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.req
          18  +
++ /dev/null
   28     19   
@@ -1,3 +0,0 @@
   29         -
GET /?Param1=value2&Param1=Value1 HTTP/1.1
   30         -
Host:example.amazonaws.com
   31         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
   32     20   
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.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.sreq
   33     21   
deleted file mode 100644
   34     22   
index bc8e652..0000000
   35         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-key/get-vanilla-query-order-key.sreq
          23  +
++ /dev/null
   36     24   
@@ -1,4 +0,0 @@
   37         -
GET /?Param1=value2&Param1=Value1 HTTP/1.1
   38         -
Host:example.amazonaws.com
   39         -
X-Amz-Date:20150830T123600Z
   40         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eedbc4e291e521cf13422ffca22be7d2eb8146eecf653089df300a15b2382bd1
              \
 No newline at end of file
   41     25   
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.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.authz
   42     26   
deleted file mode 100644
   43     27   
index b8ad91f..0000000
   44         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-order-value/get-vanilla-query-order-value.authz
          28  +
++ /dev/null
   45     29   
@@ -1 +0,0 @@
   46         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5772eed61e12b33fae39ee5e7012498b51d56abc0abb7c60486157bd471c4694
              \
 No newline at end of file
   47     30   
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
   48     31   
deleted file mode 100644
   49     32   
index 9255bee..0000000
   50         -
-- 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
          33  +
++ /dev/null
   51     34   
@@ -1,3 +0,0 @@
   52         -
GET /?Param1=value2&Param1=value1 HTTP/1.1
   53         -
Host:example.amazonaws.com
   54         -
X-Amz-Date:20150830T123600Z
              \
 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-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
   56     36   
deleted file mode 100644
   57     37   
index 4793e21..0000000
   58         -
-- 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
          38  +
++ /dev/null
   59     39   
@@ -1,4 +0,0 @@
   60         -
GET /?Param1=value2&Param1=value1 HTTP/1.1
   61         -
Host:example.amazonaws.com
   62         -
X-Amz-Date:20150830T123600Z
   63         -
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
   64     40   
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
   65     41   
deleted file mode 100644
   66     42   
index a44ca5b..0000000
   67         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.authz
          43  +
++ /dev/null
   68     44   
@@ -1 +0,0 @@
   69         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
   70     45   
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
   71     46   
deleted file mode 100644
   72     47   
index 551c027..0000000
   73         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.authz
          48  +
++ /dev/null
   74     49   
@@ -1 +0,0 @@
   75         -
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
   76     50   
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
   77     51   
deleted file mode 100644
   78     52   
index d739b01..0000000
   79         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sreq
          53  +
++ /dev/null
   80     54   
@@ -1,4 +0,0 @@
   81         -
GET / HTTP/1.1
   82         -
Host:example.amazonaws.com
   83         -
X-Amz-Date:20150830T123600Z
   84         -
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
   85     55   
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
   86     56   
deleted file mode 100644
   87     57   
index e016c3d..0000000
   88         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.authz
          58  +
++ /dev/null
   89     59   
@@ -1 +0,0 @@
   90         -
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
   91     60   
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
   92     61   
deleted file mode 100644
   93     62   
index 7baf4c8..0000000
   94         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sreq
          63  +
++ /dev/null
   95     64   
@@ -1,4 +0,0 @@
   96         -
GET /?ሴ=bar HTTP/1.1
   97         -
Host:example.amazonaws.com
   98         -
X-Amz-Date:20150830T123600Z
   99         -
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
  100     65   
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
  101     66   
deleted file mode 100644
  102     67   
index 551c027..0000000
  103         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.authz
          68  +
++ /dev/null
  104     69   
@@ -1 +0,0 @@
  105         -
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
  106     70   
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
  107     71   
deleted file mode 100644
  108     72   
index d739b01..0000000
  109         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sreq
          73  +
++ /dev/null
  110     74   
@@ -1,4 +0,0 @@
  111         -
GET / HTTP/1.1
  112         -
Host:example.amazonaws.com
  113         -
X-Amz-Date:20150830T123600Z
  114         -
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
  115     75   
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
  116     76   
deleted file mode 100644
  117     77   
index 1336241..0000000
  118         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/iam/iam.creq
          78  +
++ /dev/null
  119     79   
@@ -1,4 +0,0 @@
  120         -
AWS4-HMAC-SHA256
  121         -
20150830T123600Z
  122         -
20150830/us-east-1/iam/aws4_request
  123         -
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59
  124     80   
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
  125     81   
deleted file mode 100644
  126     82   
index 551c027..0000000
  127         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.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=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 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-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
  131     86   
deleted file mode 100644
  132     87   
index cbdebe2..0000000
  133         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sreq
          88  +
++ /dev/null
  134     89   
@@ -1,4 +0,0 @@
  135         -
GET /example1/example2/../.. 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=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 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-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
  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-relative/get-relative.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-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
  146     96   
deleted file mode 100644
  147     97   
index 4f59e7d..0000000
  148         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sreq
          98  +
++ /dev/null
  149     99   
@@ -1,4 +0,0 @@
  150         -
GET /example/.. 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-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
  155    101   
deleted file mode 100644
  156    102   
index 551c027..0000000
  157         -
-- 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
         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=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 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-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
  161    106   
deleted file mode 100644
  162    107   
index 23a2b41..0000000
  163         -
-- 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
         108  +
++ /dev/null
  164    109   
@@ -1,4 +0,0 @@
  165         -
GET /./ 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=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 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-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
  170    111   
deleted file mode 100644
  171    112   
index b76ca1e..0000000
  172         -
-- 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
         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=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 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-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
  176    116   
deleted file mode 100644
  177    117   
index 8096609..0000000
  178         -
-- 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
         118  +
++ /dev/null
  179    119   
@@ -1,4 +0,0 @@
  180         -
GET /./example 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=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 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/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
  185    121   
deleted file mode 100644
  186    122   
index 551c027..0000000
  187         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.authz
         123  +
++ /dev/null
  188    124   
@@ -1 +0,0 @@
  189         -
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
  190    125   
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
  191    126   
deleted file mode 100644
  192    127   
index cde31b4..0000000
  193         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq
         128  +
++ /dev/null
  194    129   
@@ -1,4 +0,0 @@
  195         -
GET // HTTP/1.1
  196         -
Host:example.amazonaws.com
  197         -
X-Amz-Date:20150830T123600Z
  198         -
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
  199    130   
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
  200    131   
deleted file mode 100644
  201    132   
index 307c105..0000000
  202         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.authz
         133  +
++ /dev/null
  203    134   
@@ -1 +0,0 @@
  204         -
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
  205    135   
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
  206    136   
deleted file mode 100644
  207    137   
index c84a80d..0000000
  208         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq
         138  +
++ /dev/null
  209    139   
@@ -1,4 +0,0 @@
  210         -
GET //example// HTTP/1.1
  211         -
Host:example.amazonaws.com
  212         -
X-Amz-Date:20150830T123600Z
  213         -
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
  214    140   
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
  215    141   
deleted file mode 100644
  216    142   
index 832d8a5..0000000
  217         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz
         143  +
++ /dev/null
  218    144   
@@ -1 +0,0 @@
  219         -
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
  220    145   
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
  221    146   
deleted file mode 100644
  222    147   
index eefa20c..0000000
  223         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq
         148  +
++ /dev/null
  224    149   
@@ -1,4 +0,0 @@
  225         -
GET /example space/ HTTP/1.1
  226         -
Host:example.amazonaws.com
  227         -
X-Amz-Date:20150830T123600Z
  228         -
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
  229    150   
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
  230    151   
deleted file mode 100644
  231    152   
index c2fcb27..0000000
  232         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt
         153  +
++ /dev/null
  233    154   
@@ -1,3 +0,0 @@
  234         -
A note about signing requests to Amazon S3:
  235         -

  236         -
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
  237    155   
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
  238    156   
deleted file mode 100644
  239    157   
index 89e572e..0000000
  240         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
         158  +
++ /dev/null
  241    159   
@@ -1 +0,0 @@
  242         -
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
  243    160   
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
  244    161   
deleted file mode 100644
  245    162   
index fcf23ce..0000000
  246         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
         163  +
++ /dev/null
  247    164   
@@ -1,4 +0,0 @@
  248         -
POST / HTTP/1.1
  249         -
Host:example.amazonaws.com
  250         -
X-Amz-Date:20150830T123600Z
  251         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
  252    165   
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
  253    166   
deleted file mode 100644
  254    167   
index a62589f..0000000
  255         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
         168  +
++ /dev/null
  256    169   
@@ -1 +0,0 @@
  257         -
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
  258    170   
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
  259    171   
deleted file mode 100644
  260    172   
index b4b78a1..0000000
  261         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
         173  +
++ /dev/null
  262    174   
@@ -1,5 +0,0 @@
  263         -
POST / HTTP/1.1
  264         -
Host:example.amazonaws.com
  265         -
My-Header1:value1
  266         -
X-Amz-Date:20150830T123600Z
  267         -
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
  268    175   
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
  269    176   
deleted file mode 100644
  270    177   
index d9e52a3..0000000
  271         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
         178  +
++ /dev/null
  272    179   
@@ -1 +0,0 @@
  273         -
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
  274    180   
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
  275    181   
deleted file mode 100644
  276    182   
index 99c3210..0000000
  277         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
         183  +
++ /dev/null
  278    184   
@@ -1,5 +0,0 @@
  279         -
POST / HTTP/1.1
  280         -
Host:example.amazonaws.com
  281         -
My-Header1:VALUE1
  282         -
X-Amz-Date:20150830T123600Z
  283         -
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
  284    185   
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
  285    186   
deleted file mode 100644
  286    187   
index 89e572e..0000000
  287         -
-- 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
         188  +
++ /dev/null
  288    189   
@@ -1 +0,0 @@
  289         -
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
  290    190   
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
  291    191   
deleted file mode 100644
  292    192   
index 64aa046..0000000
  293         -
-- 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
         193  +
++ /dev/null
  294    194   
@@ -1 +0,0 @@
  295         -
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
  296    195   
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
  297    196   
deleted file mode 100644
  298    197   
index cc34282..0000000
  299         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
         198  +
++ /dev/null
  300    199   
@@ -1,15 +0,0 @@
  301         -
A note about using temporary security credentials:
  302         -

  303         -
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).
  304         -

  305         -
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.
  306         -

  307         -
The test suite has 2 examples:
  308         -

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

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

  313         -
The test suite uses this example value for X-Amz-Security-Token:
  314         -

  315         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 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-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
  317    201   
deleted file mode 100644
  318    202   
index 44280cd..0000000
  319         -
-- 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
         203  +
++ /dev/null
  320    204   
@@ -1 +0,0 @@
  321         -
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
  322    205   
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
  323    206   
deleted file mode 100644
  324    207   
index 82af150..0000000
  325         -
-- 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
         208  +
++ /dev/null
  326    209   
@@ -1,4 +0,0 @@
  327         -
POST /?Param1=value1 HTTP/1.1
  328         -
Host:example.amazonaws.com
  329         -
X-Amz-Date:20150830T123600Z
  330         -
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
  331    210   
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
  332    211   
deleted file mode 100644
  333    212   
index 44280cd..0000000
  334         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
         213  +
++ /dev/null
  335    214   
@@ -1 +0,0 @@
  336         -
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
  337    215   
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
  338    216   
deleted file mode 100644
  339    217   
index 82af150..0000000
  340         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
         218  +
++ /dev/null
  341    219   
@@ -1,4 +0,0 @@
  342         -
POST /?Param1=value1 HTTP/1.1
  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=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
  346    220   
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
  347    221   
deleted file mode 100644
  348    222   
index 89e572e..0000000
  349         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
         223  +
++ /dev/null
  350    224   
@@ -1 +0,0 @@
  351         -
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
  352    225   
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
  353    226   
deleted file mode 100644
  354    227   
index a5ada0d..0000000
  355         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
         228  +
++ /dev/null
  356    229   
@@ -1,4 +0,0 @@
  357         -
POST / HTTP/1.1
  358         -
Host:example.amazonaws.com
  359         -
X-Amz-Date:20150830T123600Z
  360         -
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
  361    230   
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
  362    231   
deleted file mode 100644
  363    232   
index df90ca3..0000000
  364         -
-- 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
         233  +
++ /dev/null
  365    234   
@@ -1 +0,0 @@
  366         -
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
  367    235   
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
  368    236   
deleted file mode 100644
  369    237   
index 457b0d5..0000000
  370         -
-- 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
         238  +
++ /dev/null
  371    239   
@@ -1,9 +0,0 @@
  372         -
POST
  373         -
/
  374         -
Param1=value1
  375         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  376         -
host:example.amazonaws.com
  377         -
x-amz-date:20150830T123600Z
  378         -
  379         -
content-type;host;x-amz-date
  380         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  381    240   
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
  382    241   
deleted file mode 100644
  383    242   
index b8ecb89..0000000
  384         -
-- 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
         243  +
++ /dev/null
  385    244   
@@ -1,7 +0,0 @@
  386         -
POST / HTTP/1.1
  387         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  388         -
Host:example.amazonaws.com
  389         -
X-Amz-Date:20150830T123600Z
  390         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  391         -
  392         -
Param1=value1
              \
 No newline at end of file
  393    245   
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
  394    246   
deleted file mode 100644
  395    247   
index 79077d2..0000000
  396         -
-- 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
         248  +
++ /dev/null
  397    249   
@@ -1 +0,0 @@
  398         -
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
  399    250   
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
  400    251   
deleted file mode 100644
  401    252   
index 7852617..0000000
  402         -
-- 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
         253  +
++ /dev/null
  403    254   
@@ -1,4 +0,0 @@
  404         -
POST / HTTP/1.1
  405         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  406         -
Host:example.amazonaws.com
  407         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  408    255   
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
  409    256   
deleted file mode 100644
  410    257   
index 3e2e571..0000000
  411         -
-- 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
         258  +
++ /dev/null
  412    259   
@@ -1,4 +0,0 @@
  413         -
POST / HTTP/1.1
  414         -
Host:example.amazonaws.com
  415         -
X-Amz-Date:20150830T123600Z
  416         -
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
  417    260   
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
  418    261   
deleted file mode 100644
  419    262   
index 89ceae8..0000000
  420         -
-- 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
         263  +
++ /dev/null
  421    264   
@@ -1,4 +0,0 @@
  422         -
AWS4-HMAC-SHA256
  423         -
20150830T123600Z
  424         -
20150830/us-east-1/service/aws4_request
  425         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  426    265   
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
  427    266   
deleted file mode 100755
  428    267   
index d645695..0000000
  429         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
         268  +
++ /dev/null
  430    269   
@@ -1,202 +0,0 @@
  431         -
  432         -
                                 Apache License
  433         -
                           Version 2.0, January 2004
  434         -
                        http://www.apache.org/licenses/
  435         -
  436         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  437         -
  438         -
   1. Definitions.
  439         -
  440         -
      "License" shall mean the terms and conditions for use, reproduction,
  441         -
      and distribution as defined by Sections 1 through 9 of this document.
  442         -
  443         -
      "Licensor" shall mean the copyright owner or entity authorized by
  444         -
      the copyright owner that is granting the License.
  445         -
  446         -
      "Legal Entity" shall mean the union of the acting entity and all
  447         -
      other entities that control, are controlled by, or are under common
  448         -
      control with that entity. For the purposes of this definition,
  449         -
      "control" means (i) the power, direct or indirect, to cause the
  450         -
      direction or management of such entity, whether by contract or
  451         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  452         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  453         -
  454         -
      "You" (or "Your") shall mean an individual or Legal Entity
  455         -
      exercising permissions granted by this License.
  456         -
  457         -
      "Source" form shall mean the preferred form for making modifications,
  458         -
      including but not limited to software source code, documentation
  459         -
      source, and configuration files.
  460         -
  461         -
      "Object" form shall mean any form resulting from mechanical
  462         -
      transformation or translation of a Source form, including but
  463         -
      not limited to compiled object code, generated documentation,
  464         -
      and conversions to other media types.
  465         -
  466         -
      "Work" shall mean the work of authorship, whether in Source or
  467         -
      Object form, made available under the License, as indicated by a
  468         -
      copyright notice that is included in or attached to the work
  469         -
      (an example is provided in the Appendix below).
  470         -
  471         -
      "Derivative Works" shall mean any work, whether in Source or Object
  472         -
      form, that is based on (or derived from) the Work and for which the
  473         -
      editorial revisions, annotations, elaborations, or other modifications
  474         -
      represent, as a whole, an original work of authorship. For the purposes
  475         -
      of this License, Derivative Works shall not include works that remain
  476         -
      separable from, or merely link (or bind by name) to the interfaces of,
  477         -
      the Work and Derivative Works thereof.
  478         -
  479         -
      "Contribution" shall mean any work of authorship, including
  480         -
      the original version of the Work and any modifications or additions
  481         -
      to that Work or Derivative Works thereof, that is intentionally
  482         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  483         -
      or by an individual or Legal Entity authorized to submit on behalf of
  484         -
      the copyright owner. For the purposes of this definition, "submitted"
  485         -
      means any form of electronic, verbal, or written communication sent
  486         -
      to the Licensor or its representatives, including but not limited to
  487         -
      communication on electronic mailing lists, source code control systems,
  488         -
      and issue tracking systems that are managed by, or on behalf of, the
  489         -
      Licensor for the purpose of discussing and improving the Work, but
  490         -
      excluding communication that is conspicuously marked or otherwise
  491         -
      designated in writing by the copyright owner as "Not a Contribution."
  492         -
  493         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  494         -
      on behalf of whom a Contribution has been received by Licensor and
  495         -
      subsequently incorporated within the Work.
  496         -
  497         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  498         -
      this License, each Contributor hereby grants to You a perpetual,
  499         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  500         -
      copyright license to reproduce, prepare Derivative Works of,
  501         -
      publicly display, publicly perform, sublicense, and distribute the
  502         -
      Work and such Derivative Works in Source or Object form.
  503         -
  504         -
   3. Grant of Patent License. Subject to the terms and conditions of
  505         -
      this License, each Contributor hereby grants to You a perpetual,
  506         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  507         -
      (except as stated in this section) patent license to make, have made,
  508         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  509         -
      where such license applies only to those patent claims licensable
  510         -
      by such Contributor that are necessarily infringed by their
  511         -
      Contribution(s) alone or by combination of their Contribution(s)
  512         -
      with the Work to which such Contribution(s) was submitted. If You
  513         -
      institute patent litigation against any entity (including a
  514         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  515         -
      or a Contribution incorporated within the Work constitutes direct
  516         -
      or contributory patent infringement, then any patent licenses
  517         -
      granted to You under this License for that Work shall terminate
  518         -
      as of the date such litigation is filed.
  519         -
  520         -
   4. Redistribution. You may reproduce and distribute copies of the
  521         -
      Work or Derivative Works thereof in any medium, with or without
  522         -
      modifications, and in Source or Object form, provided that You
  523         -
      meet the following conditions:
  524         -
  525         -
      (a) You must give any other recipients of the Work or
  526         -
          Derivative Works a copy of this License; and
  527         -
  528         -
      (b) You must cause any modified files to carry prominent notices
  529         -
          stating that You changed the files; and
  530         -
  531         -
      (c) You must retain, in the Source form of any Derivative Works
  532         -
          that You distribute, all copyright, patent, trademark, and
  533         -
          attribution notices from the Source form of the Work,
  534         -
          excluding those notices that do not pertain to any part of
  535         -
          the Derivative Works; and
  536         -
  537         -
      (d) If the Work includes a "NOTICE" text file as part of its
  538         -
          distribution, then any Derivative Works that You distribute must
  539         -
          include a readable copy of the attribution notices contained
  540         -
          within such NOTICE file, excluding those notices that do not
  541         -
          pertain to any part of the Derivative Works, in at least one
  542         -
          of the following places: within a NOTICE text file distributed
  543         -
          as part of the Derivative Works; within the Source form or
  544         -
          documentation, if provided along with the Derivative Works; or,
  545         -
          within a display generated by the Derivative Works, if and
  546         -
          wherever such third-party notices normally appear. The contents
  547         -
          of the NOTICE file are for informational purposes only and
  548         -
          do not modify the License. You may add Your own attribution
  549         -
          notices within Derivative Works that You distribute, alongside
  550         -
          or as an addendum to the NOTICE text from the Work, provided
  551         -
          that such additional attribution notices cannot be construed
  552         -
          as modifying the License.
  553         -
  554         -
      You may add Your own copyright statement to Your modifications and
  555         -
      may provide additional or different license terms and conditions
  556         -
      for use, reproduction, or distribution of Your modifications, or
  557         -
      for any such Derivative Works as a whole, provided Your use,
  558         -
      reproduction, and distribution of the Work otherwise complies with
  559         -
      the conditions stated in this License.
  560         -
  561         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  562         -
      any Contribution intentionally submitted for inclusion in the Work
  563         -
      by You to the Licensor shall be under the terms and conditions of
  564         -
      this License, without any additional terms or conditions.
  565         -
      Notwithstanding the above, nothing herein shall supersede or modify
  566         -
      the terms of any separate license agreement you may have executed
  567         -
      with Licensor regarding such Contributions.
  568         -
  569         -
   6. Trademarks. This License does not grant permission to use the trade
  570         -
      names, trademarks, service marks, or product names of the Licensor,
  571         -
      except as required for reasonable and customary use in describing the
  572         -
      origin of the Work and reproducing the content of the NOTICE file.
  573         -
  574         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  575         -
      agreed to in writing, Licensor provides the Work (and each
  576         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  577         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  578         -
      implied, including, without limitation, any warranties or conditions
  579         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  580         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  581         -
      appropriateness of using or redistributing the Work and assume any
  582         -
      risks associated with Your exercise of permissions under this License.
  583         -
  584         -
   8. Limitation of Liability. In no event and under no legal theory,
  585         -
      whether in tort (including negligence), contract, or otherwise,
  586         -
      unless required by applicable law (such as deliberate and grossly
  587         -
      negligent acts) or agreed to in writing, shall any Contributor be
  588         -
      liable to You for damages, including any direct, indirect, special,
  589         -
      incidental, or consequential damages of any character arising as a
  590         -
      result of this License or out of the use or inability to use the
  591         -
      Work (including but not limited to damages for loss of goodwill,
  592         -
      work stoppage, computer failure or malfunction, or any and all
  593         -
      other commercial damages or losses), even if such Contributor
  594         -
      has been advised of the possibility of such damages.
  595         -
  596         -
   9. Accepting Warranty or Additional Liability. While redistributing
  597         -
      the Work or Derivative Works thereof, You may choose to offer,
  598         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  599         -
      or other liability obligations and/or rights consistent with this
  600         -
      License. However, in accepting such obligations, You may act only
  601         -
      on Your own behalf and on Your sole responsibility, not on behalf
  602         -
      of any other Contributor, and only if You agree to indemnify,
  603         -
      defend, and hold each Contributor harmless for any liability
  604         -
      incurred by, or claims asserted against, such Contributor by reason
  605         -
      of your accepting any such warranty or additional liability.
  606         -
  607         -
   END OF TERMS AND CONDITIONS
  608         -
  609         -
   APPENDIX: How to apply the Apache License to your work.
  610         -
  611         -
      To apply the Apache License to your work, attach the following
  612         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  613         -
      replaced with your own identifying information. (Don't include
  614         -
      the brackets!)  The text should be enclosed in the appropriate
  615         -
      comment syntax for the file format. We also recommend that a
  616         -
      file or class name and description of purpose be included on the
  617         -
      same "printed page" as the copyright notice for easier
  618         -
      identification within third-party archives.
  619         -
  620         -
   Copyright [yyyy] [name of copyright owner]
  621         -
  622         -
   Licensed under the Apache License, Version 2.0 (the "License");
  623         -
   you may not use this file except in compliance with the License.
  624         -
   You may obtain a copy of the License at
  625         -
  626         -
       http://www.apache.org/licenses/LICENSE-2.0
  627         -
  628         -
   Unless required by applicable law or agreed to in writing, software
  629         -
   distributed under the License is distributed on an "AS IS" BASIS,
  630         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  631         -
   See the License for the specific language governing permissions and
  632         -
   limitations under the License.
  633    270   
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
  634    271   
deleted file mode 100755
  635    272   
index d85f69e..0000000
  636         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         273  +
++ /dev/null
  637    274   
@@ -1,2 +0,0 @@
  638         -
AWS Signature Version 4a Test Suite
  639         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  640    275   
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
  641    276   
deleted file mode 100644
  642    277   
index c716622..0000000
  643         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         278  +
++ /dev/null
  644    279   
@@ -1,24 +0,0 @@
  645         -
Where did the files in this directory come from?
  646         -
================================================
  647         -
  648         -
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.
  649         -
  650         -
Signature Version 4A Test Suite
  651         -
------------------------------
  652         -
  653         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  654         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  655         -
  656         -
Each test group contains several files that you can use to validate most of the tasks described in
  657         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  658         -
  659         -
- context.json - Credentials and signer options to use when signing test requests
  660         -
- request.txt - The web request to be signed.
  661         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  662         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  663         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  664         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  665         -
  666         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  667         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  668         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  669    280   
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
  670    281   
deleted file mode 100644
  671    282   
index 45771c7..0000000
  672         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         283  +
++ /dev/null
  673    284   
@@ -1,12 +0,0 @@
  674         -
{
  675         -
    "credentials": {
  676         -
        "access_key_id": "AKIDEXAMPLE",
  677         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  678         -
    },
  679         -
    "expiration_in_seconds": 3600,
  680         -
    "normalize": true,
  681         -
    "region": "us-east-1",
  682         -
    "service": "service",
  683         -
    "sign_body": false,
  684         -
    "timestamp": "2015-08-30T12:36:00Z"
  685         -
}
  686    285   
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
  687    286   
deleted file mode 100644
  688    287   
index 45771c7..0000000
  689         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         288  +
++ /dev/null
  690    289   
@@ -1,12 +0,0 @@
  691         -
{
  692         -
    "credentials": {
  693         -
        "access_key_id": "AKIDEXAMPLE",
  694         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  695         -
    },
  696         -
    "expiration_in_seconds": 3600,
  697         -
    "normalize": true,
  698         -
    "region": "us-east-1",
  699         -
    "service": "service",
  700         -
    "sign_body": false,
  701         -
    "timestamp": "2015-08-30T12:36:00Z"
  702         -
}
  703    290   
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
  704    291   
deleted file mode 100644
  705    292   
index 45771c7..0000000
  706         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         293  +
++ /dev/null
  707    294   
@@ -1,12 +0,0 @@
  708         -
{
  709         -
    "credentials": {
  710         -
        "access_key_id": "AKIDEXAMPLE",
  711         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  712         -
    },
  713         -
    "expiration_in_seconds": 3600,
  714         -
    "normalize": true,
  715         -
    "region": "us-east-1",
  716         -
    "service": "service",
  717         -
    "sign_body": false,
  718         -
    "timestamp": "2015-08-30T12:36:00Z"
  719         -
}
  720    295   
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
  721    296   
deleted file mode 100644
  722    297   
index 45771c7..0000000
  723         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         298  +
++ /dev/null
  724    299   
@@ -1,12 +0,0 @@
  725         -
{
  726         -
    "credentials": {
  727         -
        "access_key_id": "AKIDEXAMPLE",
  728         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  729         -
    },
  730         -
    "expiration_in_seconds": 3600,
  731         -
    "normalize": true,
  732         -
    "region": "us-east-1",
  733         -
    "service": "service",
  734         -
    "sign_body": false,
  735         -
    "timestamp": "2015-08-30T12:36:00Z"
  736         -
}
  737    300   
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
  738    301   
deleted file mode 100644
  739    302   
index afe367b..0000000
  740         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         303  +
++ /dev/null
  741    304   
@@ -1,12 +0,0 @@
  742         -
{
  743         -
    "credentials": {
  744         -
        "access_key_id": "AKIDEXAMPLE",
  745         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  746         -
    },
  747         -
    "expiration_in_seconds": 3600,
  748         -
    "normalize": false,
  749         -
    "region": "us-east-1",
  750         -
    "service": "service",
  751         -
    "sign_body": false,
  752         -
    "timestamp": "2015-08-30T12:36:00Z"
  753         -
}
  754    305   
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
  755    306   
deleted file mode 100644
  756    307   
index 45771c7..0000000
  757         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         308  +
++ /dev/null
  758    309   
@@ -1,12 +0,0 @@
  759         -
{
  760         -
    "credentials": {
  761         -
        "access_key_id": "AKIDEXAMPLE",
  762         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  763         -
    },
  764         -
    "expiration_in_seconds": 3600,
  765         -
    "normalize": true,
  766         -
    "region": "us-east-1",
  767         -
    "service": "service",
  768         -
    "sign_body": false,
  769         -
    "timestamp": "2015-08-30T12:36:00Z"
  770         -
}
  771    310   
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
  772    311   
deleted file mode 100644
  773    312   
index afe367b..0000000
  774         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         313  +
++ /dev/null
  775    314   
@@ -1,12 +0,0 @@
  776         -
{
  777         -
    "credentials": {
  778         -
        "access_key_id": "AKIDEXAMPLE",
  779         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  780         -
    },
  781         -
    "expiration_in_seconds": 3600,
  782         -
    "normalize": false,
  783         -
    "region": "us-east-1",
  784         -
    "service": "service",
  785         -
    "sign_body": false,
  786         -
    "timestamp": "2015-08-30T12:36:00Z"
  787         -
}
  788    315   
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
  789    316   
deleted file mode 100644
  790    317   
index 45771c7..0000000
  791         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         318  +
++ /dev/null
  792    319   
@@ -1,12 +0,0 @@
  793         -
{
  794         -
    "credentials": {
  795         -
        "access_key_id": "AKIDEXAMPLE",
  796         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  797         -
    },
  798         -
    "expiration_in_seconds": 3600,
  799         -
    "normalize": true,
  800         -
    "region": "us-east-1",
  801         -
    "service": "service",
  802         -
    "sign_body": false,
  803         -
    "timestamp": "2015-08-30T12:36:00Z"
  804         -
}
  805    320   
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
  806    321   
deleted file mode 100644
  807    322   
index 45771c7..0000000
  808         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         323  +
++ /dev/null
  809    324   
@@ -1,12 +0,0 @@
  810         -
{
  811         -
    "credentials": {
  812         -
        "access_key_id": "AKIDEXAMPLE",
  813         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  814         -
    },
  815         -
    "expiration_in_seconds": 3600,
  816         -
    "normalize": true,
  817         -
    "region": "us-east-1",
  818         -
    "service": "service",
  819         -
    "sign_body": false,
  820         -
    "timestamp": "2015-08-30T12:36:00Z"
  821         -
}
  822    325   
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
  823    326   
deleted file mode 100644
  824    327   
index 45771c7..0000000
  825         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         328  +
++ /dev/null
  826    329   
@@ -1,12 +0,0 @@
  827         -
{
  828         -
    "credentials": {
  829         -
        "access_key_id": "AKIDEXAMPLE",
  830         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  831         -
    },
  832         -
    "expiration_in_seconds": 3600,
  833         -
    "normalize": true,
  834         -
    "region": "us-east-1",
  835         -
    "service": "service",
  836         -
    "sign_body": false,
  837         -
    "timestamp": "2015-08-30T12:36:00Z"
  838         -
}
  839    330   
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
  840    331   
deleted file mode 100644
  841    332   
index 45771c7..0000000
  842         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         333  +
++ /dev/null
  843    334   
@@ -1,12 +0,0 @@
  844         -
{
  845         -
    "credentials": {
  846         -
        "access_key_id": "AKIDEXAMPLE",
  847         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  848         -
    },
  849         -
    "expiration_in_seconds": 3600,
  850         -
    "normalize": true,
  851         -
    "region": "us-east-1",
  852         -
    "service": "service",
  853         -
    "sign_body": false,
  854         -
    "timestamp": "2015-08-30T12:36:00Z"
  855         -
}
  856    335   
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
  857    336   
deleted file mode 100644
  858    337   
index 45771c7..0000000
  859         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         338  +
++ /dev/null
  860    339   
@@ -1,12 +0,0 @@
  861         -
{
  862         -
    "credentials": {
  863         -
        "access_key_id": "AKIDEXAMPLE",
  864         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  865         -
    },
  866         -
    "expiration_in_seconds": 3600,
  867         -
    "normalize": true,
  868         -
    "region": "us-east-1",
  869         -
    "service": "service",
  870         -
    "sign_body": false,
  871         -
    "timestamp": "2015-08-30T12:36:00Z"
  872         -
}
  873    340   
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
  874    341   
deleted file mode 100644
  875    342   
index 47e7128..0000000
  876         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         343  +
++ /dev/null
  877    344   
@@ -1,9 +0,0 @@
  878         -
GET
  879         -
/
  880         -
  881         -
host:example.amazonaws.com
  882         -
x-amz-date:20150830T123600Z
  883         -
x-amz-region-set:us-east-1
  884         -
  885         -
host;x-amz-date;x-amz-region-set
  886         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  887    345   
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
  888    346   
deleted file mode 100644
  889    347   
index 95d7219..0000000
  890         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         348  +
++ /dev/null
  891    349   
@@ -1,4 +0,0 @@
  892         -
AWS4-ECDSA-P256-SHA256
  893         -
20150830T123600Z
  894         -
20150830/service/aws4_request
  895         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  896    350   
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
  897    351   
deleted file mode 100644
  898    352   
index a34ea26..0000000
  899         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         353  +
++ /dev/null
  900    354   
@@ -1,7 +0,0 @@
  901         -
GET
  902         -
/
  903         -
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
  904         -
host:example.amazonaws.com
  905         -
  906         -
host
  907         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  908    355   
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
  909    356   
deleted file mode 100644
  910    357   
index 48f855c..0000000
  911         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         358  +
++ /dev/null
  912    359   
@@ -1,4 +0,0 @@
  913         -
AWS4-ECDSA-P256-SHA256
  914         -
20150830T123600Z
  915         -
20150830/service/aws4_request
  916         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  917    360   
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
  918    361   
deleted file mode 100644
  919    362   
index 45771c7..0000000
  920         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         363  +
++ /dev/null
  921    364   
@@ -1,12 +0,0 @@
  922         -
{
  923         -
    "credentials": {
  924         -
        "access_key_id": "AKIDEXAMPLE",
  925         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  926         -
    },
  927         -
    "expiration_in_seconds": 3600,
  928         -
    "normalize": true,
  929         -
    "region": "us-east-1",
  930         -
    "service": "service",
  931         -
    "sign_body": false,
  932         -
    "timestamp": "2015-08-30T12:36:00Z"
  933         -
}
  934    365   
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
  935    366   
deleted file mode 100644
  936    367   
index 47e7128..0000000
  937         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         368  +
++ /dev/null
  938    369   
@@ -1,9 +0,0 @@
  939         -
GET
  940         -
/
  941         -
  942         -
host:example.amazonaws.com
  943         -
x-amz-date:20150830T123600Z
  944         -
x-amz-region-set:us-east-1
  945         -
  946         -
host;x-amz-date;x-amz-region-set
  947         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  948    370   
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
  949    371   
deleted file mode 100644
  950    372   
index 95d7219..0000000
  951         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         373  +
++ /dev/null
  952    374   
@@ -1,4 +0,0 @@
  953         -
AWS4-ECDSA-P256-SHA256
  954         -
20150830T123600Z
  955         -
20150830/service/aws4_request
  956         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  957    375   
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
  958    376   
deleted file mode 100644
  959    377   
index a34ea26..0000000
  960         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         378  +
++ /dev/null
  961    379   
@@ -1,7 +0,0 @@
  962         -
GET
  963         -
/
  964         -
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
  965         -
host:example.amazonaws.com
  966         -
  967         -
host
  968         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  969    380   
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
  970    381   
deleted file mode 100644
  971    382   
index 48f855c..0000000
  972         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         383  +
++ /dev/null
  973    384   
@@ -1,4 +0,0 @@
  974         -
AWS4-ECDSA-P256-SHA256
  975         -
20150830T123600Z
  976         -
20150830/service/aws4_request
  977         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  978    385   
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
  979    386   
deleted file mode 100644
  980    387   
index 45771c7..0000000
  981         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         388  +
++ /dev/null
  982    389   
@@ -1,12 +0,0 @@
  983         -
{
  984         -
    "credentials": {
  985         -
        "access_key_id": "AKIDEXAMPLE",
  986         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  987         -
    },
  988         -
    "expiration_in_seconds": 3600,
  989         -
    "normalize": true,
  990         -
    "region": "us-east-1",
  991         -
    "service": "service",
  992         -
    "sign_body": false,
  993         -
    "timestamp": "2015-08-30T12:36:00Z"
  994         -
}
  995    390   
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
  996    391   
deleted file mode 100644
  997    392   
index 45771c7..0000000
  998         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         393  +
++ /dev/null
  999    394   
@@ -1,12 +0,0 @@
 1000         -
{
 1001         -
    "credentials": {
 1002         -
        "access_key_id": "AKIDEXAMPLE",
 1003         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1004         -
    },
 1005         -
    "expiration_in_seconds": 3600,
 1006         -
    "normalize": true,
 1007         -
    "region": "us-east-1",
 1008         -
    "service": "service",
 1009         -
    "sign_body": false,
 1010         -
    "timestamp": "2015-08-30T12:36:00Z"
 1011         -
}
 1012    395   
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
 1013    396   
deleted file mode 100644
 1014    397   
index 45771c7..0000000
 1015         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         398  +
++ /dev/null
 1016    399   
@@ -1,12 +0,0 @@
 1017         -
{
 1018         -
    "credentials": {
 1019         -
        "access_key_id": "AKIDEXAMPLE",
 1020         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1021         -
    },
 1022         -
    "expiration_in_seconds": 3600,
 1023         -
    "normalize": true,
 1024         -
    "region": "us-east-1",
 1025         -
    "service": "service",
 1026         -
    "sign_body": false,
 1027         -
    "timestamp": "2015-08-30T12:36:00Z"
 1028         -
}
 1029    400   
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
 1030    401   
deleted file mode 100644
 1031    402   
index 45771c7..0000000
 1032         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         403  +
++ /dev/null
 1033    404   
@@ -1,12 +0,0 @@
 1034         -
{
 1035         -
    "credentials": {
 1036         -
        "access_key_id": "AKIDEXAMPLE",
 1037         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1038         -
    },
 1039         -
    "expiration_in_seconds": 3600,
 1040         -
    "normalize": true,
 1041         -
    "region": "us-east-1",
 1042         -
    "service": "service",
 1043         -
    "sign_body": false,
 1044         -
    "timestamp": "2015-08-30T12:36:00Z"
 1045         -
}
 1046    405   
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
 1047    406   
deleted file mode 100644
 1048    407   
index 45771c7..0000000
 1049         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         408  +
++ /dev/null
 1050    409   
@@ -1,12 +0,0 @@
 1051         -
{
 1052         -
    "credentials": {
 1053         -
        "access_key_id": "AKIDEXAMPLE",
 1054         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1055         -
    },
 1056         -
    "expiration_in_seconds": 3600,
 1057         -
    "normalize": true,
 1058         -
    "region": "us-east-1",
 1059         -
    "service": "service",
 1060         -
    "sign_body": false,
 1061         -
    "timestamp": "2015-08-30T12:36:00Z"
 1062         -
}
 1063    410   
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
 1064    411   
deleted file mode 100644
 1065    412   
index 45771c7..0000000
 1066         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         413  +
++ /dev/null
 1067    414   
@@ -1,12 +0,0 @@
 1068         -
{
 1069         -
    "credentials": {
 1070         -
        "access_key_id": "AKIDEXAMPLE",
 1071         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1072         -
    },
 1073         -
    "expiration_in_seconds": 3600,
 1074         -
    "normalize": true,
 1075         -
    "region": "us-east-1",
 1076         -
    "service": "service",
 1077         -
    "sign_body": false,
 1078         -
    "timestamp": "2015-08-30T12:36:00Z"
 1079         -
}
 1080    415   
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
 1081    416   
deleted file mode 100644
 1082    417   
index b6fdecf..0000000
 1083         -
-- 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
         418  +
++ /dev/null
 1084    419   
@@ -1,4 +0,0 @@
 1085         -
AWS4-ECDSA-P256-SHA256
 1086         -
20150830T123600Z
 1087         -
20150830/service/aws4_request
 1088         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1089    420   
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
 1090    421   
deleted file mode 100644
 1091    422   
index a300bea..0000000
 1092         -
-- 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
         423  +
++ /dev/null
 1093    424   
@@ -1,4 +0,0 @@
 1094         -
AWS4-ECDSA-P256-SHA256
 1095         -
20150830T123600Z
 1096         -
20150830/service/aws4_request
 1097         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
 1098    425   
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
 1099    426   
deleted file mode 100644
 1100    427   
index b6fdecf..0000000
 1101         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         428  +
++ /dev/null
 1102    429   
@@ -1,4 +0,0 @@
 1103         -
AWS4-ECDSA-P256-SHA256
 1104         -
20150830T123600Z
 1105         -
20150830/service/aws4_request
 1106         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1107    430   
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
 1108    431   
new file mode 100644
 1109    432   
index 0000000..a674243
 1110         -
-- /dev/null
         433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
 1111    434   
@@ -0,0 +1,7 @@
         435  +
# AWS SigV4 and SigV4A Signing Test Suite
         436  +
         437  +
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).
         438  +
         439  +
We added the following changes:
         440  +
         441  +
* 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
 1112    442   
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
 1113    443   
similarity index 100%
 1114    444   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
 1115    445   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
 1116    446   
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
 1117    447   
similarity index 100%
 1118    448   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
 1119    449   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
 1120    450   
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
 1121    451   
similarity index 100%
 1122    452   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
 1123    453   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
 1124    454   
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
 1125    455   
similarity index 100%
 1126    456   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
 1127    457   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
 1128    458   
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
 1129    459   
similarity index 100%
 1130    460   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
 1131    461   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
 1132    462   
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
 1133    463   
similarity index 100%
 1134    464   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
 1135    465   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
 1136    466   
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
 1137    467   
similarity index 100%
 1138    468   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
 1139    469   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
 1140    470   
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
 1141    471   
similarity index 99%
 1142    472   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
 1143    473   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1144    474   
index 45771c7..0468d80 100644
 1145         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
         475  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1146    476   
@@ -1,12 +1,12 @@
 1147    477   
{
 1148    478   
    "credentials": {
 1149    479   
        "access_key_id": "AKIDEXAMPLE",
 1150    480   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1151    481   
    },
 1152    482   
    "expiration_in_seconds": 3600,
 1153    483   
    "normalize": true,
 1154    484   
    "region": "us-east-1",
 1155    485   
    "service": "service",
 1156    486   
    "sign_body": false,
 1157    487   
    "timestamp": "2015-08-30T12:36:00Z"
 1158         -
}
         488  +
}
              \
 No newline at end of file
 1159    489   
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
 1160    490   
similarity index 100%
 1161    491   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
 1162    492   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1163    493   
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
 1164    494   
new file mode 100644
 1165    495   
index 0000000..7fc5d7a
 1166         -
-- /dev/null
         496  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1167    497   
@@ -0,0 +1 @@
         498  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
 1168    499   
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
 1169    500   
new file mode 100644
 1170    501   
index 0000000..36a1205
 1171         -
-- /dev/null
         502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1172    503   
@@ -0,0 +1,8 @@
         504  +
GET / HTTP/1.1
         505  +
Host:example.amazonaws.com
         506  +
My-Header1:value2
         507  +
My-Header1:value2
         508  +
My-Header1:value1
         509  +
X-Amz-Date:20150830T123600Z
         510  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         511  +
 1173    512   
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
 1174    513   
similarity index 100%
 1175    514   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
 1176    515   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1177    516   
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
 1178    517   
new file mode 100644
 1179    518   
index 0000000..f9f4190
 1180         -
-- /dev/null
         519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1181    520   
@@ -0,0 +1,8 @@
         521  +
GET
         522  +
/
         523  +
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
         524  +
host:example.amazonaws.com
         525  +
my-header1:value2,value2,value1
         526  +
         527  +
host;my-header1
         528  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1182    529   
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
 1183    530   
new file mode 100644
 1184    531   
index 0000000..5d0d87f
 1185         -
-- /dev/null
         532  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1186    533   
@@ -0,0 +1 @@
         534  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1187    535   
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
 1188    536   
new file mode 100644
 1189    537   
index 0000000..c1dfcf4
 1190         -
-- /dev/null
         538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1191    539   
@@ -0,0 +1,6 @@
         540  +
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
         541  +
Host:example.amazonaws.com
         542  +
My-Header1:value2
         543  +
My-Header1:value2
         544  +
My-Header1:value1
         545  +
 1192    546   
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
 1193    547   
similarity index 53%
 1194    548   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1195    549   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1196    550   
index 0a3350a..077c1bb 100644
 1197         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         551  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1198    552   
@@ -1,4 +1,4 @@
 1199    553   
AWS4-HMAC-SHA256
 1200    554   
20150830T123600Z
 1201    555   
20150830/us-east-1/service/aws4_request
 1202         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         556  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1203    557   
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
 1204    558   
similarity index 100%
 1205    559   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1206    560   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1207    561   
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
 1208    562   
similarity index 99%
 1209    563   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1210    564   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1211    565   
index 45771c7..0468d80 100644
 1212         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
         566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1213    567   
@@ -1,12 +1,12 @@
 1214    568   
{
 1215    569   
    "credentials": {
 1216    570   
        "access_key_id": "AKIDEXAMPLE",
 1217    571   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1218    572   
    },
 1219    573   
    "expiration_in_seconds": 3600,
 1220    574   
    "normalize": true,
 1221    575   
    "region": "us-east-1",
 1222    576   
    "service": "service",
 1223    577   
    "sign_body": false,
 1224    578   
    "timestamp": "2015-08-30T12:36:00Z"
 1225         -
}
         579  +
}
              \
 No newline at end of file
 1226    580   
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
 1227    581   
similarity index 82%
 1228    582   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1229    583   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1230    584   
index 721a39f..8cb5476 100644
 1231         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         585  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1232    586   
@@ -1,9 +1,9 @@
 1233    587   
GET
 1234    588   
/
 1235    589   
 1236    590   
host:example.amazonaws.com
 1237         -
my-header1:value1,value2,value3
         591  +
my-header1:value1 value2 value3
 1238    592   
x-amz-date:20150830T123600Z
 1239    593   
 1240    594   
host;my-header1;x-amz-date
 1241    595   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1242    596   
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
 1243    597   
new file mode 100644
 1244    598   
index 0000000..e6ff7a9
 1245         -
-- /dev/null
         599  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1246    600   
@@ -0,0 +1 @@
         601  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1247    602   
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
 1248    603   
new file mode 100644
 1249    604   
index 0000000..b5ef6a0
 1250         -
-- /dev/null
         605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1251    606   
@@ -0,0 +1,8 @@
         607  +
GET / HTTP/1.1
         608  +
Host:example.amazonaws.com
         609  +
My-Header1:value1
         610  +
  value2
         611  +
     value3
         612  +
X-Amz-Date:20150830T123600Z
         613  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         614  +
 1252    615   
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
 1253    616   
similarity index 53%
 1254    617   
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
 1255    618   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1256    619   
index fd43a41..97c7430 100644
 1257         -
-- 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
         620  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1258    621   
@@ -1,4 +1,4 @@
 1259    622   
AWS4-HMAC-SHA256
 1260    623   
20150830T123600Z
 1261    624   
20150830/us-east-1/service/aws4_request
 1262         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         625  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1263    626   
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
 1264    627   
new file mode 100644
 1265    628   
index 0000000..aac46de
 1266         -
-- /dev/null
         629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1267    630   
@@ -0,0 +1,8 @@
         631  +
GET
         632  +
/
         633  +
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
         634  +
host:example.amazonaws.com
         635  +
my-header1:value1 value2 value3
         636  +
         637  +
host;my-header1
         638  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1268    639   
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
 1269    640   
new file mode 100644
 1270    641   
index 0000000..205732d
 1271         -
-- /dev/null
         642  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1272    643   
@@ -0,0 +1 @@
         644  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1273    645   
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
 1274    646   
new file mode 100644
 1275    647   
index 0000000..a891b87
 1276         -
-- /dev/null
         648  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1277    649   
@@ -0,0 +1,6 @@
         650  +
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
         651  +
Host:example.amazonaws.com
         652  +
My-Header1:value1
         653  +
  value2
         654  +
     value3
         655  +
 1278    656   
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
 1279    657   
similarity index 53%
 1280    658   
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
 1281    659   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1282    660   
index 90e66b8..ec3fe45 100644
 1283         -
-- 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
         661  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1284    662   
@@ -1,4 +1,4 @@
 1285    663   
AWS4-HMAC-SHA256
 1286    664   
20150830T123600Z
 1287    665   
20150830/us-east-1/service/aws4_request
 1288         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         666  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1289    667   
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
 1290    668   
similarity index 75%
 1291    669   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1292    670   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1293    671   
index 7caa6ac..b5026cd 100644
 1294         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1295    673   
@@ -1,6 +1,5 @@
 1296    674   
GET / HTTP/1.1
 1297    675   
Host:example.amazonaws.com
 1298    676   
My-Header1:value1
 1299    677   
  value2
 1300    678   
     value3
 1301         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1302    679   
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
 1303    680   
similarity index 99%
 1304    681   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1305    682   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1306    683   
index 45771c7..0468d80 100644
 1307         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
         684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1308    685   
@@ -1,12 +1,12 @@
 1309    686   
{
 1310    687   
    "credentials": {
 1311    688   
        "access_key_id": "AKIDEXAMPLE",
 1312    689   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1313    690   
    },
 1314    691   
    "expiration_in_seconds": 3600,
 1315    692   
    "normalize": true,
 1316    693   
    "region": "us-east-1",
 1317    694   
    "service": "service",
 1318    695   
    "sign_body": false,
 1319    696   
    "timestamp": "2015-08-30T12:36:00Z"
 1320         -
}
         697  +
}
              \
 No newline at end of file
 1321    698   
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
 1322    699   
similarity index 100%
 1323    700   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1324    701   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1325    702   
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
 1326    703   
new file mode 100644
 1327    704   
index 0000000..8ef0494
 1328         -
-- /dev/null
         705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1329    706   
@@ -0,0 +1 @@
         707  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1330    708   
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
 1331    709   
new file mode 100644
 1332    710   
index 0000000..b786dc9
 1333         -
-- /dev/null
         711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1334    712   
@@ -0,0 +1,9 @@
         713  +
GET / HTTP/1.1
         714  +
Host:example.amazonaws.com
         715  +
My-Header1:value4
         716  +
My-Header1:value1
         717  +
My-Header1:value3
         718  +
My-Header1:value2
         719  +
X-Amz-Date:20150830T123600Z
         720  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         721  +
 1335    722   
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
 1336    723   
similarity index 100%
 1337    724   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1338    725   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1339    726   
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
 1340    727   
new file mode 100644
 1341    728   
index 0000000..a211cc5
 1342         -
-- /dev/null
         729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1343    730   
@@ -0,0 +1,8 @@
         731  +
GET
         732  +
/
         733  +
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
         734  +
host:example.amazonaws.com
         735  +
my-header1:value4,value1,value3,value2
         736  +
         737  +
host;my-header1
         738  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1344    739   
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
 1345    740   
new file mode 100644
 1346    741   
index 0000000..417b0fa
 1347         -
-- /dev/null
         742  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1348    743   
@@ -0,0 +1 @@
         744  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1349    745   
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
 1350    746   
new file mode 100644
 1351    747   
index 0000000..b615e5d
 1352         -
-- /dev/null
         748  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1353    749   
@@ -0,0 +1,7 @@
         750  +
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
         751  +
Host:example.amazonaws.com
         752  +
My-Header1:value4
         753  +
My-Header1:value1
         754  +
My-Header1:value3
         755  +
My-Header1:value2
         756  +
 1354    757   
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
 1355    758   
similarity index 53%
 1356    759   
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
 1357    760   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1358    761   
index f7e615e..dcaaa1b 100644
 1359         -
-- 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
         762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1360    763   
@@ -1,4 +1,4 @@
 1361    764   
AWS4-HMAC-SHA256
 1362    765   
20150830T123600Z
 1363    766   
20150830/us-east-1/service/aws4_request
 1364         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         767  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1365    768   
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
 1366    769   
similarity index 100%
 1367    770   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1368    771   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1369    772   
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
 1370    773   
similarity index 99%
 1371    774   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1372    775   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1373    776   
index 45771c7..0468d80 100644
 1374         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
         777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1375    778   
@@ -1,12 +1,12 @@
 1376    779   
{
 1377    780   
    "credentials": {
 1378    781   
        "access_key_id": "AKIDEXAMPLE",
 1379    782   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1380    783   
    },
 1381    784   
    "expiration_in_seconds": 3600,
 1382    785   
    "normalize": true,
 1383    786   
    "region": "us-east-1",
 1384    787   
    "service": "service",
 1385    788   
    "sign_body": false,
 1386    789   
    "timestamp": "2015-08-30T12:36:00Z"
 1387         -
}
         790  +
}
              \
 No newline at end of file
 1388    791   
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
 1389    792   
similarity index 100%
 1390    793   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1391    794   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1392    795   
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
 1393    796   
new file mode 100644
 1394    797   
index 0000000..36081a9
 1395         -
-- /dev/null
         798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1396    799   
@@ -0,0 +1 @@
         800  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1397    801   
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
 1398    802   
new file mode 100644
 1399    803   
index 0000000..6331d16
 1400         -
-- /dev/null
         804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1401    805   
@@ -0,0 +1,7 @@
         806  +
GET / HTTP/1.1
         807  +
Host:example.amazonaws.com
         808  +
My-Header1: value1
         809  +
My-Header2: "a   b   c"
         810  +
X-Amz-Date:20150830T123600Z
         811  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         812  +
 1402    813   
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
 1403    814   
similarity index 100%
 1404    815   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1405    816   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1406    817   
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
 1407    818   
new file mode 100644
 1408    819   
index 0000000..125c1f9
 1409         -
-- /dev/null
         820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1410    821   
@@ -0,0 +1,9 @@
         822  +
GET
         823  +
/
         824  +
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
         825  +
host:example.amazonaws.com
         826  +
my-header1:value1
         827  +
my-header2:"a b c"
         828  +
         829  +
host;my-header1;my-header2
         830  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1411    831   
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
 1412    832   
new file mode 100644
 1413    833   
index 0000000..17007a8
 1414         -
-- /dev/null
         834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1415    835   
@@ -0,0 +1 @@
         836  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1416    837   
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
 1417    838   
new file mode 100644
 1418    839   
index 0000000..e519fd9
 1419         -
-- /dev/null
         840  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1420    841   
@@ -0,0 +1,5 @@
         842  +
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
         843  +
Host:example.amazonaws.com
         844  +
My-Header1: value1
         845  +
My-Header2: "a   b   c"
         846  +
 1421    847   
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
 1422    848   
new file mode 100644
 1423    849   
index 0000000..6b4b781
 1424         -
-- /dev/null
         850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1425    851   
@@ -0,0 +1,4 @@
         852  +
AWS4-HMAC-SHA256
         853  +
20150830T123600Z
         854  +
20150830/us-east-1/service/aws4_request
         855  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1426    856   
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
 1427    857   
similarity index 100%
 1428    858   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1429    859   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1430    860   
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
 1431    861   
new file mode 100644
 1432    862   
index 0000000..0468d80
 1433         -
-- /dev/null
         863  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1434    864   
@@ -0,0 +1,12 @@
         865  +
{
         866  +
    "credentials": {
         867  +
        "access_key_id": "AKIDEXAMPLE",
         868  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         869  +
    },
         870  +
    "expiration_in_seconds": 3600,
         871  +
    "normalize": true,
         872  +
    "region": "us-east-1",
         873  +
    "service": "service",
         874  +
    "sign_body": false,
         875  +
    "timestamp": "2015-08-30T12:36:00Z"
         876  +
}
              \
 No newline at end of file
 1435    877   
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
 1436    878   
similarity index 100%
 1437    879   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1438    880   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1439    881   
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
 1440    882   
new file mode 100644
 1441    883   
index 0000000..87f295f
 1442         -
-- /dev/null
         884  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1443    885   
@@ -0,0 +1 @@
         886  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1444    887   
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
 1445    888   
new file mode 100644
 1446    889   
index 0000000..0de8327
 1447         -
-- /dev/null
         890  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1448    891   
@@ -0,0 +1,5 @@
         892  +
GET /example/.. HTTP/1.1
         893  +
Host:example.amazonaws.com
         894  +
X-Amz-Date:20150830T123600Z
         895  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         896  +
 1449    897   
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
 1450    898   
similarity index 100%
 1451    899   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1452    900   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1453    901   
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
 1454    902   
new file mode 100644
 1455    903   
index 0000000..fb2420d
 1456         -
-- /dev/null
         904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1457    905   
@@ -0,0 +1,7 @@
         906  +
GET
         907  +
/
         908  +
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
         909  +
host:example.amazonaws.com
         910  +
         911  +
host
         912  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1458    913   
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
 1459    914   
new file mode 100644
 1460    915   
index 0000000..da5c905
 1461         -
-- /dev/null
         916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1462    917   
@@ -0,0 +1 @@
         918  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1463    919   
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
 1464    920   
new file mode 100644
 1465    921   
index 0000000..4329c98
 1466         -
-- /dev/null
         922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1467    923   
@@ -0,0 +1,3 @@
         924  +
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
         925  +
Host:example.amazonaws.com
         926  +
 1468    927   
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
 1469    928   
new file mode 100644
 1470    929   
index 0000000..d837e67
 1471         -
-- /dev/null
         930  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1472    931   
@@ -0,0 +1,4 @@
         932  +
AWS4-HMAC-SHA256
         933  +
20150830T123600Z
         934  +
20150830/us-east-1/service/aws4_request
         935  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1473    936   
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
 1474    937   
similarity index 100%
 1475    938   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1476    939   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1477    940   
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
 1478    941   
new file mode 100644
 1479    942   
index 0000000..0468d80
 1480         -
-- /dev/null
         943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1481    944   
@@ -0,0 +1,12 @@
         945  +
{
         946  +
    "credentials": {
         947  +
        "access_key_id": "AKIDEXAMPLE",
         948  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         949  +
    },
         950  +
    "expiration_in_seconds": 3600,
         951  +
    "normalize": true,
         952  +
    "region": "us-east-1",
         953  +
    "service": "service",
         954  +
    "sign_body": false,
         955  +
    "timestamp": "2015-08-30T12:36:00Z"
         956  +
}
              \
 No newline at end of file
 1482    957   
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
 1483    958   
similarity index 100%
 1484    959   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1485    960   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1486    961   
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
 1487    962   
new file mode 100644
 1488    963   
index 0000000..87f295f
 1489         -
-- /dev/null
         964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1490    965   
@@ -0,0 +1 @@
         966  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1491    967   
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
 1492    968   
new file mode 100644
 1493    969   
index 0000000..f9b3815
 1494         -
-- /dev/null
         970  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1495    971   
@@ -0,0 +1,5 @@
         972  +
GET /example1/example2/../.. HTTP/1.1
         973  +
Host:example.amazonaws.com
         974  +
X-Amz-Date:20150830T123600Z
         975  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         976  +
 1496    977   
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
 1497    978   
similarity index 100%
 1498    979   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1499    980   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1500    981   
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
 1501    982   
new file mode 100644
 1502    983   
index 0000000..fb2420d
 1503         -
-- /dev/null
         984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1504    985   
@@ -0,0 +1,7 @@
         986  +
GET
         987  +
/
         988  +
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
         989  +
host:example.amazonaws.com
         990  +
         991  +
host
         992  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1505    993   
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
 1506    994   
new file mode 100644
 1507    995   
index 0000000..da5c905
 1508         -
-- /dev/null
         996  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1509    997   
@@ -0,0 +1 @@
         998  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1510    999   
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
 1511   1000   
new file mode 100644
 1512   1001   
index 0000000..b2988b7
 1513         -
-- /dev/null
        1002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1514   1003   
@@ -0,0 +1,3 @@
        1004  +
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
        1005  +
Host:example.amazonaws.com
        1006  +
 1515   1007   
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
 1516   1008   
new file mode 100644
 1517   1009   
index 0000000..d837e67
 1518         -
-- /dev/null
        1010  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1519   1011   
@@ -0,0 +1,4 @@
        1012  +
AWS4-HMAC-SHA256
        1013  +
20150830T123600Z
        1014  +
20150830/us-east-1/service/aws4_request
        1015  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1520   1016   
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
 1521   1017   
similarity index 100%
 1522   1018   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1523   1019   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1524   1020   
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
 1525   1021   
similarity index 99%
 1526   1022   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1527   1023   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1528   1024   
index afe367b..7bee5c7 100644
 1529         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
        1025  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1530   1026   
@@ -1,12 +1,12 @@
 1531   1027   
{
 1532   1028   
    "credentials": {
 1533   1029   
        "access_key_id": "AKIDEXAMPLE",
 1534   1030   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1535   1031   
    },
 1536   1032   
    "expiration_in_seconds": 3600,
 1537   1033   
    "normalize": false,
 1538   1034   
    "region": "us-east-1",
 1539   1035   
    "service": "service",
 1540   1036   
    "sign_body": false,
 1541   1037   
    "timestamp": "2015-08-30T12:36:00Z"
 1542         -
}
        1038  +
}
              \
 No newline at end of file
 1543   1039   
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
 1544   1040   
similarity index 82%
 1545   1041   
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
 1546   1042   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1547   1043   
index 36c3cdf..6919c44 100644
 1548         -
-- 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
        1044  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1549   1045   
@@ -1,8 +1,8 @@
 1550   1046   
GET
 1551         -
/
 1552         -
Param1=Value1&Param1=value2
        1047  +
/example1/example2/../..
        1048  +
 1553   1049   
host:example.amazonaws.com
 1554   1050   
x-amz-date:20150830T123600Z
 1555   1051   
 1556   1052   
host;x-amz-date
 1557   1053   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1558   1054   
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
 1559   1055   
new file mode 100644
 1560   1056   
index 0000000..4092d83
 1561         -
-- /dev/null
        1057  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1562   1058   
@@ -0,0 +1 @@
        1059  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1563   1060   
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
 1564   1061   
new file mode 100644
 1565   1062   
index 0000000..e731b35
 1566         -
-- /dev/null
        1063  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1567   1064   
@@ -0,0 +1,5 @@
        1065  +
GET /example1/example2/../.. HTTP/1.1
        1066  +
Host:example.amazonaws.com
        1067  +
X-Amz-Date:20150830T123600Z
        1068  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
        1069  +
 1568   1070   
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
 1569   1071   
new file mode 100644
 1570   1072   
index 0000000..4f45752
 1571         -
-- /dev/null
        1073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1572   1074   
@@ -0,0 +1,4 @@
        1075  +
AWS4-HMAC-SHA256
        1076  +
20150830T123600Z
        1077  +
20150830/us-east-1/service/aws4_request
        1078  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1573   1079   
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
 1574   1080   
new file mode 100644
 1575   1081   
index 0000000..e1fb07d
 1576         -
-- /dev/null
        1082  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1577   1083   
@@ -0,0 +1,7 @@
        1084  +
GET
        1085  +
/example1/example2/../..
        1086  +
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
        1087  +
host:example.amazonaws.com
        1088  +
        1089  +
host
        1090  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1578   1091   
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
 1579   1092   
new file mode 100644
 1580   1093   
index 0000000..8ac31d7
 1581         -
-- /dev/null
        1094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1582   1095   
@@ -0,0 +1 @@
        1096  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1583   1097   
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
 1584   1098   
new file mode 100644
 1585   1099   
index 0000000..ac074f9
 1586         -
-- /dev/null
        1100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1587   1101   
@@ -0,0 +1,3 @@
        1102  +
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
        1103  +
Host:example.amazonaws.com
        1104  +
 1588   1105   
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
 1589   1106   
new file mode 100644
 1590   1107   
index 0000000..8dcb6ff
 1591         -
-- /dev/null
        1108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1592   1109   
@@ -0,0 +1,4 @@
        1110  +
AWS4-HMAC-SHA256
        1111  +
20150830T123600Z
        1112  +
20150830/us-east-1/service/aws4_request
        1113  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1593   1114   
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
 1594   1115   
similarity index 100%
 1595   1116   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1596   1117   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1597   1118   
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
 1598   1119   
similarity index 99%
 1599   1120   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1600   1121   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1601   1122   
index afe367b..7bee5c7 100644
 1602         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
        1123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1603   1124   
@@ -1,12 +1,12 @@
 1604   1125   
{
 1605   1126   
    "credentials": {
 1606   1127   
        "access_key_id": "AKIDEXAMPLE",
 1607   1128   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1608   1129   
    },
 1609   1130   
    "expiration_in_seconds": 3600,
 1610   1131   
    "normalize": false,
 1611   1132   
    "region": "us-east-1",
 1612   1133   
    "service": "service",
 1613   1134   
    "sign_body": false,
 1614   1135   
    "timestamp": "2015-08-30T12:36:00Z"
 1615         -
}
        1136  +
}
              \
 No newline at end of file
 1616   1137   
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
 1617   1138   
similarity index 82%
 1618   1139   
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
 1619   1140   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1620   1141   
index 26898eb..f640bc2 100644
 1621         -
-- 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
        1142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1622   1143   
@@ -1,8 +1,8 @@
 1623   1144   
GET
 1624         -
/
 1625         -
Param1=value1&Param1=value2
        1145  +
/example/..
        1146  +
 1626   1147   
host:example.amazonaws.com
 1627   1148   
x-amz-date:20150830T123600Z
 1628   1149   
 1629   1150   
host;x-amz-date
 1630   1151   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1631   1152   
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
 1632   1153   
new file mode 100644
 1633   1154   
index 0000000..d957303
 1634         -
-- /dev/null
        1155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1635   1156   
@@ -0,0 +1 @@
        1157  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1636   1158   
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
 1637   1159   
new file mode 100644
 1638   1160   
index 0000000..4f42ffc
 1639         -
-- /dev/null
        1161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1640   1162   
@@ -0,0 +1,5 @@
        1163  +
GET /example/.. HTTP/1.1
        1164  +
Host:example.amazonaws.com
        1165  +
X-Amz-Date:20150830T123600Z
        1166  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
        1167  +
 1641   1168   
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
 1642   1169   
new file mode 100644
 1643   1170   
index 0000000..ca54bda
 1644         -
-- /dev/null
        1171  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1645   1172   
@@ -0,0 +1,4 @@
        1173  +
AWS4-HMAC-SHA256
        1174  +
20150830T123600Z
        1175  +
20150830/us-east-1/service/aws4_request
        1176  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1646   1177   
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
 1647   1178   
new file mode 100644
 1648   1179   
index 0000000..dc80036
 1649         -
-- /dev/null
        1180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1650   1181   
@@ -0,0 +1,7 @@
        1182  +
GET
        1183  +
/example/..
        1184  +
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
        1185  +
host:example.amazonaws.com
        1186  +
        1187  +
host
        1188  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1651   1189   
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
 1652   1190   
new file mode 100644
 1653   1191   
index 0000000..dfa0437
 1654         -
-- /dev/null
        1192  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1655   1193   
@@ -0,0 +1 @@
        1194  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1656   1195   
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
 1657   1196   
new file mode 100644
 1658   1197   
index 0000000..98367b1
 1659         -
-- /dev/null
        1198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1660   1199   
@@ -0,0 +1,3 @@
        1200  +
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
        1201  +
Host:example.amazonaws.com
        1202  +
 1661   1203   
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
 1662   1204   
new file mode 100644
 1663   1205   
index 0000000..f65dd66
 1664         -
-- /dev/null
        1206  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1665   1207   
@@ -0,0 +1,4 @@
        1208  +
AWS4-HMAC-SHA256
        1209  +
20150830T123600Z
        1210  +
20150830/us-east-1/service/aws4_request
        1211  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1666   1212   
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
 1667   1213   
similarity index 100%
 1668   1214   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1669   1215   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1670   1216   
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
 1671   1217   
new file mode 100644
 1672   1218   
index 0000000..0468d80
 1673         -
-- /dev/null
        1219  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1674   1220   
@@ -0,0 +1,12 @@
        1221  +
{
        1222  +
    "credentials": {
        1223  +
        "access_key_id": "AKIDEXAMPLE",
        1224  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1225  +
    },
        1226  +
    "expiration_in_seconds": 3600,
        1227  +
    "normalize": true,
        1228  +
    "region": "us-east-1",
        1229  +
    "service": "service",
        1230  +
    "sign_body": false,
        1231  +
    "timestamp": "2015-08-30T12:36:00Z"
        1232  +
}
              \
 No newline at end of file
 1675   1233   
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
 1676   1234   
similarity index 100%
 1677   1235   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1678   1236   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1679   1237   
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
 1680   1238   
new file mode 100644
 1681   1239   
index 0000000..87f295f
 1682         -
-- /dev/null
        1240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1683   1241   
@@ -0,0 +1 @@
        1242  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1684   1243   
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
 1685   1244   
new file mode 100644
 1686   1245   
index 0000000..99c8eeb
 1687         -
-- /dev/null
        1246  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1688   1247   
@@ -0,0 +1,5 @@
        1248  +
GET /./ HTTP/1.1
        1249  +
Host:example.amazonaws.com
        1250  +
X-Amz-Date:20150830T123600Z
        1251  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1252  +
 1689   1253   
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
 1690   1254   
similarity index 100%
 1691   1255   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1692   1256   
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
 1693   1257   
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
 1694   1258   
new file mode 100644
 1695   1259   
index 0000000..fb2420d
 1696         -
-- /dev/null
        1260  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1697   1261   
@@ -0,0 +1,7 @@
        1262  +
GET
        1263  +
/
        1264  +
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
        1265  +
host:example.amazonaws.com
        1266  +
        1267  +
host
        1268  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1698   1269   
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
 1699   1270   
new file mode 100644
 1700   1271   
index 0000000..da5c905
 1701         -
-- /dev/null
        1272  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1702   1273   
@@ -0,0 +1 @@
        1274  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1703   1275   
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
 1704   1276   
new file mode 100644
 1705   1277   
index 0000000..2e47f69
 1706         -
-- /dev/null
        1278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1707   1279   
@@ -0,0 +1,3 @@
        1280  +
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
        1281  +
Host:example.amazonaws.com
        1282  +
 1708   1283   
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
 1709   1284   
new file mode 100644
 1710   1285   
index 0000000..d837e67
 1711         -
-- /dev/null
        1286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1712   1287   
@@ -0,0 +1,4 @@
        1288  +
AWS4-HMAC-SHA256
        1289  +
20150830T123600Z
        1290  +
20150830/us-east-1/service/aws4_request
        1291  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1713   1292   
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
 1714   1293   
similarity index 100%
 1715   1294   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1716   1295   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1717   1296   
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
 1718   1297   
similarity index 99%
 1719   1298   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1720   1299   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1721   1300   
index afe367b..7bee5c7 100644
 1722         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
        1301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1723   1302   
@@ -1,12 +1,12 @@
 1724   1303   
{
 1725   1304   
    "credentials": {
 1726   1305   
        "access_key_id": "AKIDEXAMPLE",
 1727   1306   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1728   1307   
    },
 1729   1308   
    "expiration_in_seconds": 3600,
 1730   1309   
    "normalize": false,
 1731   1310   
    "region": "us-east-1",
 1732   1311   
    "service": "service",
 1733   1312   
    "sign_body": false,
 1734   1313   
    "timestamp": "2015-08-30T12:36:00Z"
 1735         -
}
        1314  +
}
              \
 No newline at end of file
 1736   1315   
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
 1737   1316   
new file mode 100644
 1738   1317   
index 0000000..5159048
 1739         -
-- /dev/null
        1318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1740   1319   
@@ -0,0 +1,8 @@
        1320  +
GET
        1321  +
/./
        1322  +
        1323  +
host:example.amazonaws.com
        1324  +
x-amz-date:20150830T123600Z
        1325  +
        1326  +
host;x-amz-date
        1327  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1741   1328   
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
 1742   1329   
new file mode 100644
 1743   1330   
index 0000000..b49ff0e
 1744         -
-- /dev/null
        1331  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1745   1332   
@@ -0,0 +1 @@
        1333  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1746   1334   
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
 1747   1335   
new file mode 100644
 1748   1336   
index 0000000..aeb1ffa
 1749         -
-- /dev/null
        1337  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1750   1338   
@@ -0,0 +1,5 @@
        1339  +
GET /./ HTTP/1.1
        1340  +
Host:example.amazonaws.com
        1341  +
X-Amz-Date:20150830T123600Z
        1342  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1343  +
 1751   1344   
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
 1752   1345   
new file mode 100644
 1753   1346   
index 0000000..b7d8caf
 1754         -
-- /dev/null
        1347  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1755   1348   
@@ -0,0 +1,4 @@
        1349  +
AWS4-HMAC-SHA256
        1350  +
20150830T123600Z
        1351  +
20150830/us-east-1/service/aws4_request
        1352  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1756   1353   
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
 1757   1354   
new file mode 100644
 1758   1355   
index 0000000..d4e029e
 1759         -
-- /dev/null
        1356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1760   1357   
@@ -0,0 +1,7 @@
        1358  +
GET
        1359  +
/./
        1360  +
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
        1361  +
host:example.amazonaws.com
        1362  +
        1363  +
host
        1364  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1761   1365   
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
 1762   1366   
new file mode 100644
 1763   1367   
index 0000000..fe8f4cc
 1764         -
-- /dev/null
        1368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1765   1369   
@@ -0,0 +1 @@
        1370  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1766   1371   
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
 1767   1372   
new file mode 100644
 1768   1373   
index 0000000..dcc4fc4
 1769         -
-- /dev/null
        1374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1770   1375   
@@ -0,0 +1,3 @@
        1376  +
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
        1377  +
Host:example.amazonaws.com
        1378  +
 1771   1379   
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
 1772   1380   
new file mode 100644
 1773   1381   
index 0000000..5fb3ada
 1774         -
-- /dev/null
        1382  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1775   1383   
@@ -0,0 +1,4 @@
        1384  +
AWS4-HMAC-SHA256
        1385  +
20150830T123600Z
        1386  +
20150830/us-east-1/service/aws4_request
        1387  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1776   1388   
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
 1777   1389   
similarity index 100%
 1778   1390   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1779   1391   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1780   1392   
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
 1781   1393   
new file mode 100644
 1782   1394   
index 0000000..0468d80
 1783         -
-- /dev/null
        1395  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1784   1396   
@@ -0,0 +1,12 @@
        1397  +
{
        1398  +
    "credentials": {
        1399  +
        "access_key_id": "AKIDEXAMPLE",
        1400  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1401  +
    },
        1402  +
    "expiration_in_seconds": 3600,
        1403  +
    "normalize": true,
        1404  +
    "region": "us-east-1",
        1405  +
    "service": "service",
        1406  +
    "sign_body": false,
        1407  +
    "timestamp": "2015-08-30T12:36:00Z"
        1408  +
}
              \
 No newline at end of file
 1785   1409   
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
 1786   1410   
similarity index 100%
 1787   1411   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1788   1412   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1789   1413   
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
 1790   1414   
new file mode 100644
 1791   1415   
index 0000000..87f295f
 1792         -
-- /dev/null
        1416  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1793   1417   
@@ -0,0 +1 @@
        1418  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1794   1419   
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
 1795   1420   
new file mode 100644
 1796   1421   
index 0000000..b91087b
 1797         -
-- /dev/null
        1422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1798   1423   
@@ -0,0 +1,5 @@
        1424  +
GET // HTTP/1.1
        1425  +
Host:example.amazonaws.com
        1426  +
X-Amz-Date:20150830T123600Z
        1427  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1428  +
 1799   1429   
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
 1800   1430   
similarity index 100%
 1801   1431   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1802   1432   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1803   1433   
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
 1804   1434   
new file mode 100644
 1805   1435   
index 0000000..fb2420d
 1806         -
-- /dev/null
        1436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1807   1437   
@@ -0,0 +1,7 @@
        1438  +
GET
        1439  +
/
        1440  +
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
        1441  +
host:example.amazonaws.com
        1442  +
        1443  +
host
        1444  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1808   1445   
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
 1809   1446   
new file mode 100644
 1810   1447   
index 0000000..da5c905
 1811         -
-- /dev/null
        1448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1812   1449   
@@ -0,0 +1 @@
        1450  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1813   1451   
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
 1814   1452   
new file mode 100644
 1815   1453   
index 0000000..0290ba4
 1816         -
-- /dev/null
        1454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1817   1455   
@@ -0,0 +1,3 @@
        1456  +
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
        1457  +
Host:example.amazonaws.com
        1458  +
 1818   1459   
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
 1819   1460   
new file mode 100644
 1820   1461   
index 0000000..d837e67
 1821         -
-- /dev/null
        1462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1822   1463   
@@ -0,0 +1,4 @@
        1464  +
AWS4-HMAC-SHA256
        1465  +
20150830T123600Z
        1466  +
20150830/us-east-1/service/aws4_request
        1467  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1823   1468   
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
 1824   1469   
similarity index 100%
 1825   1470   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1826   1471   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1827   1472   
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
 1828   1473   
new file mode 100644
 1829   1474   
index 0000000..0468d80
 1830         -
-- /dev/null
        1475  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1831   1476   
@@ -0,0 +1,12 @@
        1477  +
{
        1478  +
    "credentials": {
        1479  +
        "access_key_id": "AKIDEXAMPLE",
        1480  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1481  +
    },
        1482  +
    "expiration_in_seconds": 3600,
        1483  +
    "normalize": true,
        1484  +
    "region": "us-east-1",
        1485  +
    "service": "service",
        1486  +
    "sign_body": false,
        1487  +
    "timestamp": "2015-08-30T12:36:00Z"
        1488  +
}
              \
 No newline at end of file
 1832   1489   
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
 1833   1490   
similarity index 100%
 1834   1491   
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
 1835   1492   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1836   1493   
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
 1837   1494   
new file mode 100644
 1838   1495   
index 0000000..8f892bf
 1839         -
-- /dev/null
        1496  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1840   1497   
@@ -0,0 +1 @@
        1498  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1841   1499   
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
 1842   1500   
new file mode 100644
 1843   1501   
index 0000000..2a1895c
 1844         -
-- /dev/null
        1502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1845   1503   
@@ -0,0 +1,5 @@
        1504  +
GET /./example HTTP/1.1
        1505  +
Host:example.amazonaws.com
        1506  +
X-Amz-Date:20150830T123600Z
        1507  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1508  +
 1846   1509   
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
 1847   1510   
similarity index 100%
 1848   1511   
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
 1849   1512   
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
 1850   1513   
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
 1851   1514   
new file mode 100644
 1852   1515   
index 0000000..99dfc2a
 1853         -
-- /dev/null
        1516  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1854   1517   
@@ -0,0 +1,7 @@
        1518  +
GET
        1519  +
/example
        1520  +
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
        1521  +
host:example.amazonaws.com
        1522  +
        1523  +
host
        1524  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1855   1525   
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
 1856   1526   
new file mode 100644
 1857   1527   
index 0000000..fcd7a17
 1858         -
-- /dev/null
        1528  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1859   1529   
@@ -0,0 +1 @@
        1530  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1860   1531   
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
 1861   1532   
new file mode 100644
 1862   1533   
index 0000000..f671de2
 1863         -
-- /dev/null
        1534  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1864   1535   
@@ -0,0 +1,3 @@
        1536  +
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
        1537  +
Host:example.amazonaws.com
        1538  +
 1865   1539   
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
 1866   1540   
new file mode 100644
 1867   1541   
index 0000000..f8456dc
 1868         -
-- /dev/null
        1542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1869   1543   
@@ -0,0 +1,4 @@
        1544  +
AWS4-HMAC-SHA256
        1545  +
20150830T123600Z
        1546  +
20150830/us-east-1/service/aws4_request
        1547  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1870   1548   
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
 1871   1549   
similarity index 100%
 1872   1550   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1873   1551   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1874   1552   
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
 1875   1553   
similarity index 99%
 1876   1554   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1877   1555   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1878   1556   
index afe367b..7bee5c7 100644
 1879         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
        1557  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1880   1558   
@@ -1,12 +1,12 @@
 1881   1559   
{
 1882   1560   
    "credentials": {
 1883   1561   
        "access_key_id": "AKIDEXAMPLE",
 1884   1562   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1885   1563   
    },
 1886   1564   
    "expiration_in_seconds": 3600,
 1887   1565   
    "normalize": false,
 1888   1566   
    "region": "us-east-1",
 1889   1567   
    "service": "service",
 1890   1568   
    "sign_body": false,
 1891   1569   
    "timestamp": "2015-08-30T12:36:00Z"
 1892         -
}
        1570  +
}
              \
 No newline at end of file
 1893   1571   
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
 1894   1572   
new file mode 100644
 1895   1573   
index 0000000..36698c7
 1896         -
-- /dev/null
        1574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1897   1575   
@@ -0,0 +1,8 @@
        1576  +
GET
        1577  +
/./example
        1578  +
        1579  +
host:example.amazonaws.com
        1580  +
x-amz-date:20150830T123600Z
        1581  +
        1582  +
host;x-amz-date
        1583  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1898   1584   
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
 1899   1585   
new file mode 100644
 1900   1586   
index 0000000..4a4b8f2
 1901         -
-- /dev/null
        1587  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1902   1588   
@@ -0,0 +1 @@
        1589  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1903   1590   
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
 1904   1591   
new file mode 100644
 1905   1592   
index 0000000..d462bcd
 1906         -
-- /dev/null
        1593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1907   1594   
@@ -0,0 +1,5 @@
        1595  +
GET /./example HTTP/1.1
        1596  +
Host:example.amazonaws.com
        1597  +
X-Amz-Date:20150830T123600Z
        1598  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1599  +
 1908   1600   
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
 1909   1601   
new file mode 100644
 1910   1602   
index 0000000..8be78c9
 1911         -
-- /dev/null
        1603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1912   1604   
@@ -0,0 +1,4 @@
        1605  +
AWS4-HMAC-SHA256
        1606  +
20150830T123600Z
        1607  +
20150830/us-east-1/service/aws4_request
        1608  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1913   1609   
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
 1914   1610   
new file mode 100644
 1915   1611   
index 0000000..fe1103c
 1916         -
-- /dev/null
        1612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1917   1613   
@@ -0,0 +1,7 @@
        1614  +
GET
        1615  +
/./example
        1616  +
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
        1617  +
host:example.amazonaws.com
        1618  +
        1619  +
host
        1620  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1918   1621   
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
 1919   1622   
new file mode 100644
 1920   1623   
index 0000000..ce80762
 1921         -
-- /dev/null
        1624  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1922   1625   
@@ -0,0 +1 @@
        1626  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1923   1627   
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
 1924   1628   
new file mode 100644
 1925   1629   
index 0000000..30841a6
 1926         -
-- /dev/null
        1630  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1927   1631   
@@ -0,0 +1,3 @@
        1632  +
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
        1633  +
Host:example.amazonaws.com
        1634  +
 1928   1635   
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
 1929   1636   
new file mode 100644
 1930   1637   
index 0000000..5c66509
 1931         -
-- /dev/null
        1638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1932   1639   
@@ -0,0 +1,4 @@
        1640  +
AWS4-HMAC-SHA256
        1641  +
20150830T123600Z
        1642  +
20150830/us-east-1/service/aws4_request
        1643  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1933   1644   
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
 1934   1645   
similarity index 100%
 1935   1646   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1936   1647   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1937   1648   
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
 1938   1649   
new file mode 100644
 1939   1650   
index 0000000..7bee5c7
 1940         -
-- /dev/null
        1651  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1941   1652   
@@ -0,0 +1,12 @@
        1653  +
{
        1654  +
    "credentials": {
        1655  +
        "access_key_id": "AKIDEXAMPLE",
        1656  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1657  +
    },
        1658  +
    "expiration_in_seconds": 3600,
        1659  +
    "normalize": false,
        1660  +
    "region": "us-east-1",
        1661  +
    "service": "service",
        1662  +
    "sign_body": false,
        1663  +
    "timestamp": "2015-08-30T12:36:00Z"
        1664  +
}
              \
 No newline at end of file
 1942   1665   
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
 1943   1666   
new file mode 100644
 1944   1667   
index 0000000..5860c8a
 1945         -
-- /dev/null
        1668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1946   1669   
@@ -0,0 +1,8 @@
        1670  +
GET
        1671  +
//
        1672  +
        1673  +
host:example.amazonaws.com
        1674  +
x-amz-date:20150830T123600Z
        1675  +
        1676  +
host;x-amz-date
        1677  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1947   1678   
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
 1948   1679   
new file mode 100644
 1949   1680   
index 0000000..8310471
 1950         -
-- /dev/null
        1681  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1951   1682   
@@ -0,0 +1 @@
        1683  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1952   1684   
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
 1953   1685   
new file mode 100644
 1954   1686   
index 0000000..2a7afef
 1955         -
-- /dev/null
        1687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1956   1688   
@@ -0,0 +1,5 @@
        1689  +
GET // HTTP/1.1
        1690  +
Host:example.amazonaws.com
        1691  +
X-Amz-Date:20150830T123600Z
        1692  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1693  +
 1957   1694   
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
 1958   1695   
new file mode 100644
 1959   1696   
index 0000000..06059dd
 1960         -
-- /dev/null
        1697  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1961   1698   
@@ -0,0 +1,4 @@
        1699  +
AWS4-HMAC-SHA256
        1700  +
20150830T123600Z
        1701  +
20150830/us-east-1/service/aws4_request
        1702  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1962   1703   
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
 1963   1704   
new file mode 100644
 1964   1705   
index 0000000..6d63aef
 1965         -
-- /dev/null
        1706  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1966   1707   
@@ -0,0 +1,7 @@
        1708  +
GET
        1709  +
//
        1710  +
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
        1711  +
host:example.amazonaws.com
        1712  +
        1713  +
host
        1714  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1967   1715   
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
 1968   1716   
new file mode 100644
 1969   1717   
index 0000000..e5b7b6c
 1970         -
-- /dev/null
        1718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1971   1719   
@@ -0,0 +1 @@
        1720  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1972   1721   
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
 1973   1722   
new file mode 100644
 1974   1723   
index 0000000..46fe3fd
 1975         -
-- /dev/null
        1724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1976   1725   
@@ -0,0 +1,3 @@
        1726  +
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
        1727  +
Host:example.amazonaws.com
        1728  +
 1977   1729   
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
 1978   1730   
new file mode 100644
 1979   1731   
index 0000000..ea79940
 1980         -
-- /dev/null
        1732  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1981   1733   
@@ -0,0 +1,4 @@
        1734  +
AWS4-HMAC-SHA256
        1735  +
20150830T123600Z
        1736  +
20150830/us-east-1/service/aws4_request
        1737  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1982   1738   
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
 1983   1739   
similarity index 100%
 1984   1740   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1985   1741   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1986   1742   
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
 1987   1743   
new file mode 100644
 1988   1744   
index 0000000..0468d80
 1989         -
-- /dev/null
        1745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1990   1746   
@@ -0,0 +1,12 @@
        1747  +
{
        1748  +
    "credentials": {
        1749  +
        "access_key_id": "AKIDEXAMPLE",
        1750  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1751  +
    },
        1752  +
    "expiration_in_seconds": 3600,
        1753  +
    "normalize": true,
        1754  +
    "region": "us-east-1",
        1755  +
    "service": "service",
        1756  +
    "sign_body": false,
        1757  +
    "timestamp": "2015-08-30T12:36:00Z"
        1758  +
}
              \
 No newline at end of file
 1991   1759   
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
 1992   1760   
similarity index 100%
 1993   1761   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1994   1762   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1995   1763   
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
 1996   1764   
new file mode 100644
 1997   1765   
index 0000000..71c7bac
 1998         -
-- /dev/null
        1766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1999   1767   
@@ -0,0 +1 @@
        1768  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 2000   1769   
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
 2001   1770   
new file mode 100644
 2002   1771   
index 0000000..0add1f1
 2003         -
-- /dev/null
        1772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 2004   1773   
@@ -0,0 +1,5 @@
        1774  +
GET //example// HTTP/1.1
        1775  +
Host:example.amazonaws.com
        1776  +
X-Amz-Date:20150830T123600Z
        1777  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1778  +
 2005   1779   
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
 2006   1780   
similarity index 100%
 2007   1781   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 2008   1782   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 2009   1783   
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
 2010   1784   
new file mode 100644
 2011   1785   
index 0000000..ce72510
 2012         -
-- /dev/null
        1786  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 2013   1787   
@@ -0,0 +1,7 @@
        1788  +
GET
        1789  +
/example/
        1790  +
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
        1791  +
host:example.amazonaws.com
        1792  +
        1793  +
host
        1794  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2014   1795   
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
 2015   1796   
new file mode 100644
 2016   1797   
index 0000000..265f387
 2017         -
-- /dev/null
        1798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 2018   1799   
@@ -0,0 +1 @@
        1800  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 2019   1801   
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
 2020   1802   
new file mode 100644
 2021   1803   
index 0000000..e1fcb2e
 2022         -
-- /dev/null
        1804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 2023   1805   
@@ -0,0 +1,3 @@
        1806  +
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
        1807  +
Host:example.amazonaws.com
        1808  +
 2024   1809   
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
 2025   1810   
new file mode 100644
 2026   1811   
index 0000000..a14de61
 2027         -
-- /dev/null
        1812  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 2028   1813   
@@ -0,0 +1,4 @@
        1814  +
AWS4-HMAC-SHA256
        1815  +
20150830T123600Z
        1816  +
20150830/us-east-1/service/aws4_request
        1817  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 2029   1818   
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
 2030   1819   
similarity index 100%
 2031   1820   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 2032   1821   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 2033   1822   
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
 2034   1823   
new file mode 100644
 2035   1824   
index 0000000..7bee5c7
 2036         -
-- /dev/null
        1825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 2037   1826   
@@ -0,0 +1,12 @@
        1827  +
{
        1828  +
    "credentials": {
        1829  +
        "access_key_id": "AKIDEXAMPLE",
        1830  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1831  +
    },
        1832  +
    "expiration_in_seconds": 3600,
        1833  +
    "normalize": false,
        1834  +
    "region": "us-east-1",
        1835  +
    "service": "service",
        1836  +
    "sign_body": false,
        1837  +
    "timestamp": "2015-08-30T12:36:00Z"
        1838  +
}
              \
 No newline at end of file
 2038   1839   
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
 2039   1840   
new file mode 100644
 2040   1841   
index 0000000..dfffaaf
 2041         -
-- /dev/null
        1842  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 2042   1843   
@@ -0,0 +1,8 @@
        1844  +
GET
        1845  +
//example//
        1846  +
        1847  +
host:example.amazonaws.com
        1848  +
x-amz-date:20150830T123600Z
        1849  +
        1850  +
host;x-amz-date
        1851  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2043   1852   
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
 2044   1853   
new file mode 100644
 2045   1854   
index 0000000..edbcc0d
 2046         -
-- /dev/null
        1855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 2047   1856   
@@ -0,0 +1 @@
        1857  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 2048   1858   
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
 2049   1859   
new file mode 100644
 2050   1860   
index 0000000..4cc12dd
 2051         -
-- /dev/null
        1861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 2052   1862   
@@ -0,0 +1,5 @@
        1863  +
GET //example// HTTP/1.1
        1864  +
Host:example.amazonaws.com
        1865  +
X-Amz-Date:20150830T123600Z
        1866  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1867  +
 2053   1868   
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
 2054   1869   
new file mode 100644
 2055   1870   
index 0000000..3eba390
 2056         -
-- /dev/null
        1871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 2057   1872   
@@ -0,0 +1,4 @@
        1873  +
AWS4-HMAC-SHA256
        1874  +
20150830T123600Z
        1875  +
20150830/us-east-1/service/aws4_request
        1876  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 2058   1877   
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
 2059   1878   
new file mode 100644
 2060   1879   
index 0000000..f7844e3
 2061         -
-- /dev/null
        1880  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 2062   1881   
@@ -0,0 +1,7 @@
        1882  +
GET
        1883  +
//example//
        1884  +
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
        1885  +
host:example.amazonaws.com
        1886  +
        1887  +
host
        1888  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2063   1889   
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
 2064   1890   
new file mode 100644
 2065   1891   
index 0000000..a8d6b96
 2066         -
-- /dev/null
        1892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 2067   1893   
@@ -0,0 +1 @@
        1894  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 2068   1895   
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
 2069   1896   
new file mode 100644
 2070   1897   
index 0000000..a8322c6
 2071         -
-- /dev/null
        1898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 2072   1899   
@@ -0,0 +1,3 @@
        1900  +
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
        1901  +
Host:example.amazonaws.com
        1902  +
 2073   1903   
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
 2074   1904   
new file mode 100644
 2075   1905   
index 0000000..068724d
 2076         -
-- /dev/null
        1906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 2077   1907   
@@ -0,0 +1,4 @@
        1908  +
AWS4-HMAC-SHA256
        1909  +
20150830T123600Z
        1910  +
20150830/us-east-1/service/aws4_request
        1911  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 2078   1912   
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
 2079   1913   
similarity index 100%
 2080   1914   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 2081   1915   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 2082   1916   
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
 2083   1917   
new file mode 100644
 2084   1918   
index 0000000..0468d80
 2085         -
-- /dev/null
        1919  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 2086   1920   
@@ -0,0 +1,12 @@
        1921  +
{
        1922  +
    "credentials": {
        1923  +
        "access_key_id": "AKIDEXAMPLE",
        1924  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1925  +
    },
        1926  +
    "expiration_in_seconds": 3600,
        1927  +
    "normalize": true,
        1928  +
    "region": "us-east-1",
        1929  +
    "service": "service",
        1930  +
    "sign_body": false,
        1931  +
    "timestamp": "2015-08-30T12:36:00Z"
        1932  +
}
              \
 No newline at end of file
 2087   1933   
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
 2088   1934   
similarity index 100%
 2089   1935   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 2090   1936   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 2091   1937   
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
 2092   1938   
new file mode 100644
 2093   1939   
index 0000000..f63892b
 2094         -
-- /dev/null
        1940  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 2095   1941   
@@ -0,0 +1 @@
        1942  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2096   1943   
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
 2097   1944   
new file mode 100644
 2098   1945   
index 0000000..19cd5cb
 2099         -
-- /dev/null
        1946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 2100   1947   
@@ -0,0 +1,5 @@
        1948  +
GET /example space/ HTTP/1.1
        1949  +
Host:example.amazonaws.com
        1950  +
X-Amz-Date:20150830T123600Z
        1951  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1952  +
 2101   1953   
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
 2102   1954   
similarity index 100%
 2103   1955   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 2104   1956   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 2105   1957   
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
 2106   1958   
new file mode 100644
 2107   1959   
index 0000000..fa3d3e2
 2108         -
-- /dev/null
        1960  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 2109   1961   
@@ -0,0 +1,7 @@
        1962  +
GET
        1963  +
/example%20space/
        1964  +
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
        1965  +
host:example.amazonaws.com
        1966  +
        1967  +
host
        1968  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2110   1969   
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
 2111   1970   
new file mode 100644
 2112   1971   
index 0000000..5b2e204
 2113         -
-- /dev/null
        1972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 2114   1973   
@@ -0,0 +1 @@
        1974  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2115   1975   
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
 2116   1976   
new file mode 100644
 2117   1977   
index 0000000..93ca1d0
 2118         -
-- /dev/null
        1978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 2119   1979   
@@ -0,0 +1,3 @@
        1980  +
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
        1981  +
Host:example.amazonaws.com
        1982  +
 2120   1983   
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
 2121   1984   
new file mode 100644
 2122   1985   
index 0000000..b4cb789
 2123         -
-- /dev/null
        1986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 2124   1987   
@@ -0,0 +1,4 @@
        1988  +
AWS4-HMAC-SHA256
        1989  +
20150830T123600Z
        1990  +
20150830/us-east-1/service/aws4_request
        1991  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2125   1992   
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
 2126   1993   
new file mode 100644
 2127   1994   
index 0000000..860a277
 2128         -
-- /dev/null
        1995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 2129   1996   
@@ -0,0 +1,2 @@
        1997  +
GET /example%20space/ HTTP/1.1
        1998  +
Host:example.amazonaws.com
 2130   1999   
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
 2131   2000   
new file mode 100644
 2132   2001   
index 0000000..7bee5c7
 2133         -
-- /dev/null
        2002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 2134   2003   
@@ -0,0 +1,12 @@
        2004  +
{
        2005  +
    "credentials": {
        2006  +
        "access_key_id": "AKIDEXAMPLE",
        2007  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2008  +
    },
        2009  +
    "expiration_in_seconds": 3600,
        2010  +
    "normalize": false,
        2011  +
    "region": "us-east-1",
        2012  +
    "service": "service",
        2013  +
    "sign_body": false,
        2014  +
    "timestamp": "2015-08-30T12:36:00Z"
        2015  +
}
              \
 No newline at end of file
 2135   2016   
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
 2136   2017   
similarity index 66%
 2137   2018   
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
 2138   2019   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2139   2020   
index 71dc981..124a709 100644
 2140         -
-- 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
        2021  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2141   2022   
@@ -1,9 +1,8 @@
 2142         -
POST
 2143         -
/
        2023  +
GET
        2024  +
/example%20space/
 2144   2025   
 2145         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 2146   2026   
host:example.amazonaws.com
 2147   2027   
x-amz-date:20150830T123600Z
 2148   2028   
 2149   2029   
host;x-amz-date
 2150   2030   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2151   2031   
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
 2152   2032   
new file mode 100644
 2153   2033   
index 0000000..f63892b
 2154         -
-- /dev/null
        2034  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 2155   2035   
@@ -0,0 +1 @@
        2036  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2156   2037   
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
 2157   2038   
new file mode 100644
 2158   2039   
index 0000000..19cd5cb
 2159         -
-- /dev/null
        2040  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 2160   2041   
@@ -0,0 +1,5 @@
        2042  +
GET /example space/ HTTP/1.1
        2043  +
Host:example.amazonaws.com
        2044  +
X-Amz-Date:20150830T123600Z
        2045  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        2046  +
 2161   2047   
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
 2162   2048   
new file mode 100644
 2163   2049   
index 0000000..a633f0c
 2164         -
-- /dev/null
        2050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 2165   2051   
@@ -0,0 +1,4 @@
        2052  +
AWS4-HMAC-SHA256
        2053  +
20150830T123600Z
        2054  +
20150830/us-east-1/service/aws4_request
        2055  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 2166   2056   
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
 2167   2057   
new file mode 100644
 2168   2058   
index 0000000..fa3d3e2
 2169         -
-- /dev/null
        2059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 2170   2060   
@@ -0,0 +1,7 @@
        2061  +
GET
        2062  +
/example%20space/
        2063  +
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
        2064  +
host:example.amazonaws.com
        2065  +
        2066  +
host
        2067  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2171   2068   
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
 2172   2069   
new file mode 100644
 2173   2070   
index 0000000..5b2e204
 2174         -
-- /dev/null
        2071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 2175   2072   
@@ -0,0 +1 @@
        2073  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2176   2074   
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
 2177   2075   
new file mode 100644
 2178   2076   
index 0000000..93ca1d0
 2179         -
-- /dev/null
        2077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 2180   2078   
@@ -0,0 +1,3 @@
        2079  +
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
        2080  +
Host:example.amazonaws.com
        2081  +
 2181   2082   
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
 2182   2083   
new file mode 100644
 2183   2084   
index 0000000..b4cb789
 2184         -
-- /dev/null
        2085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 2185   2086   
@@ -0,0 +1,4 @@
        2087  +
AWS4-HMAC-SHA256
        2088  +
20150830T123600Z
        2089  +
20150830/us-east-1/service/aws4_request
        2090  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2186   2091   
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
 2187   2092   
similarity index 67%
 2188   2093   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 2189   2094   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2190   2095   
index b7d5e8b..ab509ab 100644
 2191         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        2096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2192   2097   
@@ -1,3 +1,2 @@
 2193   2098   
GET /example space/ HTTP/1.1
 2194   2099   
Host:example.amazonaws.com
 2195         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2196   2100   
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
 2197   2101   
new file mode 100644
 2198   2102   
index 0000000..0468d80
 2199         -
-- /dev/null
        2103  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 2200   2104   
@@ -0,0 +1,12 @@
        2105  +
{
        2106  +
    "credentials": {
        2107  +
        "access_key_id": "AKIDEXAMPLE",
        2108  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2109  +
    },
        2110  +
    "expiration_in_seconds": 3600,
        2111  +
    "normalize": true,
        2112  +
    "region": "us-east-1",
        2113  +
    "service": "service",
        2114  +
    "sign_body": false,
        2115  +
    "timestamp": "2015-08-30T12:36:00Z"
        2116  +
}
              \
 No newline at end of file
 2201   2117   
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
 2202   2118   
similarity index 100%
 2203   2119   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 2204   2120   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2205   2121   
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
 2206   2122   
new file mode 100644
 2207   2123   
index 0000000..e503354
 2208         -
-- /dev/null
        2124  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2209   2125   
@@ -0,0 +1 @@
        2126  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 2210   2127   
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
 2211   2128   
new file mode 100644
 2212   2129   
index 0000000..4367892
 2213         -
-- /dev/null
        2130  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2214   2131   
@@ -0,0 +1,5 @@
        2132  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        2133  +
Host:example.amazonaws.com
        2134  +
X-Amz-Date:20150830T123600Z
        2135  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        2136  +
 2215   2137   
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
 2216   2138   
similarity index 100%
 2217   2139   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 2218   2140   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2219   2141   
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
 2220   2142   
new file mode 100644
 2221   2143   
index 0000000..d7f0696
 2222         -
-- /dev/null
        2144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2223   2145   
@@ -0,0 +1,7 @@
        2146  +
GET
        2147  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        2148  +
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
        2149  +
host:example.amazonaws.com
        2150  +
        2151  +
host
        2152  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2224   2153   
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
 2225   2154   
new file mode 100644
 2226   2155   
index 0000000..509e972
 2227         -
-- /dev/null
        2156  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2228   2157   
@@ -0,0 +1 @@
        2158  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 2229   2159   
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
 2230   2160   
new file mode 100644
 2231   2161   
index 0000000..79aad36
 2232         -
-- /dev/null
        2162  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2233   2163   
@@ -0,0 +1,3 @@
        2164  +
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
        2165  +
Host:example.amazonaws.com
        2166  +
 2234   2167   
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
 2235   2168   
new file mode 100644
 2236   2169   
index 0000000..e8068b3
 2237         -
-- /dev/null
        2170  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2238   2171   
@@ -0,0 +1,4 @@
        2172  +
AWS4-HMAC-SHA256
        2173  +
20150830T123600Z
        2174  +
20150830/us-east-1/service/aws4_request
        2175  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 2239   2176   
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
 2240   2177   
similarity index 100%
 2241   2178   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 2242   2179   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2243   2180   
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
 2244   2181   
new file mode 100644
 2245   2182   
index 0000000..0468d80
 2246         -
-- /dev/null
        2183  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2247   2184   
@@ -0,0 +1,12 @@
        2185  +
{
        2186  +
    "credentials": {
        2187  +
        "access_key_id": "AKIDEXAMPLE",
        2188  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2189  +
    },
        2190  +
    "expiration_in_seconds": 3600,
        2191  +
    "normalize": true,
        2192  +
    "region": "us-east-1",
        2193  +
    "service": "service",
        2194  +
    "sign_body": false,
        2195  +
    "timestamp": "2015-08-30T12:36:00Z"
        2196  +
}
              \
 No newline at end of file
 2248   2197   
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
 2249   2198   
similarity index 100%
 2250   2199   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 2251   2200   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2252   2201   
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
 2253   2202   
new file mode 100644
 2254   2203   
index 0000000..9a13676
 2255         -
-- /dev/null
        2204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2256   2205   
@@ -0,0 +1 @@
        2206  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 2257   2207   
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
 2258   2208   
new file mode 100644
 2259   2209   
index 0000000..5aaf47c
 2260         -
-- /dev/null
        2210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2261   2211   
@@ -0,0 +1,5 @@
        2212  +
GET /ሴ HTTP/1.1
        2213  +
Host:example.amazonaws.com
        2214  +
X-Amz-Date:20150830T123600Z
        2215  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2216  +
 2262   2217   
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
 2263   2218   
similarity index 100%
 2264   2219   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 2265   2220   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2266   2221   
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
 2267   2222   
new file mode 100644
 2268   2223   
index 0000000..bdb77c9
 2269         -
-- /dev/null
        2224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2270   2225   
@@ -0,0 +1,7 @@
        2226  +
GET
        2227  +
/%E1%88%B4
        2228  +
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
        2229  +
host:example.amazonaws.com
        2230  +
        2231  +
host
        2232  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2271   2233   
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
 2272   2234   
new file mode 100644
 2273   2235   
index 0000000..21342b3
 2274         -
-- /dev/null
        2236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2275   2237   
@@ -0,0 +1 @@
        2238  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2276   2239   
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
 2277   2240   
new file mode 100644
 2278   2241   
index 0000000..368c2ff
 2279         -
-- /dev/null
        2242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2280   2243   
@@ -0,0 +1,3 @@
        2244  +
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
        2245  +
Host:example.amazonaws.com
        2246  +
 2281   2247   
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
 2282   2248   
new file mode 100644
 2283   2249   
index 0000000..56b8fbf
 2284         -
-- /dev/null
        2250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2285   2251   
@@ -0,0 +1,4 @@
        2252  +
AWS4-HMAC-SHA256
        2253  +
20150830T123600Z
        2254  +
20150830/us-east-1/service/aws4_request
        2255  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2286   2256   
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
 2287   2257   
similarity index 62%
 2288   2258   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2289   2259   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2290   2260   
index da4808d..9e273f6 100644
 2291         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2292   2262   
@@ -1,3 +1,2 @@
 2293   2263   
GET /ሴ HTTP/1.1
 2294   2264   
Host:example.amazonaws.com
 2295         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2296   2265   
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
 2297   2266   
new file mode 100644
 2298   2267   
index 0000000..0468d80
 2299         -
-- /dev/null
        2268  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2300   2269   
@@ -0,0 +1,12 @@
        2270  +
{
        2271  +
    "credentials": {
        2272  +
        "access_key_id": "AKIDEXAMPLE",
        2273  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2274  +
    },
        2275  +
    "expiration_in_seconds": 3600,
        2276  +
    "normalize": true,
        2277  +
    "region": "us-east-1",
        2278  +
    "service": "service",
        2279  +
    "sign_body": false,
        2280  +
    "timestamp": "2015-08-30T12:36:00Z"
        2281  +
}
              \
 No newline at end of file
 2301   2282   
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
 2302   2283   
similarity index 100%
 2303   2284   
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
 2304   2285   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2305   2286   
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
 2306   2287   
new file mode 100644
 2307   2288   
index 0000000..d7f1c1c
 2308         -
-- /dev/null
        2289  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2309   2290   
@@ -0,0 +1 @@
        2291  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2310   2292   
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
 2311   2293   
new file mode 100644
 2312   2294   
index 0000000..1c60790
 2313         -
-- /dev/null
        2295  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2314   2296   
@@ -0,0 +1,5 @@
        2297  +
GET /?Param1=value1 HTTP/1.1
        2298  +
Host:example.amazonaws.com
        2299  +
X-Amz-Date:20150830T123600Z
        2300  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2301  +
 2315   2302   
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
 2316   2303   
similarity index 100%
 2317   2304   
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
 2318   2305   
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
 2319   2306   
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
 2320   2307   
new file mode 100644
 2321   2308   
index 0000000..6a823ed
 2322         -
-- /dev/null
        2309  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2323   2310   
@@ -0,0 +1,7 @@
        2311  +
GET
        2312  +
/
        2313  +
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
        2314  +
host:example.amazonaws.com
        2315  +
        2316  +
host
        2317  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2324   2318   
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
 2325   2319   
new file mode 100644
 2326   2320   
index 0000000..8c77136
 2327         -
-- /dev/null
        2321  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2328   2322   
@@ -0,0 +1 @@
        2323  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2329   2324   
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
 2330   2325   
new file mode 100644
 2331   2326   
index 0000000..2d337d8
 2332         -
-- /dev/null
        2327  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2333   2328   
@@ -0,0 +1,3 @@
        2329  +
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
        2330  +
Host:example.amazonaws.com
        2331  +
 2334   2332   
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
 2335   2333   
new file mode 100644
 2336   2334   
index 0000000..191a484
 2337         -
-- /dev/null
        2335  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2338   2336   
@@ -0,0 +1,4 @@
        2337  +
AWS4-HMAC-SHA256
        2338  +
20150830T123600Z
        2339  +
20150830/us-east-1/service/aws4_request
        2340  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2339   2341   
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
 2340   2342   
similarity index 100%
 2341   2343   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2342   2344   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2343   2345   
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
 2344   2346   
new file mode 100644
 2345   2347   
index 0000000..0468d80
 2346         -
-- /dev/null
        2348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2347   2349   
@@ -0,0 +1,12 @@
        2350  +
{
        2351  +
    "credentials": {
        2352  +
        "access_key_id": "AKIDEXAMPLE",
        2353  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2354  +
    },
        2355  +
    "expiration_in_seconds": 3600,
        2356  +
    "normalize": true,
        2357  +
    "region": "us-east-1",
        2358  +
    "service": "service",
        2359  +
    "sign_body": false,
        2360  +
    "timestamp": "2015-08-30T12:36:00Z"
        2361  +
}
              \
 No newline at end of file
 2348   2362   
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
 2349   2363   
new file mode 100644
 2350   2364   
index 0000000..0c8ba21
 2351         -
-- /dev/null
        2365  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2352   2366   
@@ -0,0 +1,8 @@
        2367  +
GET
        2368  +
/
        2369  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2370  +
host:example.amazonaws.com
        2371  +
x-amz-date:20150830T123600Z
        2372  +
        2373  +
host;x-amz-date
        2374  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2353   2375   
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
 2354   2376   
new file mode 100644
 2355   2377   
index 0000000..9ab65ed
 2356         -
-- /dev/null
        2378  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2357   2379   
@@ -0,0 +1 @@
        2380  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2358   2381   
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
 2359   2382   
new file mode 100644
 2360   2383   
index 0000000..0bcdf98
 2361         -
-- /dev/null
        2384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2362   2385   
@@ -0,0 +1,5 @@
        2386  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2387  +
Host:example.amazonaws.com
        2388  +
X-Amz-Date:20150830T123600Z
        2389  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2390  +
 2363   2391   
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
 2364   2392   
new file mode 100644
 2365   2393   
index 0000000..bf674ad
 2366         -
-- /dev/null
        2394  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2367   2395   
@@ -0,0 +1,4 @@
        2396  +
AWS4-HMAC-SHA256
        2397  +
20150830T123600Z
        2398  +
20150830/us-east-1/service/aws4_request
        2399  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2368   2400   
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
 2369   2401   
new file mode 100644
 2370   2402   
index 0000000..3f590a4
 2371         -
-- /dev/null
        2403  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2372   2404   
@@ -0,0 +1,7 @@
        2405  +
GET
        2406  +
/
        2407  +
%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
        2408  +
host:example.amazonaws.com
        2409  +
        2410  +
host
        2411  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2373   2412   
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
 2374   2413   
new file mode 100644
 2375   2414   
index 0000000..e225eab
 2376         -
-- /dev/null
        2415  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2377   2416   
@@ -0,0 +1 @@
        2417  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2378   2418   
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
 2379   2419   
new file mode 100644
 2380   2420   
index 0000000..6206719
 2381         -
-- /dev/null
        2421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2382   2422   
@@ -0,0 +1,3 @@
        2423  +
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
        2424  +
Host:example.amazonaws.com
        2425  +
 2383   2426   
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
 2384   2427   
new file mode 100644
 2385   2428   
index 0000000..81a4210
 2386         -
-- /dev/null
        2429  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2387   2430   
@@ -0,0 +1,4 @@
        2431  +
AWS4-HMAC-SHA256
        2432  +
20150830T123600Z
        2433  +
20150830/us-east-1/service/aws4_request
        2434  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2388   2435   
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
 2389   2436   
new file mode 100644
 2390   2437   
index 0000000..368c6e3
 2391         -
-- /dev/null
        2438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2392   2439   
@@ -0,0 +1,2 @@
        2440  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2441  +
Host:example.amazonaws.com
 2393   2442   
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
 2394   2443   
new file mode 100644
 2395   2444   
index 0000000..0468d80
 2396         -
-- /dev/null
        2445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2397   2446   
@@ -0,0 +1,12 @@
        2447  +
{
        2448  +
    "credentials": {
        2449  +
        "access_key_id": "AKIDEXAMPLE",
        2450  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2451  +
    },
        2452  +
    "expiration_in_seconds": 3600,
        2453  +
    "normalize": true,
        2454  +
    "region": "us-east-1",
        2455  +
    "service": "service",
        2456  +
    "sign_body": false,
        2457  +
    "timestamp": "2015-08-30T12:36:00Z"
        2458  +
}
              \
 No newline at end of file
 2398   2459   
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
 2399   2460   
similarity index 100%
 2400   2461   
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
 2401   2462   
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
 2402   2463   
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
 2403   2464   
new file mode 100644
 2404   2465   
index 0000000..6a8cb9d
 2405         -
-- /dev/null
        2466  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2406   2467   
@@ -0,0 +1 @@
        2468  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2407   2469   
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
 2408   2470   
new file mode 100644
 2409   2471   
index 0000000..f78a9d2
 2410         -
-- /dev/null
        2472  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2411   2473   
@@ -0,0 +1,5 @@
        2474  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2475  +
Host:example.amazonaws.com
        2476  +
X-Amz-Date:20150830T123600Z
        2477  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2478  +
 2412   2479   
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
 2413   2480   
similarity index 100%
 2414   2481   
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
 2415   2482   
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
 2416   2483   
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
 2417   2484   
new file mode 100644
 2418   2485   
index 0000000..a6e1bc7
 2419         -
-- /dev/null
        2486  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2420   2487   
@@ -0,0 +1,7 @@
        2488  +
GET
        2489  +
/
        2490  +
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
        2491  +
host:example.amazonaws.com
        2492  +
        2493  +
host
        2494  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2421   2495   
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
 2422   2496   
new file mode 100644
 2423   2497   
index 0000000..d6e6a88
 2424         -
-- /dev/null
        2498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2425   2499   
@@ -0,0 +1 @@
        2500  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2426   2501   
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
 2427   2502   
new file mode 100644
 2428   2503   
index 0000000..538e2f0
 2429         -
-- /dev/null
        2504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2430   2505   
@@ -0,0 +1,3 @@
        2506  +
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
        2507  +
Host:example.amazonaws.com
        2508  +
 2431   2509   
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
 2432   2510   
new file mode 100644
 2433   2511   
index 0000000..e696085
 2434         -
-- /dev/null
        2512  +
++ 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
 2435   2513   
@@ -0,0 +1,4 @@
        2514  +
AWS4-HMAC-SHA256
        2515  +
20150830T123600Z
        2516  +
20150830/us-east-1/service/aws4_request
        2517  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2436   2518   
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
 2437   2519   
similarity index 100%
 2438   2520   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2439   2521   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2440   2522   
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
 2441   2523   
new file mode 100644
 2442   2524   
index 0000000..0468d80
 2443         -
-- /dev/null
        2525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2444   2526   
@@ -0,0 +1,12 @@
        2527  +
{
        2528  +
    "credentials": {
        2529  +
        "access_key_id": "AKIDEXAMPLE",
        2530  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2531  +
    },
        2532  +
    "expiration_in_seconds": 3600,
        2533  +
    "normalize": true,
        2534  +
    "region": "us-east-1",
        2535  +
    "service": "service",
        2536  +
    "sign_body": false,
        2537  +
    "timestamp": "2015-08-30T12:36:00Z"
        2538  +
}
              \
 No newline at end of file
 2445   2539   
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
 2446   2540   
similarity index 100%
 2447   2541   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2448   2542   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2449   2543   
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
 2450   2544   
new file mode 100644
 2451   2545   
index 0000000..876a64b
 2452         -
-- /dev/null
        2546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2453   2547   
@@ -0,0 +1 @@
        2548  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2454   2549   
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
 2455   2550   
similarity index 50%
 2456   2551   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2457   2552   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2458   2553   
index ba1ef40..9d0d993 100644
 2459         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2460   2555   
@@ -1,4 +1,5 @@
 2461   2556   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2462   2557   
Host:example.amazonaws.com
 2463   2558   
X-Amz-Date:20150830T123600Z
 2464         -
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
        2559  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2560  +
 2465   2561   
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
 2466   2562   
similarity index 100%
 2467   2563   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2468   2564   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2469   2565   
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
 2470   2566   
new file mode 100644
 2471   2567   
index 0000000..a1bac59
 2472         -
-- /dev/null
        2568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2473   2569   
@@ -0,0 +1,7 @@
        2570  +
GET
        2571  +
/
        2572  +
-._~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
        2573  +
host:example.amazonaws.com
        2574  +
        2575  +
host
        2576  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2474   2577   
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
 2475   2578   
new file mode 100644
 2476   2579   
index 0000000..41881e9
 2477         -
-- /dev/null
        2580  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2478   2581   
@@ -0,0 +1 @@
        2582  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2479   2583   
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
 2480   2584   
new file mode 100644
 2481   2585   
index 0000000..3179076
 2482         -
-- /dev/null
        2586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2483   2587   
@@ -0,0 +1,3 @@
        2588  +
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
        2589  +
Host:example.amazonaws.com
        2590  +
 2484   2591   
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
 2485   2592   
new file mode 100644
 2486   2593   
index 0000000..6d675fc
 2487         -
-- /dev/null
        2594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2488   2595   
@@ -0,0 +1,4 @@
        2596  +
AWS4-HMAC-SHA256
        2597  +
20150830T123600Z
        2598  +
20150830/us-east-1/service/aws4_request
        2599  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2489   2600   
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
 2490   2601   
similarity index 100%
 2491   2602   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2492   2603   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2493   2604   
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
 2494   2605   
new file mode 100644
 2495   2606   
index 0000000..0468d80
 2496         -
-- /dev/null
        2607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2497   2608   
@@ -0,0 +1,12 @@
        2609  +
{
        2610  +
    "credentials": {
        2611  +
        "access_key_id": "AKIDEXAMPLE",
        2612  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2613  +
    },
        2614  +
    "expiration_in_seconds": 3600,
        2615  +
    "normalize": true,
        2616  +
    "region": "us-east-1",
        2617  +
    "service": "service",
        2618  +
    "sign_body": false,
        2619  +
    "timestamp": "2015-08-30T12:36:00Z"
        2620  +
}
              \
 No newline at end of file
 2498   2621   
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
 2499   2622   
similarity index 100%
 2500   2623   
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
 2501   2624   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2502   2625   
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
 2503   2626   
new file mode 100644
 2504   2627   
index 0000000..87f295f
 2505         -
-- /dev/null
        2628  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2506   2629   
@@ -0,0 +1 @@
        2630  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2507   2631   
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
 2508   2632   
new file mode 100644
 2509   2633   
index 0000000..36b86e7
 2510         -
-- /dev/null
        2634  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2511   2635   
@@ -0,0 +1,5 @@
        2636  +
GET / HTTP/1.1
        2637  +
Host:example.amazonaws.com
        2638  +
X-Amz-Date:20150830T123600Z
        2639  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2640  +
 2512   2641   
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
 2513   2642   
similarity index 100%
 2514   2643   
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
 2515   2644   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2516   2645   
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
 2517   2646   
new file mode 100644
 2518   2647   
index 0000000..fb2420d
 2519         -
-- /dev/null
        2648  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2520   2649   
@@ -0,0 +1,7 @@
        2650  +
GET
        2651  +
/
        2652  +
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
        2653  +
host:example.amazonaws.com
        2654  +
        2655  +
host
        2656  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2521   2657   
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
 2522   2658   
new file mode 100644
 2523   2659   
index 0000000..da5c905
 2524         -
-- /dev/null
        2660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2525   2661   
@@ -0,0 +1 @@
        2662  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2526   2663   
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
 2527   2664   
new file mode 100644
 2528   2665   
index 0000000..eeb7a8f
 2529         -
-- /dev/null
        2666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2530   2667   
@@ -0,0 +1,3 @@
        2668  +
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
        2669  +
Host:example.amazonaws.com
        2670  +
 2531   2671   
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
 2532   2672   
new file mode 100644
 2533   2673   
index 0000000..d837e67
 2534         -
-- /dev/null
        2674  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2535   2675   
@@ -0,0 +1,4 @@
        2676  +
AWS4-HMAC-SHA256
        2677  +
20150830T123600Z
        2678  +
20150830/us-east-1/service/aws4_request
        2679  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2536   2680   
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
 2537   2681   
similarity index 100%
 2538   2682   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2539   2683   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2540   2684   
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
 2541   2685   
new file mode 100644
 2542   2686   
index 0000000..0468d80
 2543         -
-- /dev/null
        2687  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2544   2688   
@@ -0,0 +1,12 @@
        2689  +
{
        2690  +
    "credentials": {
        2691  +
        "access_key_id": "AKIDEXAMPLE",
        2692  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2693  +
    },
        2694  +
    "expiration_in_seconds": 3600,
        2695  +
    "normalize": true,
        2696  +
    "region": "us-east-1",
        2697  +
    "service": "service",
        2698  +
    "sign_body": false,
        2699  +
    "timestamp": "2015-08-30T12:36:00Z"
        2700  +
}
              \
 No newline at end of file
 2545   2701   
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
 2546   2702   
similarity index 100%
 2547   2703   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2548   2704   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2549   2705   
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
 2550   2706   
new file mode 100644
 2551   2707   
index 0000000..19a2cc9
 2552         -
-- /dev/null
        2708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2553   2709   
@@ -0,0 +1 @@
        2710  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2554   2711   
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
 2555   2712   
new file mode 100644
 2556   2713   
index 0000000..acb13ee
 2557         -
-- /dev/null
        2714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2558   2715   
@@ -0,0 +1,5 @@
        2716  +
GET /?ሴ=bar HTTP/1.1
        2717  +
Host:example.amazonaws.com
        2718  +
X-Amz-Date:20150830T123600Z
        2719  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2720  +
 2559   2721   
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
 2560   2722   
similarity index 100%
 2561   2723   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2562   2724   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2563   2725   
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
 2564   2726   
new file mode 100644
 2565   2727   
index 0000000..92cee62
 2566         -
-- /dev/null
        2728  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2567   2729   
@@ -0,0 +1,7 @@
        2730  +
GET
        2731  +
/
        2732  +
%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
        2733  +
host:example.amazonaws.com
        2734  +
        2735  +
host
        2736  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2568   2737   
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
 2569   2738   
new file mode 100644
 2570   2739   
index 0000000..c9e49de
 2571         -
-- /dev/null
        2740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2572   2741   
@@ -0,0 +1 @@
        2742  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2573   2743   
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
 2574   2744   
new file mode 100644
 2575   2745   
index 0000000..8f4d8d0
 2576         -
-- /dev/null
        2746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2577   2747   
@@ -0,0 +1,3 @@
        2748  +
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
        2749  +
Host:example.amazonaws.com
        2750  +
 2578   2751   
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
 2579   2752   
new file mode 100644
 2580   2753   
index 0000000..a6181dc
 2581         -
-- /dev/null
        2754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2582   2755   
@@ -0,0 +1,4 @@
        2756  +
AWS4-HMAC-SHA256
        2757  +
20150830T123600Z
        2758  +
20150830/us-east-1/service/aws4_request
        2759  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2583   2760   
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
 2584   2761   
similarity index 64%
 2585   2762   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2586   2763   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2587   2764   
index cc2757e..aff333a 100644
 2588         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2589   2766   
@@ -1,3 +1,2 @@
 2590   2767   
GET /?ሴ=bar HTTP/1.1
 2591   2768   
Host:example.amazonaws.com
 2592         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2593   2769   
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
 2594   2770   
similarity index 99%
 2595   2771   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2596   2772   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2597   2773   
index a457c8a..a334e18 100644
 2598         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
        2774  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2599   2775   
@@ -1,13 +1,13 @@
 2600   2776   
{
 2601   2777   
    "credentials": {
 2602   2778   
        "access_key_id": "AKIDEXAMPLE",
 2603   2779   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
 2604   2780   
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
 2605   2781   
    },
 2606   2782   
    "expiration_in_seconds": 3600,
 2607   2783   
    "normalize": true,
 2608   2784   
    "region": "us-east-1",
 2609   2785   
    "service": "service",
 2610   2786   
    "sign_body": false,
 2611   2787   
    "timestamp": "2015-08-30T12:36:00Z"
 2612         -
}
        2788  +
}
              \
 No newline at end of file
 2613   2789   
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
 2614   2790   
new file mode 100644
 2615   2791   
index 0000000..ccacdeb
 2616         -
-- /dev/null
        2792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2617   2793   
@@ -0,0 +1,9 @@
        2794  +
GET
        2795  +
/
        2796  +
        2797  +
host:example.amazonaws.com
        2798  +
x-amz-date:20150830T123600Z
        2799  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2800  +
        2801  +
host;x-amz-date;x-amz-security-token
        2802  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2618   2803   
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
 2619   2804   
new file mode 100644
 2620   2805   
index 0000000..083e30d
 2621         -
-- /dev/null
        2806  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2622   2807   
@@ -0,0 +1 @@
        2808  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2623   2809   
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
 2624   2810   
new file mode 100644
 2625   2811   
index 0000000..5287932
 2626         -
-- /dev/null
        2812  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2627   2813   
@@ -0,0 +1,6 @@
        2814  +
GET / HTTP/1.1
        2815  +
Host:example.amazonaws.com
        2816  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2817  +
X-Amz-Date:20150830T123600Z
        2818  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2819  +
 2628   2820   
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
 2629   2821   
new file mode 100644
 2630   2822   
index 0000000..742b880
 2631         -
-- /dev/null
        2823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2632   2824   
@@ -0,0 +1,4 @@
        2825  +
AWS4-HMAC-SHA256
        2826  +
20150830T123600Z
        2827  +
20150830/us-east-1/service/aws4_request
        2828  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2633   2829   
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
 2634   2830   
new file mode 100644
 2635   2831   
index 0000000..5e75179
 2636         -
-- /dev/null
        2832  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2637   2833   
@@ -0,0 +1,7 @@
        2834  +
GET
        2835  +
/
        2836  +
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
        2837  +
host:example.amazonaws.com
        2838  +
        2839  +
host
        2840  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2638   2841   
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
 2639   2842   
new file mode 100644
 2640   2843   
index 0000000..50b947f
 2641         -
-- /dev/null
        2844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2642   2845   
@@ -0,0 +1 @@
        2846  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2643   2847   
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
 2644   2848   
new file mode 100644
 2645   2849   
index 0000000..aee910b
 2646         -
-- /dev/null
        2850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2647   2851   
@@ -0,0 +1,3 @@
        2852  +
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
        2853  +
Host:example.amazonaws.com
        2854  +
 2648   2855   
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
 2649   2856   
new file mode 100644
 2650   2857   
index 0000000..04a6c17
 2651         -
-- /dev/null
        2858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2652   2859   
@@ -0,0 +1,4 @@
        2860  +
AWS4-HMAC-SHA256
        2861  +
20150830T123600Z
        2862  +
20150830/us-east-1/service/aws4_request
        2863  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2653   2864   
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
 2654   2865   
similarity index 100%
 2655   2866   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2656   2867   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2657   2868   
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
 2658   2869   
new file mode 100644
 2659   2870   
index 0000000..0468d80
 2660         -
-- /dev/null
        2871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2661   2872   
@@ -0,0 +1,12 @@
        2873  +
{
        2874  +
    "credentials": {
        2875  +
        "access_key_id": "AKIDEXAMPLE",
        2876  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2877  +
    },
        2878  +
    "expiration_in_seconds": 3600,
        2879  +
    "normalize": true,
        2880  +
    "region": "us-east-1",
        2881  +
    "service": "service",
        2882  +
    "sign_body": false,
        2883  +
    "timestamp": "2015-08-30T12:36:00Z"
        2884  +
}
              \
 No newline at end of file
 2662   2885   
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
 2663   2886   
similarity index 100%
 2664   2887   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2665   2888   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2666   2889   
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
 2667   2890   
new file mode 100644
 2668   2891   
index 0000000..87f295f
 2669         -
-- /dev/null
        2892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2670   2893   
@@ -0,0 +1 @@
        2894  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2671   2895   
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
 2672   2896   
new file mode 100644
 2673   2897   
index 0000000..36b86e7
 2674         -
-- /dev/null
        2898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2675   2899   
@@ -0,0 +1,5 @@
        2900  +
GET / HTTP/1.1
        2901  +
Host:example.amazonaws.com
        2902  +
X-Amz-Date:20150830T123600Z
        2903  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2904  +
 2676   2905   
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
 2677   2906   
similarity index 100%
 2678   2907   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2679   2908   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2680   2909   
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
 2681   2910   
new file mode 100644
 2682   2911   
index 0000000..fb2420d
 2683         -
-- /dev/null
        2912  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2684   2913   
@@ -0,0 +1,7 @@
        2914  +
GET
        2915  +
/
        2916  +
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
        2917  +
host:example.amazonaws.com
        2918  +
        2919  +
host
        2920  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2685   2921   
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
 2686   2922   
new file mode 100644
 2687   2923   
index 0000000..da5c905
 2688         -
-- /dev/null
        2924  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2689   2925   
@@ -0,0 +1 @@
        2926  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2690   2927   
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
 2691   2928   
new file mode 100644
 2692   2929   
index 0000000..eeb7a8f
 2693         -
-- /dev/null
        2930  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2694   2931   
@@ -0,0 +1,3 @@
        2932  +
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
        2933  +
Host:example.amazonaws.com
        2934  +
 2695   2935   
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
 2696   2936   
new file mode 100644
 2697   2937   
index 0000000..d837e67
 2698         -
-- /dev/null
        2938  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2699   2939   
@@ -0,0 +1,4 @@
        2940  +
AWS4-HMAC-SHA256
        2941  +
20150830T123600Z
        2942  +
20150830/us-east-1/service/aws4_request
        2943  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2700   2944   
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
 2701   2945   
similarity index 100%
 2702   2946   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2703   2947   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2704   2948   
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
 2705   2949   
new file mode 100644
 2706   2950   
index 0000000..0468d80
 2707         -
-- /dev/null
        2951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2708   2952   
@@ -0,0 +1,12 @@
        2953  +
{
        2954  +
    "credentials": {
        2955  +
        "access_key_id": "AKIDEXAMPLE",
        2956  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2957  +
    },
        2958  +
    "expiration_in_seconds": 3600,
        2959  +
    "normalize": true,
        2960  +
    "region": "us-east-1",
        2961  +
    "service": "service",
        2962  +
    "sign_body": false,
        2963  +
    "timestamp": "2015-08-30T12:36:00Z"
        2964  +
}
              \
 No newline at end of file
 2709   2965   
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
 2710   2966   
similarity index 100%
 2711   2967   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2712   2968   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2713   2969   
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
 2714   2970   
new file mode 100644
 2715   2971   
index 0000000..629487f
 2716         -
-- /dev/null
        2972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2717   2973   
@@ -0,0 +1 @@
        2974  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2718   2975   
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
 2719   2976   
new file mode 100644
 2720   2977   
index 0000000..0d99b1c
 2721         -
-- /dev/null
        2978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2722   2979   
@@ -0,0 +1,5 @@
        2980  +
POST / HTTP/1.1
        2981  +
Host:example.amazonaws.com
        2982  +
X-Amz-Date:20150830T123600Z
        2983  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2984  +
 2723   2985   
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
 2724   2986   
similarity index 100%
 2725   2987   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2726   2988   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2727   2989   
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
 2728   2990   
new file mode 100644
 2729   2991   
index 0000000..d3341e7
 2730         -
-- /dev/null
        2992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2731   2993   
@@ -0,0 +1,7 @@
        2994  +
POST
        2995  +
/
        2996  +
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
        2997  +
host:example.amazonaws.com
        2998  +
        2999  +
host
        3000  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2732   3001   
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
 2733   3002   
new file mode 100644
 2734   3003   
index 0000000..79f7e0d
 2735         -
-- /dev/null
        3004  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2736   3005   
@@ -0,0 +1 @@
        3006  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2737   3007   
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
 2738   3008   
new file mode 100644
 2739   3009   
index 0000000..94f1b21
 2740         -
-- /dev/null
        3010  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2741   3011   
@@ -0,0 +1,3 @@
        3012  +
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
        3013  +
Host:example.amazonaws.com
        3014  +
 2742   3015   
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
 2743   3016   
new file mode 100644
 2744   3017   
index 0000000..e8f335b
 2745         -
-- /dev/null
        3018  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2746   3019   
@@ -0,0 +1,4 @@
        3020  +
AWS4-HMAC-SHA256
        3021  +
20150830T123600Z
        3022  +
20150830/us-east-1/service/aws4_request
        3023  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2747   3024   
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
 2748   3025   
similarity index 100%
 2749   3026   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2750   3027   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2751   3028   
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
 2752   3029   
new file mode 100644
 2753   3030   
index 0000000..0468d80
 2754         -
-- /dev/null
        3031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2755   3032   
@@ -0,0 +1,12 @@
        3033  +
{
        3034  +
    "credentials": {
        3035  +
        "access_key_id": "AKIDEXAMPLE",
        3036  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3037  +
    },
        3038  +
    "expiration_in_seconds": 3600,
        3039  +
    "normalize": true,
        3040  +
    "region": "us-east-1",
        3041  +
    "service": "service",
        3042  +
    "sign_body": false,
        3043  +
    "timestamp": "2015-08-30T12:36:00Z"
        3044  +
}
              \
 No newline at end of file
 2756   3045   
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
 2757   3046   
similarity index 100%
 2758   3047   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2759   3048   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2760   3049   
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
 2761   3050   
new file mode 100644
 2762   3051   
index 0000000..e4e6428
 2763         -
-- /dev/null
        3052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2764   3053   
@@ -0,0 +1 @@
        3054  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2765   3055   
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
 2766   3056   
new file mode 100644
 2767   3057   
index 0000000..e3778f5
 2768         -
-- /dev/null
        3058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2769   3059   
@@ -0,0 +1,6 @@
        3060  +
POST / HTTP/1.1
        3061  +
Host:example.amazonaws.com
        3062  +
My-Header1:value1
        3063  +
X-Amz-Date:20150830T123600Z
        3064  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        3065  +
 2770   3066   
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
 2771   3067   
similarity index 100%
 2772   3068   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2773   3069   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2774   3070   
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
 2775   3071   
new file mode 100644
 2776   3072   
index 0000000..bd7c937
 2777         -
-- /dev/null
        3073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2778   3074   
@@ -0,0 +1,8 @@
        3075  +
POST
        3076  +
/
        3077  +
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
        3078  +
host:example.amazonaws.com
        3079  +
my-header1:value1
        3080  +
        3081  +
host;my-header1
        3082  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2779   3083   
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
 2780   3084   
new file mode 100644
 2781   3085   
index 0000000..0416f13
 2782         -
-- /dev/null
        3086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2783   3087   
@@ -0,0 +1 @@
        3088  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2784   3089   
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
 2785   3090   
new file mode 100644
 2786   3091   
index 0000000..5e6522f
 2787         -
-- /dev/null
        3092  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2788   3093   
@@ -0,0 +1,4 @@
        3094  +
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
        3095  +
Host:example.amazonaws.com
        3096  +
My-Header1:value1
        3097  +
 2789   3098   
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
 2790   3099   
new file mode 100644
 2791   3100   
index 0000000..d06d1df
 2792         -
-- /dev/null
        3101  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2793   3102   
@@ -0,0 +1,4 @@
        3103  +
AWS4-HMAC-SHA256
        3104  +
20150830T123600Z
        3105  +
20150830/us-east-1/service/aws4_request
        3106  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2794   3107   
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
 2795   3108   
similarity index 100%
 2796   3109   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2797   3110   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2798   3111   
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
 2799   3112   
new file mode 100644
 2800   3113   
index 0000000..0468d80
 2801         -
-- /dev/null
        3114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2802   3115   
@@ -0,0 +1,12 @@
        3116  +
{
        3117  +
    "credentials": {
        3118  +
        "access_key_id": "AKIDEXAMPLE",
        3119  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3120  +
    },
        3121  +
    "expiration_in_seconds": 3600,
        3122  +
    "normalize": true,
        3123  +
    "region": "us-east-1",
        3124  +
    "service": "service",
        3125  +
    "sign_body": false,
        3126  +
    "timestamp": "2015-08-30T12:36:00Z"
        3127  +
}
              \
 No newline at end of file
 2803   3128   
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
 2804   3129   
similarity index 100%
 2805   3130   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2806   3131   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2807   3132   
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
 2808   3133   
new file mode 100644
 2809   3134   
index 0000000..bb3809c
 2810         -
-- /dev/null
        3135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2811   3136   
@@ -0,0 +1 @@
        3137  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2812   3138   
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
 2813   3139   
new file mode 100644
 2814   3140   
index 0000000..10f6761
 2815         -
-- /dev/null
        3141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2816   3142   
@@ -0,0 +1,6 @@
        3143  +
POST / HTTP/1.1
        3144  +
Host:example.amazonaws.com
        3145  +
My-Header1:VALUE1
        3146  +
X-Amz-Date:20150830T123600Z
        3147  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        3148  +
 2817   3149   
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
 2818   3150   
similarity index 100%
 2819   3151   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2820   3152   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2821   3153   
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
 2822   3154   
new file mode 100644
 2823   3155   
index 0000000..f84856f
 2824         -
-- /dev/null
        3156  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2825   3157   
@@ -0,0 +1,8 @@
        3158  +
POST
        3159  +
/
        3160  +
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
        3161  +
host:example.amazonaws.com
        3162  +
my-header1:VALUE1
        3163  +
        3164  +
host;my-header1
        3165  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2826   3166   
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
 2827   3167   
new file mode 100644
 2828   3168   
index 0000000..a9d3cac
 2829         -
-- /dev/null
        3169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2830   3170   
@@ -0,0 +1 @@
        3171  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2831   3172   
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
 2832   3173   
new file mode 100644
 2833   3174   
index 0000000..cf96c7c
 2834         -
-- /dev/null
        3175  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2835   3176   
@@ -0,0 +1,4 @@
        3177  +
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
        3178  +
Host:example.amazonaws.com
        3179  +
My-Header1:VALUE1
        3180  +
 2836   3181   
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
 2837   3182   
new file mode 100644
 2838   3183   
index 0000000..47ef566
 2839         -
-- /dev/null
        3184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2840   3185   
@@ -0,0 +1,4 @@
        3186  +
AWS4-HMAC-SHA256
        3187  +
20150830T123600Z
        3188  +
20150830/us-east-1/service/aws4_request
        3189  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2841   3190   
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
 2842   3191   
similarity index 100%
 2843   3192   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2844   3193   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2845   3194   
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
 2846   3195   
similarity index 100%
 2847   3196   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2848   3197   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2849   3198   
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
 2850   3199   
similarity index 100%
 2851   3200   
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
 2852   3201   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2853   3202   
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
 2854   3203   
new file mode 100644
 2855   3204   
index 0000000..629487f
 2856         -
-- /dev/null
        3205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2857   3206   
@@ -0,0 +1 @@
        3207  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2858   3208   
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
 2859   3209   
similarity index 67%
 2860   3210   
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
 2861   3211   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2862   3212   
index 291ed07..f96ff9e 100644
 2863         -
-- 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
        3213  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2864   3214   
@@ -1,5 +1,6 @@
 2865   3215   
POST / HTTP/1.1
 2866   3216   
Host:example.amazonaws.com
 2867         -
X-Amz-Date:20150830T123600Z
 2868   3217   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2869         -
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
        3218  +
X-Amz-Date:20150830T123600Z
        3219  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3220  +
 2870   3221   
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
 2871   3222   
similarity index 100%
 2872   3223   
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
 2873   3224   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2874   3225   
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
 2875   3226   
new file mode 100644
 2876   3227   
index 0000000..d3341e7
 2877         -
-- /dev/null
        3228  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2878   3229   
@@ -0,0 +1,7 @@
        3230  +
POST
        3231  +
/
        3232  +
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
        3233  +
host:example.amazonaws.com
        3234  +
        3235  +
host
        3236  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2879   3237   
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
 2880   3238   
new file mode 100644
 2881   3239   
index 0000000..79f7e0d
 2882         -
-- /dev/null
        3240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2883   3241   
@@ -0,0 +1 @@
        3242  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2884   3243   
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
 2885   3244   
new file mode 100644
 2886   3245   
index 0000000..4983268
 2887         -
-- /dev/null
        3246  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2888   3247   
@@ -0,0 +1,3 @@
        3248  +
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
        3249  +
Host:example.amazonaws.com
        3250  +
 2889   3251   
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
 2890   3252   
new file mode 100644
 2891   3253   
index 0000000..e8f335b
 2892         -
-- /dev/null
        3254  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2893   3255   
@@ -0,0 +1,4 @@
        3256  +
AWS4-HMAC-SHA256
        3257  +
20150830T123600Z
        3258  +
20150830/us-east-1/service/aws4_request
        3259  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2894   3260   
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
 2895   3261   
similarity index 100%
 2896   3262   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2897   3263   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2898   3264   
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
 2899   3265   
similarity index 100%
 2900   3266   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2901   3267   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2902   3268   
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
 2903   3269   
similarity index 100%
 2904   3270   
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
 2905   3271   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2906   3272   
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
 2907   3273   
new file mode 100644
 2908   3274   
index 0000000..85a7c29
 2909         -
-- /dev/null
        3275  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2910   3276   
@@ -0,0 +1 @@
        3277  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2911   3278   
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
 2912   3279   
similarity index 65%
 2913   3280   
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
 2914   3281   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2915   3282   
index 37b2f04..4d0b143 100644
 2916         -
-- 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
        3283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2917   3284   
@@ -1,5 +1,6 @@
 2918   3285   
POST / HTTP/1.1
 2919   3286   
Host:example.amazonaws.com
 2920         -
X-Amz-Date:20150830T123600Z
 2921   3287   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2922         -
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
        3288  +
X-Amz-Date:20150830T123600Z
        3289  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3290  +
 2923   3291   
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
 2924   3292   
similarity index 100%
 2925   3293   
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
 2926   3294   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2927   3295   
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
 2928   3296   
new file mode 100644
 2929   3297   
index 0000000..57a7bc3
 2930         -
-- /dev/null
        3298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2931   3299   
@@ -0,0 +1,7 @@
        3300  +
POST
        3301  +
/
        3302  +
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
        3303  +
host:example.amazonaws.com
        3304  +
        3305  +
host
        3306  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2932   3307   
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
 2933   3308   
new file mode 100644
 2934   3309   
index 0000000..eb905d2
 2935         -
-- /dev/null
        3310  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2936   3311   
@@ -0,0 +1 @@
        3312  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2937   3313   
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
 2938   3314   
new file mode 100644
 2939   3315   
index 0000000..1d80ec0
 2940         -
-- /dev/null
        3316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2941   3317   
@@ -0,0 +1,3 @@
        3318  +
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
        3319  +
Host:example.amazonaws.com
        3320  +
 2942   3321   
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
 2943   3322   
new file mode 100644
 2944   3323   
index 0000000..bd0239a
 2945         -
-- /dev/null
        3324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2946   3325   
@@ -0,0 +1,4 @@
        3326  +
AWS4-HMAC-SHA256
        3327  +
20150830T123600Z
        3328  +
20150830/us-east-1/service/aws4_request
        3329  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2947   3330   
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
 2948   3331   
similarity index 100%
 2949   3332   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2950   3333   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2951   3334   
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
 2952   3335   
new file mode 100644
 2953   3336   
index 0000000..0468d80
 2954         -
-- /dev/null
        3337  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2955   3338   
@@ -0,0 +1,12 @@
        3339  +
{
        3340  +
    "credentials": {
        3341  +
        "access_key_id": "AKIDEXAMPLE",
        3342  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3343  +
    },
        3344  +
    "expiration_in_seconds": 3600,
        3345  +
    "normalize": true,
        3346  +
    "region": "us-east-1",
        3347  +
    "service": "service",
        3348  +
    "sign_body": false,
        3349  +
    "timestamp": "2015-08-30T12:36:00Z"
        3350  +
}
              \
 No newline at end of file
 2956   3351   
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
 2957   3352   
similarity index 100%
 2958   3353   
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
 2959   3354   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2960   3355   
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
 2961   3356   
new file mode 100644
 2962   3357   
index 0000000..80ed433
 2963         -
-- /dev/null
        3358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2964   3359   
@@ -0,0 +1 @@
        3360  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2965   3361   
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
 2966   3362   
new file mode 100644
 2967   3363   
index 0000000..4e614f8
 2968         -
-- /dev/null
        3364  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2969   3365   
@@ -0,0 +1,5 @@
        3366  +
POST /?Param1=value1 HTTP/1.1
        3367  +
Host:example.amazonaws.com
        3368  +
X-Amz-Date:20150830T123600Z
        3369  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3370  +
 2970   3371   
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
 2971   3372   
similarity index 100%
 2972   3373   
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
 2973   3374   
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
 2974   3375   
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
 2975   3376   
new file mode 100644
 2976   3377   
index 0000000..be66403
 2977         -
-- /dev/null
        3378  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2978   3379   
@@ -0,0 +1,7 @@
        3380  +
POST
        3381  +
/
        3382  +
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
        3383  +
host:example.amazonaws.com
        3384  +
        3385  +
host
        3386  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2979   3387   
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
 2980   3388   
new file mode 100644
 2981   3389   
index 0000000..20fd32b
 2982         -
-- /dev/null
        3390  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2983   3391   
@@ -0,0 +1 @@
        3392  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2984   3393   
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
 2985   3394   
new file mode 100644
 2986   3395   
index 0000000..d1148d0
 2987         -
-- /dev/null
        3396  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2988   3397   
@@ -0,0 +1,3 @@
        3398  +
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
        3399  +
Host:example.amazonaws.com
        3400  +
 2989   3401   
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
 2990   3402   
new file mode 100644
 2991   3403   
index 0000000..1a77103
 2992         -
-- /dev/null
        3404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2993   3405   
@@ -0,0 +1,4 @@
        3406  +
AWS4-HMAC-SHA256
        3407  +
20150830T123600Z
        3408  +
20150830/us-east-1/service/aws4_request
        3409  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2994   3410   
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
 2995   3411   
similarity index 100%
 2996   3412   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2997   3413   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2998   3414   
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
 2999   3415   
new file mode 100644
 3000   3416   
index 0000000..0468d80
 3001         -
-- /dev/null
        3417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 3002   3418   
@@ -0,0 +1,12 @@
        3419  +
{
        3420  +
    "credentials": {
        3421  +
        "access_key_id": "AKIDEXAMPLE",
        3422  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3423  +
    },
        3424  +
    "expiration_in_seconds": 3600,
        3425  +
    "normalize": true,
        3426  +
    "region": "us-east-1",
        3427  +
    "service": "service",
        3428  +
    "sign_body": false,
        3429  +
    "timestamp": "2015-08-30T12:36:00Z"
        3430  +
}
              \
 No newline at end of file
 3003   3431   
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
 3004   3432   
similarity index 100%
 3005   3433   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 3006   3434   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 3007   3435   
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
 3008   3436   
new file mode 100644
 3009   3437   
index 0000000..80ed433
 3010         -
-- /dev/null
        3438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 3011   3439   
@@ -0,0 +1 @@
        3440  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 3012   3441   
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
 3013   3442   
new file mode 100644
 3014   3443   
index 0000000..4e614f8
 3015         -
-- /dev/null
        3444  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 3016   3445   
@@ -0,0 +1,5 @@
        3446  +
POST /?Param1=value1 HTTP/1.1
        3447  +
Host:example.amazonaws.com
        3448  +
X-Amz-Date:20150830T123600Z
        3449  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3450  +
 3017   3451   
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
 3018   3452   
similarity index 100%
 3019   3453   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 3020   3454   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 3021   3455   
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
 3022   3456   
new file mode 100644
 3023   3457   
index 0000000..be66403
 3024         -
-- /dev/null
        3458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 3025   3459   
@@ -0,0 +1,7 @@
        3460  +
POST
        3461  +
/
        3462  +
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
        3463  +
host:example.amazonaws.com
        3464  +
        3465  +
host
        3466  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3026   3467   
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
 3027   3468   
new file mode 100644
 3028   3469   
index 0000000..20fd32b
 3029         -
-- /dev/null
        3470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 3030   3471   
@@ -0,0 +1 @@
        3472  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 3031   3473   
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
 3032   3474   
new file mode 100644
 3033   3475   
index 0000000..d1148d0
 3034         -
-- /dev/null
        3476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 3035   3477   
@@ -0,0 +1,3 @@
        3478  +
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
        3479  +
Host:example.amazonaws.com
        3480  +
 3036   3481   
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
 3037   3482   
new file mode 100644
 3038   3483   
index 0000000..1a77103
 3039         -
-- /dev/null
        3484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 3040   3485   
@@ -0,0 +1,4 @@
        3486  +
AWS4-HMAC-SHA256
        3487  +
20150830T123600Z
        3488  +
20150830/us-east-1/service/aws4_request
        3489  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 3041   3490   
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
 3042   3491   
similarity index 100%
 3043   3492   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 3044   3493   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 3045   3494   
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
 3046   3495   
new file mode 100644
 3047   3496   
index 0000000..0468d80
 3048         -
-- /dev/null
        3497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 3049   3498   
@@ -0,0 +1,12 @@
        3499  +
{
        3500  +
    "credentials": {
        3501  +
        "access_key_id": "AKIDEXAMPLE",
        3502  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3503  +
    },
        3504  +
    "expiration_in_seconds": 3600,
        3505  +
    "normalize": true,
        3506  +
    "region": "us-east-1",
        3507  +
    "service": "service",
        3508  +
    "sign_body": false,
        3509  +
    "timestamp": "2015-08-30T12:36:00Z"
        3510  +
}
              \
 No newline at end of file
 3050   3511   
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
 3051   3512   
similarity index 100%
 3052   3513   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 3053   3514   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 3054   3515   
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
 3055   3516   
new file mode 100644
 3056   3517   
index 0000000..629487f
 3057         -
-- /dev/null
        3518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 3058   3519   
@@ -0,0 +1 @@
        3520  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 3059   3521   
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
 3060   3522   
new file mode 100644
 3061   3523   
index 0000000..0d99b1c
 3062         -
-- /dev/null
        3524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 3063   3525   
@@ -0,0 +1,5 @@
        3526  +
POST / HTTP/1.1
        3527  +
Host:example.amazonaws.com
        3528  +
X-Amz-Date:20150830T123600Z
        3529  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3530  +
 3064   3531   
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
 3065   3532   
similarity index 100%
 3066   3533   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 3067   3534   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 3068   3535   
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
 3069   3536   
new file mode 100644
 3070   3537   
index 0000000..d3341e7
 3071         -
-- /dev/null
        3538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 3072   3539   
@@ -0,0 +1,7 @@
        3540  +
POST
        3541  +
/
        3542  +
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
        3543  +
host:example.amazonaws.com
        3544  +
        3545  +
host
        3546  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3073   3547   
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
 3074   3548   
new file mode 100644
 3075   3549   
index 0000000..79f7e0d
 3076         -
-- /dev/null
        3550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 3077   3551   
@@ -0,0 +1 @@
        3552  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 3078   3553   
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
 3079   3554   
new file mode 100644
 3080   3555   
index 0000000..94f1b21
 3081         -
-- /dev/null
        3556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 3082   3557   
@@ -0,0 +1,3 @@
        3558  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b HTTP/1.1
        3559  +
Host:example.amazonaws.com
        3560  +
 3083   3561   
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
 3084   3562   
new file mode 100644
 3085   3563   
index 0000000..e8f335b
 3086         -
-- /dev/null
        3564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 3087   3565   
@@ -0,0 +1,4 @@
        3566  +
AWS4-HMAC-SHA256
        3567  +
20150830T123600Z
        3568  +
20150830/us-east-1/service/aws4_request
        3569  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 3088   3570   
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
 3089   3571   
similarity index 100%
 3090   3572   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 3091   3573   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 3092   3574   
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
 3093   3575   
similarity index 99%
 3094   3576   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 3095   3577   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 3096   3578   
index fc4bce6..0db1df1 100644
 3097         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
        3579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 3098   3580   
@@ -1,12 +1,12 @@
 3099   3581   
{
 3100   3582   
    "credentials": {
 3101   3583   
        "access_key_id": "AKIDEXAMPLE",
 3102   3584   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 3103   3585   
    },
 3104   3586   
    "expiration_in_seconds": 3600,
 3105   3587   
    "normalize": true,
 3106   3588   
    "region": "us-east-1",
 3107   3589   
    "service": "service",
 3108   3590   
    "sign_body": true,
 3109   3591   
    "timestamp": "2015-08-30T12:36:00Z"
 3110         -
}
        3592  +
}
              \
 No newline at end of file
 3111   3593   
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
 3112   3594   
new file mode 100644
 3113   3595   
index 0000000..c218fdf
 3114         -
-- /dev/null
        3596  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 3115   3597   
@@ -0,0 +1,11 @@
        3598  +
POST
        3599  +
/
        3600  +
        3601  +
content-length:13
        3602  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3603  +
host:example.amazonaws.com
        3604  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3605  +
x-amz-date:20150830T123600Z
        3606  +
        3607  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3608  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3116   3609   
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
 3117   3610   
new file mode 100644
 3118   3611   
index 0000000..836aa8b
 3119         -
-- /dev/null
        3612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 3120   3613   
@@ -0,0 +1 @@
        3614  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 3121   3615   
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
 3122   3616   
new file mode 100644
 3123   3617   
index 0000000..9262d53
 3124         -
-- /dev/null
        3618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 3125   3619   
@@ -0,0 +1,9 @@
        3620  +
POST / HTTP/1.1
        3621  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3622  +
Host:example.amazonaws.com
        3623  +
Content-Length:13
        3624  +
X-Amz-Date:20150830T123600Z
        3625  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3626  +
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
        3627  +
        3628  +
Param1=value1
              \
 No newline at end of file
 3126   3629   
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
 3127   3630   
new file mode 100644
 3128   3631   
index 0000000..ddbdccc
 3129         -
-- /dev/null
        3632  +
++ 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
 3130   3633   
@@ -0,0 +1,4 @@
        3634  +
AWS4-HMAC-SHA256
        3635  +
20150830T123600Z
        3636  +
20150830/us-east-1/service/aws4_request
        3637  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 3131   3638   
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
 3132   3639   
new file mode 100644
 3133   3640   
index 0000000..596a579
 3134         -
-- /dev/null
        3641  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 3135   3642   
@@ -0,0 +1,9 @@
        3643  +
POST
        3644  +
/
        3645  +
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
        3646  +
content-length:13
        3647  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3648  +
host:example.amazonaws.com
        3649  +
        3650  +
content-length;content-type;host
        3651  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3136   3652   
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
 3137   3653   
new file mode 100644
 3138   3654   
index 0000000..bc85cd8
 3139         -
-- /dev/null
        3655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 3140   3656   
@@ -0,0 +1 @@
        3657  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 3141   3658   
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
 3142   3659   
new file mode 100644
 3143   3660   
index 0000000..16b59e5
 3144         -
-- /dev/null
        3661  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 3145   3662   
@@ -0,0 +1,6 @@
        3663  +
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
        3664  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3665  +
Host:example.amazonaws.com
        3666  +
Content-Length:13
        3667  +
        3668  +
Param1=value1
              \
 No newline at end of file
 3146   3669   
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
 3147   3670   
new file mode 100644
 3148   3671   
index 0000000..50074af
 3149         -
-- /dev/null
        3672  +
++ 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
 3150   3673   
@@ -0,0 +1,4 @@
        3674  +
AWS4-HMAC-SHA256
        3675  +
20150830T123600Z
        3676  +
20150830/us-east-1/service/aws4_request
        3677  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 3151   3678   
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
 3152   3679   
similarity index 89%
 3153   3680   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 3154   3681   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3155   3682   
index b711c25..8289eaa 100644
 3156         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
        3683  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3157   3684   
@@ -1,6 +1,6 @@
 3158   3685   
POST / HTTP/1.1
 3159   3686   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 3160   3687   
Host:example.amazonaws.com
 3161   3688   
Content-Length:13
 3162   3689   
 3163         -
Param1=value1
        3690  +
Param1=value1
              \
 No newline at end of file
 3164   3691   
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
 3165   3692   
similarity index 99%
 3166   3693   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 3167   3694   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3168   3695   
index fc4bce6..0db1df1 100644
 3169         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
        3696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3170   3697   
@@ -1,12 +1,12 @@
 3171   3698   
{
 3172   3699   
    "credentials": {
 3173   3700   
        "access_key_id": "AKIDEXAMPLE",
 3174   3701   
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 3175   3702   
    },
 3176   3703   
    "expiration_in_seconds": 3600,
 3177   3704   
    "normalize": true,
 3178   3705   
    "region": "us-east-1",
 3179   3706   
    "service": "service",
 3180   3707   
    "sign_body": true,
 3181   3708   
    "timestamp": "2015-08-30T12:36:00Z"
 3182         -
}
        3709  +
}
              \
 No newline at end of file
 3183   3710   
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
 3184   3711   
new file mode 100644
 3185   3712   
index 0000000..4d116a5
 3186         -
-- /dev/null
        3713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 3187   3714   
@@ -0,0 +1,11 @@
        3715  +
POST
        3716  +
/
        3717  +
        3718  +
content-length:13
        3719  +
content-type:application/x-www-form-urlencoded
        3720  +
host:example.amazonaws.com
        3721  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3722  +
x-amz-date:20150830T123600Z
        3723  +
        3724  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3725  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3188   3726   
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
 3189   3727   
new file mode 100644
 3190   3728   
index 0000000..0d2ac37
 3191         -
-- /dev/null
        3729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 3192   3730   
@@ -0,0 +1 @@
        3731  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 3193   3732   
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
 3194   3733   
new file mode 100644
 3195   3734   
index 0000000..bd5e49c
 3196         -
-- /dev/null
        3735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 3197   3736   
@@ -0,0 +1,9 @@
        3737  +
POST / HTTP/1.1
        3738  +
Content-Type:application/x-www-form-urlencoded
        3739  +
Host:example.amazonaws.com
        3740  +
Content-Length:13
        3741  +
X-Amz-Date:20150830T123600Z
        3742  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3743  +
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
        3744  +
        3745  +
Param1=value1
              \
 No newline at end of file
 3198   3746   
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
 3199   3747   
new file mode 100644
 3200   3748   
index 0000000..f1c599c
 3201         -
-- /dev/null
        3749  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 3202   3750   
@@ -0,0 +1,4 @@
        3751  +
AWS4-HMAC-SHA256
        3752  +
20150830T123600Z
        3753  +
20150830/us-east-1/service/aws4_request
        3754  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 3203   3755   
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
 3204   3756   
new file mode 100644
 3205   3757   
index 0000000..1fc1bb7
 3206         -
-- /dev/null
        3758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 3207   3759   
@@ -0,0 +1,9 @@
        3760  +
POST
        3761  +
/
        3762  +
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
        3763  +
content-length:13
        3764  +
content-type:application/x-www-form-urlencoded
        3765  +
host:example.amazonaws.com
        3766  +
        3767  +
content-length;content-type;host
        3768  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3208   3769   
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
 3209   3770   
new file mode 100644
 3210   3771   
index 0000000..98c91b3
 3211         -
-- /dev/null
        3772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 3212   3773   
@@ -0,0 +1 @@
        3774  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 3213   3775   
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
 3214   3776   
new file mode 100644
 3215   3777   
index 0000000..055cd7a
 3216         -
-- /dev/null
        3778  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 3217   3779   
@@ -0,0 +1,6 @@
        3780  +
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
        3781  +
Content-Type:application/x-www-form-urlencoded
        3782  +
Host:example.amazonaws.com
        3783  +
Content-Length:13
        3784  +
        3785  +
Param1=value1
              \
 No newline at end of file
 3218   3786   
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
 3219   3787   
new file mode 100644
 3220   3788   
index 0000000..db7fc27
 3221         -
-- /dev/null
        3789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 3222   3790   
@@ -0,0 +1,4 @@
        3791  +
AWS4-HMAC-SHA256
        3792  +
20150830T123600Z
        3793  +
20150830/us-east-1/service/aws4_request
        3794  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 3223   3795   
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
 3224   3796   
similarity index 88%
 3225   3797   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 3226   3798   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3227   3799   
index 0091102..760b2d3 100644
 3228         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
        3800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3229   3801   
@@ -1,6 +1,6 @@
 3230   3802   
POST / HTTP/1.1
 3231   3803   
Content-Type:application/x-www-form-urlencoded
 3232   3804   
Host:example.amazonaws.com
 3233   3805   
Content-Length:13
 3234   3806   
 3235         -
Param1=value1
        3807  +
Param1=value1
              \
 No newline at end of file
 3236   3808   
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
 3237   3809   
new file mode 100644
 3238   3810   
index 0000000..0468d80
 3239         -
-- /dev/null
        3811  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 3240   3812   
@@ -0,0 +1,12 @@
        3813  +
{
        3814  +
    "credentials": {
        3815  +
        "access_key_id": "AKIDEXAMPLE",
        3816  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3817  +
    },
        3818  +
    "expiration_in_seconds": 3600,
        3819  +
    "normalize": true,
        3820  +
    "region": "us-east-1",
        3821  +
    "service": "service",
        3822  +
    "sign_body": false,
        3823  +
    "timestamp": "2015-08-30T12:36:00Z"
        3824  +
}
              \
 No newline at end of file
 3241   3825   
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
 3242   3826   
similarity index 99%
 3243   3827   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 3244   3828   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3245   3829   
index ccb5f43..1bc448e 100644
 3246         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
        3830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3247   3831   
@@ -1,10 +1,10 @@
 3248   3832   
GET
 3249   3833   
/
 3250   3834   
 3251   3835   
host:example.amazonaws.com
 3252   3836   
my-header1:value2,value2,value1
 3253   3837   
x-amz-date:20150830T123600Z
 3254   3838   
x-amz-region-set:us-east-1
 3255   3839   
 3256   3840   
host;my-header1;x-amz-date;x-amz-region-set
 3257         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3841  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3258   3842   
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
 3259   3843   
new file mode 100644
 3260   3844   
index 0000000..489c182
 3261         -
-- /dev/null
        3845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 3262   3846   
@@ -0,0 +1 @@
        3847  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 3263   3848   
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
 3264   3849   
new file mode 100644
 3265   3850   
index 0000000..e1b8dbf
 3266         -
-- /dev/null
        3851  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 3267   3852   
@@ -0,0 +1,9 @@
        3853  +
GET / HTTP/1.1
        3854  +
Host:example.amazonaws.com
        3855  +
My-Header1:value2
        3856  +
My-Header1:value2
        3857  +
My-Header1:value1
        3858  +
X-Amz-Date:20150830T123600Z
        3859  +
X-Amz-Region-Set:us-east-1
        3860  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3861  +
 3268   3862   
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
 3269   3863   
similarity index 99%
 3270   3864   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 3271   3865   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3272   3866   
index 8783461..bfc4619 100644
 3273         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
        3867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3274   3868   
@@ -1,4 +1,4 @@
 3275   3869   
AWS4-ECDSA-P256-SHA256
 3276   3870   
20150830T123600Z
 3277   3871   
20150830/service/aws4_request
 3278         -
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
        3872  +
30f1f7b639b7fd5982a0f700e6d23bf7bb24f2f1d9e1314005bf22130da61cdf
              \
 No newline at end of file
 3279   3873   
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
 3280   3874   
new file mode 100644
 3281   3875   
index 0000000..379dcb2
 3282         -
-- /dev/null
        3876  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3283   3877   
@@ -0,0 +1,4 @@
        3878  +
{
        3879  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3880  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3881  +
}
 3284   3882   
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
 3285   3883   
similarity index 99%
 3286   3884   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3287   3885   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3288   3886   
index 9561297..c05c3f5 100644
 3289         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
        3887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3290   3888   
@@ -1,8 +1,8 @@
 3291   3889   
GET
 3292   3890   
/
 3293   3891   
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
 3294   3892   
host:example.amazonaws.com
 3295   3893   
my-header1:value2,value2,value1
 3296   3894   
 3297   3895   
host;my-header1
 3298         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        3896  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3299   3897   
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
 3300   3898   
new file mode 100644
 3301   3899   
index 0000000..de9a4c3
 3302         -
-- /dev/null
        3900  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3303   3901   
@@ -0,0 +1 @@
        3902  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3304   3903   
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
 3305   3904   
new file mode 100644
 3306   3905   
index 0000000..6c6b8c4
 3307         -
-- /dev/null
        3906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3308   3907   
@@ -0,0 +1,6 @@
        3908  +
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
        3909  +
Host:example.amazonaws.com
        3910  +
My-Header1:value2
        3911  +
My-Header1:value2
        3912  +
My-Header1:value1
        3913  +
 3309   3914   
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
 3310   3915   
similarity index 99%
 3311   3916   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3312   3917   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3313   3918   
index 3140f6f..4eef106 100644
 3314         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
        3919  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3315   3920   
@@ -1,4 +1,4 @@
 3316   3921   
AWS4-ECDSA-P256-SHA256
 3317   3922   
20150830T123600Z
 3318   3923   
20150830/service/aws4_request
 3319         -
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
        3924  +
a6e21a0099c98cbb4ec73928a08e8b116dfd634c471a8c03c4007b5258b664ea
              \
 No newline at end of file
 3320   3925   
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
 3321   3926   
similarity index 78%
 3322   3927   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3323   3928   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3324   3929   
index 08a0364..40455ce 100644
 3325         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3930  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3326   3931   
@@ -1,6 +1,5 @@
 3327   3932   
GET / HTTP/1.1
 3328   3933   
Host:example.amazonaws.com
 3329   3934   
My-Header1:value2
 3330   3935   
My-Header1:value2
 3331   3936   
My-Header1:value1
 3332         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3333   3937   
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
 3334   3938   
new file mode 100644
 3335   3939   
index 0000000..0468d80
 3336         -
-- /dev/null
        3940  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3337   3941   
@@ -0,0 +1,12 @@
        3942  +
{
        3943  +
    "credentials": {
        3944  +
        "access_key_id": "AKIDEXAMPLE",
        3945  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3946  +
    },
        3947  +
    "expiration_in_seconds": 3600,
        3948  +
    "normalize": true,
        3949  +
    "region": "us-east-1",
        3950  +
    "service": "service",
        3951  +
    "sign_body": false,
        3952  +
    "timestamp": "2015-08-30T12:36:00Z"
        3953  +
}
              \
 No newline at end of file
 3338   3954   
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
 3339   3955   
new file mode 100644
 3340   3956   
index 0000000..69526cd
 3341         -
-- /dev/null
        3957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3342   3958   
@@ -0,0 +1,10 @@
        3959  +
GET
        3960  +
/
        3961  +
        3962  +
host:example.amazonaws.com
        3963  +
my-header1:value1 value2 value3
        3964  +
x-amz-date:20150830T123600Z
        3965  +
x-amz-region-set:us-east-1
        3966  +
        3967  +
host;my-header1;x-amz-date;x-amz-region-set
        3968  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3343   3969   
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
 3344   3970   
new file mode 100644
 3345   3971   
index 0000000..d51b4f3
 3346         -
-- /dev/null
        3972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3347   3973   
@@ -0,0 +1 @@
        3974  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3348   3975   
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
 3349   3976   
new file mode 100644
 3350   3977   
index 0000000..8131420
 3351         -
-- /dev/null
        3978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3352   3979   
@@ -0,0 +1,9 @@
        3980  +
GET / HTTP/1.1
        3981  +
Host:example.amazonaws.com
        3982  +
My-Header1:value1
        3983  +
  value2
        3984  +
     value3
        3985  +
X-Amz-Date:20150830T123600Z
        3986  +
X-Amz-Region-Set:us-east-1
        3987  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3988  +
 3353   3989   
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
 3354   3990   
new file mode 100644
 3355   3991   
index 0000000..e4d99fa
 3356         -
-- /dev/null
        3992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3357   3993   
@@ -0,0 +1,4 @@
        3994  +
AWS4-ECDSA-P256-SHA256
        3995  +
20150830T123600Z
        3996  +
20150830/service/aws4_request
        3997  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3358   3998   
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
 3359   3999   
new file mode 100644
 3360   4000   
index 0000000..379dcb2
 3361         -
-- /dev/null
        4001  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3362   4002   
@@ -0,0 +1,4 @@
        4003  +
{
        4004  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4005  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4006  +
}
 3363   4007   
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
 3364   4008   
new file mode 100644
 3365   4009   
index 0000000..3c4d52f
 3366         -
-- /dev/null
        4010  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3367   4011   
@@ -0,0 +1,8 @@
        4012  +
GET
        4013  +
/
        4014  +
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
        4015  +
host:example.amazonaws.com
        4016  +
my-header1:value1 value2 value3
        4017  +
        4018  +
host;my-header1
        4019  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3368   4020   
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
 3369   4021   
new file mode 100644
 3370   4022   
index 0000000..4e63f9a
 3371         -
-- /dev/null
        4023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3372   4024   
@@ -0,0 +1 @@
        4025  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3373   4026   
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
 3374   4027   
new file mode 100644
 3375   4028   
index 0000000..adf1f09
 3376         -
-- /dev/null
        4029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3377   4030   
@@ -0,0 +1,6 @@
        4031  +
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
        4032  +
Host:example.amazonaws.com
        4033  +
My-Header1:value1
        4034  +
  value2
        4035  +
     value3
        4036  +
 3378   4037   
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
 3379   4038   
new file mode 100644
 3380   4039   
index 0000000..e085407
 3381         -
-- /dev/null
        4040  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3382   4041   
@@ -0,0 +1,4 @@
        4042  +
AWS4-ECDSA-P256-SHA256
        4043  +
20150830T123600Z
        4044  +
20150830/service/aws4_request
        4045  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3383   4046   
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
 3384   4047   
new file mode 100644
 3385   4048   
index 0000000..b5026cd
 3386         -
-- /dev/null
        4049  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3387   4050   
@@ -0,0 +1,5 @@
        4051  +
GET / HTTP/1.1
        4052  +
Host:example.amazonaws.com
        4053  +
My-Header1:value1
        4054  +
  value2
        4055  +
     value3
 3388   4056   
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
 3389   4057   
new file mode 100644
 3390   4058   
index 0000000..0468d80
 3391         -
-- /dev/null
        4059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3392   4060   
@@ -0,0 +1,12 @@
        4061  +
{
        4062  +
    "credentials": {
        4063  +
        "access_key_id": "AKIDEXAMPLE",
        4064  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4065  +
    },
        4066  +
    "expiration_in_seconds": 3600,
        4067  +
    "normalize": true,
        4068  +
    "region": "us-east-1",
        4069  +
    "service": "service",
        4070  +
    "sign_body": false,
        4071  +
    "timestamp": "2015-08-30T12:36:00Z"
        4072  +
}
              \
 No newline at end of file
 3393   4073   
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
 3394   4074   
similarity index 99%
 3395   4075   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3396   4076   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3397   4077   
index 9375193..533afdb 100644
 3398         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
        4078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3399   4079   
@@ -1,10 +1,10 @@
 3400   4080   
GET
 3401   4081   
/
 3402   4082   
 3403   4083   
host:example.amazonaws.com
 3404   4084   
my-header1:value4,value1,value3,value2
 3405   4085   
x-amz-date:20150830T123600Z
 3406   4086   
x-amz-region-set:us-east-1
 3407   4087   
 3408   4088   
host;my-header1;x-amz-date;x-amz-region-set
 3409         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4089  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3410   4090   
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
 3411   4091   
new file mode 100644
 3412   4092   
index 0000000..057b426
 3413         -
-- /dev/null
        4093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3414   4094   
@@ -0,0 +1 @@
        4095  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3415   4096   
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
 3416   4097   
new file mode 100644
 3417   4098   
index 0000000..4e4ccf0
 3418         -
-- /dev/null
        4099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3419   4100   
@@ -0,0 +1,10 @@
        4101  +
GET / HTTP/1.1
        4102  +
Host:example.amazonaws.com
        4103  +
My-Header1:value4
        4104  +
My-Header1:value1
        4105  +
My-Header1:value3
        4106  +
My-Header1:value2
        4107  +
X-Amz-Date:20150830T123600Z
        4108  +
X-Amz-Region-Set:us-east-1
        4109  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        4110  +
 3420   4111   
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
 3421   4112   
similarity index 99%
 3422   4113   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3423   4114   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3424   4115   
index 6400baf..e68c952 100644
 3425         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
        4116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3426   4117   
@@ -1,4 +1,4 @@
 3427   4118   
AWS4-ECDSA-P256-SHA256
 3428   4119   
20150830T123600Z
 3429   4120   
20150830/service/aws4_request
 3430         -
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
        4121  +
e1c3b5d34632ffff080330b3bc31906c8988bf1683f4af689ef3f1811952df36
              \
 No newline at end of file
 3431   4122   
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
 3432   4123   
new file mode 100644
 3433   4124   
index 0000000..379dcb2
 3434         -
-- /dev/null
        4125  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3435   4126   
@@ -0,0 +1,4 @@
        4127  +
{
        4128  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4129  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4130  +
}
 3436   4131   
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
 3437   4132   
similarity index 99%
 3438   4133   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3439   4134   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3440   4135   
index ecf494a..68450fe 100644
 3441         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
        4136  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3442   4137   
@@ -1,8 +1,8 @@
 3443   4138   
GET
 3444   4139   
/
 3445   4140   
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
 3446   4141   
host:example.amazonaws.com
 3447   4142   
my-header1:value4,value1,value3,value2
 3448   4143   
 3449   4144   
host;my-header1
 3450         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4145  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3451   4146   
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
 3452   4147   
new file mode 100644
 3453   4148   
index 0000000..9df2eb3
 3454         -
-- /dev/null
        4149  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3455   4150   
@@ -0,0 +1 @@
        4151  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3456   4152   
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
 3457   4153   
new file mode 100644
 3458   4154   
index 0000000..62f8cb7
 3459         -
-- /dev/null
        4155  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3460   4156   
@@ -0,0 +1,7 @@
        4157  +
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
        4158  +
Host:example.amazonaws.com
        4159  +
My-Header1:value4
        4160  +
My-Header1:value1
        4161  +
My-Header1:value3
        4162  +
My-Header1:value2
        4163  +
 3461   4164   
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
 3462   4165   
similarity index 99%
 3463   4166   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3464   4167   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3465   4168   
index b584179..2bcf7b1 100644
 3466         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
        4169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3467   4170   
@@ -1,4 +1,4 @@
 3468   4171   
AWS4-ECDSA-P256-SHA256
 3469   4172   
20150830T123600Z
 3470   4173   
20150830/service/aws4_request
 3471         -
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
        4174  +
e2bf35ea25a1943bf52cfc8348c787db8fd8ca642dc9f2b9443939c2fb0d3c54
              \
 No newline at end of file
 3472   4175   
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
 3473   4176   
similarity index 80%
 3474   4177   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3475   4178   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3476   4179   
index f7bd9e6..2c6f49d 100644
 3477         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        4180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3478   4181   
@@ -1,7 +1,6 @@
 3479   4182   
GET / HTTP/1.1
 3480   4183   
Host:example.amazonaws.com
 3481   4184   
My-Header1:value4
 3482   4185   
My-Header1:value1
 3483   4186   
My-Header1:value3
 3484   4187   
My-Header1:value2
 3485         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3486   4188   
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
 3487   4189   
new file mode 100644
 3488   4190   
index 0000000..0468d80
 3489         -
-- /dev/null
        4191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3490   4192   
@@ -0,0 +1,12 @@
        4193  +
{
        4194  +
    "credentials": {
        4195  +
        "access_key_id": "AKIDEXAMPLE",
        4196  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4197  +
    },
        4198  +
    "expiration_in_seconds": 3600,
        4199  +
    "normalize": true,
        4200  +
    "region": "us-east-1",
        4201  +
    "service": "service",
        4202  +
    "sign_body": false,
        4203  +
    "timestamp": "2015-08-30T12:36:00Z"
        4204  +
}
              \
 No newline at end of file
 3491   4205   
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
 3492   4206   
similarity index 99%
 3493   4207   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3494   4208   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3495   4209   
index e91e952..94b6be5 100644
 3496         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
        4210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3497   4211   
@@ -1,11 +1,11 @@
 3498   4212   
GET
 3499   4213   
/
 3500   4214   
 3501   4215   
host:example.amazonaws.com
 3502   4216   
my-header1:value1
 3503   4217   
my-header2:"a b c"
 3504   4218   
x-amz-date:20150830T123600Z
 3505   4219   
x-amz-region-set:us-east-1
 3506   4220   
 3507   4221   
host;my-header1;my-header2;x-amz-date;x-amz-region-set
 3508         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4222  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3509   4223   
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
 3510   4224   
new file mode 100644
 3511   4225   
index 0000000..bf8c3cb
 3512         -
-- /dev/null
        4226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3513   4227   
@@ -0,0 +1 @@
        4228  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3514   4229   
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
 3515   4230   
new file mode 100644
 3516   4231   
index 0000000..f7f054d
 3517         -
-- /dev/null
        4232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3518   4233   
@@ -0,0 +1,8 @@
        4234  +
GET / HTTP/1.1
        4235  +
Host:example.amazonaws.com
        4236  +
My-Header1: value1
        4237  +
My-Header2: "a   b   c"
        4238  +
X-Amz-Date:20150830T123600Z
        4239  +
X-Amz-Region-Set:us-east-1
        4240  +
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
        4241  +
 3519   4242   
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
 3520   4243   
similarity index 99%
 3521   4244   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3522   4245   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3523   4246   
index 0e407d8..a2c9c05 100644
 3524         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
        4247  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3525   4248   
@@ -1,4 +1,4 @@
 3526   4249   
AWS4-ECDSA-P256-SHA256
 3527   4250   
20150830T123600Z
 3528   4251   
20150830/service/aws4_request
 3529         -
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
        4252  +
18b43001be9b531ebdd8202144dbd7630ea8a35bc328a7d0e561dda03a876095
              \
 No newline at end of file
 3530   4253   
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
 3531   4254   
new file mode 100644
 3532   4255   
index 0000000..379dcb2
 3533         -
-- /dev/null
        4256  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3534   4257   
@@ -0,0 +1,4 @@
        4258  +
{
        4259  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4260  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4261  +
}
 3535   4262   
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
 3536   4263   
similarity index 99%
 3537   4264   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3538   4265   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3539   4266   
index 8a3b042..3a51150 100644
 3540         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
        4267  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3541   4268   
@@ -1,9 +1,9 @@
 3542   4269   
GET
 3543   4270   
/
 3544   4271   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host%3Bmy-header1%3Bmy-header2
 3545   4272   
host:example.amazonaws.com
 3546   4273   
my-header1:value1
 3547   4274   
my-header2:"a b c"
 3548   4275   
 3549   4276   
host;my-header1;my-header2
 3550         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4277  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3551   4278   
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
 3552   4279   
new file mode 100644
 3553   4280   
index 0000000..0033053
 3554         -
-- /dev/null
        4281  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3555   4282   
@@ -0,0 +1 @@
        4283  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3556   4284   
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
 3557   4285   
new file mode 100644
 3558   4286   
index 0000000..1537888
 3559         -
-- /dev/null
        4287  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3560   4288   
@@ -0,0 +1,5 @@
        4289  +
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
        4290  +
Host:example.amazonaws.com
        4291  +
My-Header1: value1
        4292  +
My-Header2: "a   b   c"
        4293  +
 3561   4294   
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
 3562   4295   
similarity index 99%
 3563   4296   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3564   4297   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3565   4298   
index 5eead25..633dc1f 100644
 3566         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
        4299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3567   4300   
@@ -1,4 +1,4 @@
 3568   4301   
AWS4-ECDSA-P256-SHA256
 3569   4302   
20150830T123600Z
 3570   4303   
20150830/service/aws4_request
 3571         -
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
        4304  +
4f92ebcf5f0844588e443a2243fafdb64319c6d1ad913c07686129b9991326a3
              \
 No newline at end of file
 3572   4305   
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
 3573   4306   
similarity index 75%
 3574   4307   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3575   4308   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3576   4309   
index 901f36c..ad1ea98 100644
 3577         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4310  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3578   4311   
@@ -1,5 +1,4 @@
 3579   4312   
GET / HTTP/1.1
 3580   4313   
Host:example.amazonaws.com
 3581   4314   
My-Header1: value1
 3582   4315   
My-Header2: "a   b   c"
 3583         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3584   4316   
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
 3585   4317   
new file mode 100644
 3586   4318   
index 0000000..0468d80
 3587         -
-- /dev/null
        4319  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3588   4320   
@@ -0,0 +1,12 @@
        4321  +
{
        4322  +
    "credentials": {
        4323  +
        "access_key_id": "AKIDEXAMPLE",
        4324  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4325  +
    },
        4326  +
    "expiration_in_seconds": 3600,
        4327  +
    "normalize": true,
        4328  +
    "region": "us-east-1",
        4329  +
    "service": "service",
        4330  +
    "sign_body": false,
        4331  +
    "timestamp": "2015-08-30T12:36:00Z"
        4332  +
}
              \
 No newline at end of file
 3589   4333   
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
 3590   4334   
similarity index 99%
 3591   4335   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3592   4336   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3593   4337   
index 47e7128..76db73d 100644
 3594         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
        4338  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3595   4339   
@@ -1,9 +1,9 @@
 3596   4340   
GET
 3597   4341   
/
 3598   4342   
 3599   4343   
host:example.amazonaws.com
 3600   4344   
x-amz-date:20150830T123600Z
 3601   4345   
x-amz-region-set:us-east-1
 3602   4346   
 3603   4347   
host;x-amz-date;x-amz-region-set
 3604         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4348  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3605   4349   
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
 3606   4350   
new file mode 100644
 3607   4351   
index 0000000..cbd6ae2
 3608         -
-- /dev/null
        4352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3609   4353   
@@ -0,0 +1 @@
        4354  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3610   4355   
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
 3611   4356   
new file mode 100644
 3612   4357   
index 0000000..a343fcf
 3613         -
-- /dev/null
        4358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3614   4359   
@@ -0,0 +1,6 @@
        4360  +
GET /example/.. HTTP/1.1
        4361  +
Host:example.amazonaws.com
        4362  +
X-Amz-Date:20150830T123600Z
        4363  +
X-Amz-Region-Set:us-east-1
        4364  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4365  +
 3615   4366   
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
 3616   4367   
similarity index 99%
 3617   4368   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3618   4369   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3619   4370   
index 95d7219..600f1d8 100644
 3620         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
        4371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3621   4372   
@@ -1,4 +1,4 @@
 3622   4373   
AWS4-ECDSA-P256-SHA256
 3623   4374   
20150830T123600Z
 3624   4375   
20150830/service/aws4_request
 3625         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4376  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3626   4377   
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
 3627   4378   
new file mode 100644
 3628   4379   
index 0000000..379dcb2
 3629         -
-- /dev/null
        4380  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3630   4381   
@@ -0,0 +1,4 @@
        4382  +
{
        4383  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4384  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4385  +
}
 3631   4386   
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
 3632   4387   
similarity index 99%
 3633   4388   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3634   4389   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3635   4390   
index a34ea26..779c51c 100644
 3636         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
        4391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3637   4392   
@@ -1,7 +1,7 @@
 3638   4393   
GET
 3639   4394   
/
 3640   4395   
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
 3641   4396   
host:example.amazonaws.com
 3642   4397   
 3643   4398   
host
 3644         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4399  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3645   4400   
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
 3646   4401   
new file mode 100644
 3647   4402   
index 0000000..3cc88e6
 3648         -
-- /dev/null
        4403  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3649   4404   
@@ -0,0 +1 @@
        4405  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3650   4406   
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
 3651   4407   
new file mode 100644
 3652   4408   
index 0000000..f68dde8
 3653         -
-- /dev/null
        4409  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3654   4410   
@@ -0,0 +1,3 @@
        4411  +
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
        4412  +
Host:example.amazonaws.com
        4413  +
 3655   4414   
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
 3656   4415   
similarity index 99%
 3657   4416   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3658   4417   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3659   4418   
index 48f855c..6e29a7e 100644
 3660         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
        4419  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3661   4420   
@@ -1,4 +1,4 @@
 3662   4421   
AWS4-ECDSA-P256-SHA256
 3663   4422   
20150830T123600Z
 3664   4423   
20150830/service/aws4_request
 3665         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4424  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3666   4425   
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
 3667   4426   
similarity index 65%
 3668   4427   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3669   4428   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3670   4429   
index 9d6d7ca..6aa9f99 100644
 3671         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4430  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3672   4431   
@@ -1,3 +1,2 @@
 3673   4432   
GET /example/.. HTTP/1.1
 3674   4433   
Host:example.amazonaws.com
 3675         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3676   4434   
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
 3677   4435   
new file mode 100644
 3678   4436   
index 0000000..0468d80
 3679         -
-- /dev/null
        4437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3680   4438   
@@ -0,0 +1,12 @@
        4439  +
{
        4440  +
    "credentials": {
        4441  +
        "access_key_id": "AKIDEXAMPLE",
        4442  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4443  +
    },
        4444  +
    "expiration_in_seconds": 3600,
        4445  +
    "normalize": true,
        4446  +
    "region": "us-east-1",
        4447  +
    "service": "service",
        4448  +
    "sign_body": false,
        4449  +
    "timestamp": "2015-08-30T12:36:00Z"
        4450  +
}
              \
 No newline at end of file
 3681   4451   
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
 3682   4452   
similarity index 99%
 3683   4453   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3684   4454   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3685   4455   
index 47e7128..76db73d 100644
 3686         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
        4456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3687   4457   
@@ -1,9 +1,9 @@
 3688   4458   
GET
 3689   4459   
/
 3690   4460   
 3691   4461   
host:example.amazonaws.com
 3692   4462   
x-amz-date:20150830T123600Z
 3693   4463   
x-amz-region-set:us-east-1
 3694   4464   
 3695   4465   
host;x-amz-date;x-amz-region-set
 3696         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4466  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3697   4467   
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
 3698   4468   
new file mode 100644
 3699   4469   
index 0000000..f7a7ebe
 3700         -
-- /dev/null
        4470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3701   4471   
@@ -0,0 +1 @@
        4472  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3702   4473   
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
 3703   4474   
new file mode 100644
 3704   4475   
index 0000000..9d2c50d
 3705         -
-- /dev/null
        4476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3706   4477   
@@ -0,0 +1,6 @@
        4478  +
GET /example1/example2/../.. HTTP/1.1
        4479  +
Host:example.amazonaws.com
        4480  +
X-Amz-Date:20150830T123600Z
        4481  +
X-Amz-Region-Set:us-east-1
        4482  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4483  +
 3707   4484   
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
 3708   4485   
similarity index 99%
 3709   4486   
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
 3710   4487   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3711   4488   
index 95d7219..600f1d8 100644
 3712         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-string-to-sign.txt
        4489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3713   4490   
@@ -1,4 +1,4 @@
 3714   4491   
AWS4-ECDSA-P256-SHA256
 3715   4492   
20150830T123600Z
 3716   4493   
20150830/service/aws4_request
 3717         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4494  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3718   4495   
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
 3719   4496   
new file mode 100644
 3720   4497   
index 0000000..379dcb2
 3721         -
-- /dev/null
        4498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3722   4499   
@@ -0,0 +1,4 @@
        4500  +
{
        4501  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4502  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4503  +
}
 3723   4504   
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
 3724   4505   
similarity index 99%
 3725   4506   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3726   4507   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3727   4508   
index a34ea26..779c51c 100644
 3728         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
        4509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3729   4510   
@@ -1,7 +1,7 @@
 3730   4511   
GET
 3731   4512   
/
 3732   4513   
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
 3733   4514   
host:example.amazonaws.com
 3734   4515   
 3735   4516   
host
 3736         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4517  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3737   4518   
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
 3738   4519   
new file mode 100644
 3739   4520   
index 0000000..45ef286
 3740         -
-- /dev/null
        4521  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3741   4522   
@@ -0,0 +1 @@
        4523  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3742   4524   
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
 3743   4525   
new file mode 100644
 3744   4526   
index 0000000..0d16f66
 3745         -
-- /dev/null
        4527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3746   4528   
@@ -0,0 +1,3 @@
        4529  +
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
        4530  +
Host:example.amazonaws.com
        4531  +
 3747   4532   
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
 3748   4533   
similarity index 99%
 3749   4534   
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
 3750   4535   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3751   4536   
index 48f855c..6e29a7e 100644
 3752         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-string-to-sign.txt
        4537  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3753   4538   
@@ -1,4 +1,4 @@
 3754   4539   
AWS4-ECDSA-P256-SHA256
 3755   4540   
20150830T123600Z
 3756   4541   
20150830/service/aws4_request
 3757         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4542  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 3758   4543   
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
 3759   4544   
similarity index 70%
 3760   4545   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3761   4546   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3762   4547   
index cfd4e8b..a856c10 100644
 3763         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4548  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3764   4549   
@@ -1,3 +1,2 @@
 3765   4550   
GET /example1/example2/../.. HTTP/1.1
 3766   4551   
Host:example.amazonaws.com
 3767         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3768   4552   
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
 3769   4553   
new file mode 100644
 3770   4554   
index 0000000..7bee5c7
 3771         -
-- /dev/null
        4555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3772   4556   
@@ -0,0 +1,12 @@
        4557  +
{
        4558  +
    "credentials": {
        4559  +
        "access_key_id": "AKIDEXAMPLE",
        4560  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4561  +
    },
        4562  +
    "expiration_in_seconds": 3600,
        4563  +
    "normalize": false,
        4564  +
    "region": "us-east-1",
        4565  +
    "service": "service",
        4566  +
    "sign_body": false,
        4567  +
    "timestamp": "2015-08-30T12:36:00Z"
        4568  +
}
              \
 No newline at end of file
 3773   4569   
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
 3774   4570   
similarity index 99%
 3775   4571   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3776   4572   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3777   4573   
index 5e1d1cf..e4e6d57 100644
 3778         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
        4574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3779   4575   
@@ -1,9 +1,9 @@
 3780   4576   
GET
 3781   4577   
/example1/example2/../..
 3782   4578   
 3783   4579   
host:example.amazonaws.com
 3784   4580   
x-amz-date:20150830T123600Z
 3785   4581   
x-amz-region-set:us-east-1
 3786   4582   
 3787   4583   
host;x-amz-date;x-amz-region-set
 3788         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4584  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3789   4585   
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
 3790   4586   
new file mode 100644
 3791   4587   
index 0000000..2d1b47c
 3792         -
-- /dev/null
        4588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3793   4589   
@@ -0,0 +1 @@
        4590  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3794   4591   
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
 3795   4592   
new file mode 100644
 3796   4593   
index 0000000..7158179
 3797         -
-- /dev/null
        4594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3798   4595   
@@ -0,0 +1,6 @@
        4596  +
GET /example1/example2/../.. HTTP/1.1
        4597  +
Host:example.amazonaws.com
        4598  +
X-Amz-Date:20150830T123600Z
        4599  +
X-Amz-Region-Set:us-east-1
        4600  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4601  +
 3799   4602   
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
 3800   4603   
similarity index 99%
 3801   4604   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3802   4605   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3803   4606   
index 1cca6cf..db60c8e 100644
 3804         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
        4607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3805   4608   
@@ -1,4 +1,4 @@
 3806   4609   
AWS4-ECDSA-P256-SHA256
 3807   4610   
20150830T123600Z
 3808   4611   
20150830/service/aws4_request
 3809         -
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
        4612  +
7bad1fab948577ec4e860ff2bb06ce9b69f0dd60eb8a9ad7c016b584254f9b5b
              \
 No newline at end of file
 3810   4613   
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
 3811   4614   
new file mode 100644
 3812   4615   
index 0000000..379dcb2
 3813         -
-- /dev/null
        4616  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3814   4617   
@@ -0,0 +1,4 @@
        4618  +
{
        4619  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4620  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4621  +
}
 3815   4622   
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
 3816   4623   
similarity index 99%
 3817   4624   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3818   4625   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3819   4626   
index 95dc104..0d963ba 100644
 3820         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
        4627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3821   4628   
@@ -1,7 +1,7 @@
 3822   4629   
GET
 3823   4630   
/example1/example2/../..
 3824   4631   
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
 3825   4632   
host:example.amazonaws.com
 3826   4633   
 3827   4634   
host
 3828         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4635  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3829   4636   
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
 3830   4637   
new file mode 100644
 3831   4638   
index 0000000..ae774e4
 3832         -
-- /dev/null
        4639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3833   4640   
@@ -0,0 +1 @@
        4641  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3834   4642   
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
 3835   4643   
new file mode 100644
 3836   4644   
index 0000000..be6b86e
 3837         -
-- /dev/null
        4645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3838   4646   
@@ -0,0 +1,3 @@
        4647  +
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
        4648  +
Host:example.amazonaws.com
        4649  +
 3839   4650   
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
 3840   4651   
similarity index 99%
 3841   4652   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3842   4653   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3843   4654   
index 50edce6..fcc70cd 100644
 3844         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
        4655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3845   4656   
@@ -1,4 +1,4 @@
 3846   4657   
AWS4-ECDSA-P256-SHA256
 3847   4658   
20150830T123600Z
 3848   4659   
20150830/service/aws4_request
 3849         -
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
        4660  +
504892d7f7262dd98d79ab7f3bb6f918cd59d491aacb2d76450f6e065479b31a
              \
 No newline at end of file
 3850   4661   
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
 3851   4662   
new file mode 100644
 3852   4663   
index 0000000..a856c10
 3853         -
-- /dev/null
        4664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3854   4665   
@@ -0,0 +1,2 @@
        4666  +
GET /example1/example2/../.. HTTP/1.1
        4667  +
Host:example.amazonaws.com
 3855   4668   
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
 3856   4669   
new file mode 100644
 3857   4670   
index 0000000..7bee5c7
 3858         -
-- /dev/null
        4671  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3859   4672   
@@ -0,0 +1,12 @@
        4673  +
{
        4674  +
    "credentials": {
        4675  +
        "access_key_id": "AKIDEXAMPLE",
        4676  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4677  +
    },
        4678  +
    "expiration_in_seconds": 3600,
        4679  +
    "normalize": false,
        4680  +
    "region": "us-east-1",
        4681  +
    "service": "service",
        4682  +
    "sign_body": false,
        4683  +
    "timestamp": "2015-08-30T12:36:00Z"
        4684  +
}
              \
 No newline at end of file
 3860   4685   
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
 3861   4686   
similarity index 99%
 3862   4687   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3863   4688   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3864   4689   
index d6a0abe..22def1a 100644
 3865         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
        4690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3866   4691   
@@ -1,9 +1,9 @@
 3867   4692   
GET
 3868   4693   
/example/..
 3869   4694   
 3870   4695   
host:example.amazonaws.com
 3871   4696   
x-amz-date:20150830T123600Z
 3872   4697   
x-amz-region-set:us-east-1
 3873   4698   
 3874   4699   
host;x-amz-date;x-amz-region-set
 3875         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4700  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3876   4701   
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
 3877   4702   
new file mode 100644
 3878   4703   
index 0000000..9251bad
 3879         -
-- /dev/null
        4704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3880   4705   
@@ -0,0 +1 @@
        4706  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3881   4707   
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
 3882   4708   
new file mode 100644
 3883   4709   
index 0000000..f1bb60f
 3884         -
-- /dev/null
        4710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3885   4711   
@@ -0,0 +1,6 @@
        4712  +
GET /example/.. HTTP/1.1
        4713  +
Host:example.amazonaws.com
        4714  +
X-Amz-Date:20150830T123600Z
        4715  +
X-Amz-Region-Set:us-east-1
        4716  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4717  +
 3886   4718   
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
 3887   4719   
similarity index 99%
 3888   4720   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3889   4721   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3890   4722   
index 4a34e93..5673a20 100644
 3891         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
        4723  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3892   4724   
@@ -1,4 +1,4 @@
 3893   4725   
AWS4-ECDSA-P256-SHA256
 3894   4726   
20150830T123600Z
 3895   4727   
20150830/service/aws4_request
 3896         -
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
        4728  +
c859b5032f2ebd5df0285ff633b495b0e6e962e5adb94731c95e8e993a9a8213
              \
 No newline at end of file
 3897   4729   
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
 3898   4730   
new file mode 100644
 3899   4731   
index 0000000..379dcb2
 3900         -
-- /dev/null
        4732  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3901   4733   
@@ -0,0 +1,4 @@
        4734  +
{
        4735  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4736  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4737  +
}
 3902   4738   
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
 3903   4739   
similarity index 99%
 3904   4740   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3905   4741   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3906   4742   
index b1d123e..a1c22e0 100644
 3907         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
        4743  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3908   4744   
@@ -1,7 +1,7 @@
 3909   4745   
GET
 3910   4746   
/example/..
 3911   4747   
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
 3912   4748   
host:example.amazonaws.com
 3913   4749   
 3914   4750   
host
 3915         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4751  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3916   4752   
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
 3917   4753   
new file mode 100644
 3918   4754   
index 0000000..9f0f686
 3919         -
-- /dev/null
        4755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3920   4756   
@@ -0,0 +1 @@
        4757  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3921   4758   
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
 3922   4759   
new file mode 100644
 3923   4760   
index 0000000..d1d451a
 3924         -
-- /dev/null
        4761  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3925   4762   
@@ -0,0 +1,3 @@
        4763  +
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
        4764  +
Host:example.amazonaws.com
        4765  +
 3926   4766   
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
 3927   4767   
similarity index 99%
 3928   4768   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3929   4769   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3930   4770   
index a17f5ab..81b41e8 100644
 3931         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
        4771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3932   4772   
@@ -1,4 +1,4 @@
 3933   4773   
AWS4-ECDSA-P256-SHA256
 3934   4774   
20150830T123600Z
 3935   4775   
20150830/service/aws4_request
 3936         -
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
        4776  +
bbbb3668f996906ebb2c96ebdc2418af99656315adaf647989ab336c88fb516e
              \
 No newline at end of file
 3937   4777   
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
 3938   4778   
new file mode 100644
 3939   4779   
index 0000000..6aa9f99
 3940         -
-- /dev/null
        4780  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3941   4781   
@@ -0,0 +1,2 @@
        4782  +
GET /example/.. HTTP/1.1
        4783  +
Host:example.amazonaws.com
 3942   4784   
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
 3943   4785   
new file mode 100644
 3944   4786   
index 0000000..0468d80
 3945         -
-- /dev/null
        4787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3946   4788   
@@ -0,0 +1,12 @@
        4789  +
{
        4790  +
    "credentials": {
        4791  +
        "access_key_id": "AKIDEXAMPLE",
        4792  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4793  +
    },
        4794  +
    "expiration_in_seconds": 3600,
        4795  +
    "normalize": true,
        4796  +
    "region": "us-east-1",
        4797  +
    "service": "service",
        4798  +
    "sign_body": false,
        4799  +
    "timestamp": "2015-08-30T12:36:00Z"
        4800  +
}
              \
 No newline at end of file
 3947   4801   
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
 3948   4802   
similarity index 99%
 3949   4803   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3950   4804   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3951   4805   
index 47e7128..76db73d 100644
 3952         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
        4806  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3953   4807   
@@ -1,9 +1,9 @@
 3954   4808   
GET
 3955   4809   
/
 3956   4810   
 3957   4811   
host:example.amazonaws.com
 3958   4812   
x-amz-date:20150830T123600Z
 3959   4813   
x-amz-region-set:us-east-1
 3960   4814   
 3961   4815   
host;x-amz-date;x-amz-region-set
 3962         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4816  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3963   4817   
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
 3964   4818   
new file mode 100644
 3965   4819   
index 0000000..ca6e84e
 3966         -
-- /dev/null
        4820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3967   4821   
@@ -0,0 +1 @@
        4822  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3968   4823   
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
 3969   4824   
new file mode 100644
 3970   4825   
index 0000000..a7c764c
 3971         -
-- /dev/null
        4826  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3972   4827   
@@ -0,0 +1,6 @@
        4828  +
GET /./ HTTP/1.1
        4829  +
Host:example.amazonaws.com
        4830  +
X-Amz-Date:20150830T123600Z
        4831  +
X-Amz-Region-Set:us-east-1
        4832  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4833  +
 3973   4834   
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
 3974   4835   
similarity index 99%
 3975   4836   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3976   4837   
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
 3977   4838   
index 95d7219..600f1d8 100644
 3978         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
        4839  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-string-to-sign.txt
 3979   4840   
@@ -1,4 +1,4 @@
 3980   4841   
AWS4-ECDSA-P256-SHA256
 3981   4842   
20150830T123600Z
 3982   4843   
20150830/service/aws4_request
 3983         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        4844  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 3984   4845   
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
 3985   4846   
new file mode 100644
 3986   4847   
index 0000000..379dcb2
 3987         -
-- /dev/null
        4848  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3988   4849   
@@ -0,0 +1,4 @@
        4850  +
{
        4851  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4852  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4853  +
}
 3989   4854   
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
 3990   4855   
similarity index 99%
 3991   4856   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3992   4857   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3993   4858   
index a34ea26..779c51c 100644
 3994         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
        4859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3995   4860   
@@ -1,7 +1,7 @@
 3996   4861   
GET
 3997   4862   
/
 3998   4863   
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
 3999   4864   
host:example.amazonaws.com
 4000   4865   
 4001   4866   
host
 4002         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4867  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4003   4868   
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
 4004   4869   
new file mode 100644
 4005   4870   
index 0000000..4b6ed09
 4006         -
-- /dev/null
        4871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 4007   4872   
@@ -0,0 +1 @@
        4873  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 4008   4874   
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
 4009   4875   
new file mode 100644
 4010   4876   
index 0000000..d6c7176
 4011         -
-- /dev/null
        4877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 4012   4878   
@@ -0,0 +1,3 @@
        4879  +
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
        4880  +
Host:example.amazonaws.com
        4881  +
 4013   4882   
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
 4014   4883   
similarity index 99%
 4015   4884   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 4016   4885   
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
 4017   4886   
index 48f855c..6e29a7e 100644
 4018         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
        4887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-string-to-sign.txt
 4019   4888   
@@ -1,4 +1,4 @@
 4020   4889   
AWS4-ECDSA-P256-SHA256
 4021   4890   
20150830T123600Z
 4022   4891   
20150830/service/aws4_request
 4023         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        4892  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4024   4893   
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
 4025   4894   
similarity index 61%
 4026   4895   
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
 4027   4896   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 4028   4897   
index f3537b7..2c5ff38 100644
 4029         -
-- 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
        4898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 4030   4899   
@@ -1,3 +1,2 @@
 4031   4900   
GET /./ HTTP/1.1
 4032   4901   
Host:example.amazonaws.com
 4033         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4034   4902   
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
 4035   4903   
new file mode 100644
 4036   4904   
index 0000000..7bee5c7
 4037         -
-- /dev/null
        4905  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 4038   4906   
@@ -0,0 +1,12 @@
        4907  +
{
        4908  +
    "credentials": {
        4909  +
        "access_key_id": "AKIDEXAMPLE",
        4910  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4911  +
    },
        4912  +
    "expiration_in_seconds": 3600,
        4913  +
    "normalize": false,
        4914  +
    "region": "us-east-1",
        4915  +
    "service": "service",
        4916  +
    "sign_body": false,
        4917  +
    "timestamp": "2015-08-30T12:36:00Z"
        4918  +
}
              \
 No newline at end of file
 4039   4919   
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
 4040   4920   
similarity index 99%
 4041   4921   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 4042   4922   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 4043   4923   
index d05303d..9257ac4 100644
 4044         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
        4924  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 4045   4925   
@@ -1,9 +1,9 @@
 4046   4926   
GET
 4047   4927   
/./
 4048   4928   
 4049   4929   
host:example.amazonaws.com
 4050   4930   
x-amz-date:20150830T123600Z
 4051   4931   
x-amz-region-set:us-east-1
 4052   4932   
 4053   4933   
host;x-amz-date;x-amz-region-set
 4054         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4934  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4055   4935   
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
 4056   4936   
new file mode 100644
 4057   4937   
index 0000000..2eb1aa5
 4058         -
-- /dev/null
        4938  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 4059   4939   
@@ -0,0 +1 @@
        4940  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 4060   4941   
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
 4061   4942   
new file mode 100644
 4062   4943   
index 0000000..df3b1da
 4063         -
-- /dev/null
        4944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 4064   4945   
@@ -0,0 +1,6 @@
        4946  +
GET /./ HTTP/1.1
        4947  +
Host:example.amazonaws.com
        4948  +
X-Amz-Date:20150830T123600Z
        4949  +
X-Amz-Region-Set:us-east-1
        4950  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4951  +
 4065   4952   
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
 4066   4953   
similarity index 99%
 4067   4954   
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
 4068   4955   
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
 4069   4956   
index e1bfb39..754b3ed 100644
 4070         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
        4957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 4071   4958   
@@ -1,4 +1,4 @@
 4072   4959   
AWS4-ECDSA-P256-SHA256
 4073   4960   
20150830T123600Z
 4074   4961   
20150830/service/aws4_request
 4075         -
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
        4962  +
a14dce0217a32357c623c3db790988b6b5aa1494a527158b06d3ca4444561a4b
              \
 No newline at end of file
 4076   4963   
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
 4077   4964   
new file mode 100644
 4078   4965   
index 0000000..379dcb2
 4079         -
-- /dev/null
        4966  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 4080   4967   
@@ -0,0 +1,4 @@
        4968  +
{
        4969  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4970  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4971  +
}
 4081   4972   
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
 4082   4973   
similarity index 99%
 4083   4974   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4084   4975   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4085   4976   
index f048d0f..c8edce3 100644
 4086         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
        4977  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 4087   4978   
@@ -1,7 +1,7 @@
 4088   4979   
GET
 4089   4980   
/./
 4090   4981   
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
 4091   4982   
host:example.amazonaws.com
 4092   4983   
 4093   4984   
host
 4094         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        4985  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4095   4986   
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
 4096   4987   
new file mode 100644
 4097   4988   
index 0000000..d3af3b8
 4098         -
-- /dev/null
        4989  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 4099   4990   
@@ -0,0 +1 @@
        4991  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 4100   4992   
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
 4101   4993   
new file mode 100644
 4102   4994   
index 0000000..eb38155
 4103         -
-- /dev/null
        4995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 4104   4996   
@@ -0,0 +1,3 @@
        4997  +
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
        4998  +
Host:example.amazonaws.com
        4999  +
 4105   5000   
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
 4106   5001   
similarity index 99%
 4107   5002   
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
 4108   5003   
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
 4109   5004   
index bfcf245..4f20b8f 100644
 4110         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
        5005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 4111   5006   
@@ -1,4 +1,4 @@
 4112   5007   
AWS4-ECDSA-P256-SHA256
 4113   5008   
20150830T123600Z
 4114   5009   
20150830/service/aws4_request
 4115         -
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
        5010  +
0d146fed00cdf50d7a87864583b7a33ca75322aab46b0a2d204f5d0c13440917
              \
 No newline at end of file
 4116   5011   
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
 4117   5012   
new file mode 100644
 4118   5013   
index 0000000..2c5ff38
 4119         -
-- /dev/null
        5014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 4120   5015   
@@ -0,0 +1,2 @@
        5016  +
GET /./ HTTP/1.1
        5017  +
Host:example.amazonaws.com
 4121   5018   
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
 4122   5019   
new file mode 100644
 4123   5020   
index 0000000..0468d80
 4124         -
-- /dev/null
        5021  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 4125   5022   
@@ -0,0 +1,12 @@
        5023  +
{
        5024  +
    "credentials": {
        5025  +
        "access_key_id": "AKIDEXAMPLE",
        5026  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5027  +
    },
        5028  +
    "expiration_in_seconds": 3600,
        5029  +
    "normalize": true,
        5030  +
    "region": "us-east-1",
        5031  +
    "service": "service",
        5032  +
    "sign_body": false,
        5033  +
    "timestamp": "2015-08-30T12:36:00Z"
        5034  +
}
              \
 No newline at end of file
 4126   5035   
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
 4127   5036   
similarity index 99%
 4128   5037   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 4129   5038   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 4130   5039   
index 47e7128..76db73d 100644
 4131         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
        5040  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 4132   5041   
@@ -1,9 +1,9 @@
 4133   5042   
GET
 4134   5043   
/
 4135   5044   
 4136   5045   
host:example.amazonaws.com
 4137   5046   
x-amz-date:20150830T123600Z
 4138   5047   
x-amz-region-set:us-east-1
 4139   5048   
 4140   5049   
host;x-amz-date;x-amz-region-set
 4141         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5050  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4142   5051   
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
 4143   5052   
new file mode 100644
 4144   5053   
index 0000000..0c049ca
 4145         -
-- /dev/null
        5054  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 4146   5055   
@@ -0,0 +1 @@
        5056  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 4147   5057   
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
 4148   5058   
new file mode 100644
 4149   5059   
index 0000000..f4bb1e1
 4150         -
-- /dev/null
        5060  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 4151   5061   
@@ -0,0 +1,6 @@
        5062  +
GET // HTTP/1.1
        5063  +
Host:example.amazonaws.com
        5064  +
X-Amz-Date:20150830T123600Z
        5065  +
X-Amz-Region-Set:us-east-1
        5066  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        5067  +
 4152   5068   
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
 4153   5069   
similarity index 99%
 4154   5070   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 4155   5071   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4156   5072   
index 95d7219..600f1d8 100644
 4157         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
        5073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 4158   5074   
@@ -1,4 +1,4 @@
 4159   5075   
AWS4-ECDSA-P256-SHA256
 4160   5076   
20150830T123600Z
 4161   5077   
20150830/service/aws4_request
 4162         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
        5078  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4163   5079   
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
 4164   5080   
new file mode 100644
 4165   5081   
index 0000000..379dcb2
 4166         -
-- /dev/null
        5082  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 4167   5083   
@@ -0,0 +1,4 @@
        5084  +
{
        5085  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5086  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5087  +
}
 4168   5088   
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
 4169   5089   
similarity index 99%
 4170   5090   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 4171   5091   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4172   5092   
index a34ea26..779c51c 100644
 4173         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
        5093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 4174   5094   
@@ -1,7 +1,7 @@
 4175   5095   
GET
 4176   5096   
/
 4177   5097   
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
 4178   5098   
host:example.amazonaws.com
 4179   5099   
 4180   5100   
host
 4181         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5101  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4182   5102   
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
 4183   5103   
new file mode 100644
 4184   5104   
index 0000000..ca52293
 4185         -
-- /dev/null
        5105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 4186   5106   
@@ -0,0 +1 @@
        5107  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 4187   5108   
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
 4188   5109   
new file mode 100644
 4189   5110   
index 0000000..4a212a9
 4190         -
-- /dev/null
        5111  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 4191   5112   
@@ -0,0 +1,3 @@
        5113  +
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
        5114  +
Host:example.amazonaws.com
        5115  +
 4192   5116   
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
 4193   5117   
similarity index 99%
 4194   5118   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 4195   5119   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4196   5120   
index 48f855c..6e29a7e 100644
 4197         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
        5121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 4198   5122   
@@ -1,4 +1,4 @@
 4199   5123   
AWS4-ECDSA-P256-SHA256
 4200   5124   
20150830T123600Z
 4201   5125   
20150830/service/aws4_request
 4202         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
        5126  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4203   5127   
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
 4204   5128   
similarity index 61%
 4205   5129   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 4206   5130   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4207   5131   
index ede8e3c..25bc21e 100644
 4208         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        5132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 4209   5133   
@@ -1,3 +1,2 @@
 4210   5134   
GET // HTTP/1.1
 4211   5135   
Host:example.amazonaws.com
 4212         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4213   5136   
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
 4214   5137   
new file mode 100644
 4215   5138   
index 0000000..0468d80
 4216         -
-- /dev/null
        5139  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 4217   5140   
@@ -0,0 +1,12 @@
        5141  +
{
        5142  +
    "credentials": {
        5143  +
        "access_key_id": "AKIDEXAMPLE",
        5144  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5145  +
    },
        5146  +
    "expiration_in_seconds": 3600,
        5147  +
    "normalize": true,
        5148  +
    "region": "us-east-1",
        5149  +
    "service": "service",
        5150  +
    "sign_body": false,
        5151  +
    "timestamp": "2015-08-30T12:36:00Z"
        5152  +
}
              \
 No newline at end of file
 4218   5153   
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
 4219   5154   
similarity index 99%
 4220   5155   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4221   5156   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4222   5157   
index 2e36c20..a51f1ba 100644
 4223         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
        5158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 4224   5159   
@@ -1,9 +1,9 @@
 4225   5160   
GET
 4226   5161   
/example
 4227   5162   
 4228   5163   
host:example.amazonaws.com
 4229   5164   
x-amz-date:20150830T123600Z
 4230   5165   
x-amz-region-set:us-east-1
 4231   5166   
 4232   5167   
host;x-amz-date;x-amz-region-set
 4233         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5168  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4234   5169   
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
 4235   5170   
new file mode 100644
 4236   5171   
index 0000000..f5c871f
 4237         -
-- /dev/null
        5172  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 4238   5173   
@@ -0,0 +1 @@
        5174  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 4239   5175   
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
 4240   5176   
new file mode 100644
 4241   5177   
index 0000000..bda4718
 4242         -
-- /dev/null
        5178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 4243   5179   
@@ -0,0 +1,6 @@
        5180  +
GET /./example HTTP/1.1
        5181  +
Host:example.amazonaws.com
        5182  +
X-Amz-Date:20150830T123600Z
        5183  +
X-Amz-Region-Set:us-east-1
        5184  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        5185  +
 4244   5186   
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
 4245   5187   
similarity index 99%
 4246   5188   
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
 4247   5189   
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
 4248   5190   
index cd30e8b..2ffe879 100644
 4249         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-string-to-sign.txt
        5191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-string-to-sign.txt
 4250   5192   
@@ -1,4 +1,4 @@
 4251   5193   
AWS4-ECDSA-P256-SHA256
 4252   5194   
20150830T123600Z
 4253   5195   
20150830/service/aws4_request
 4254         -
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
        5196  +
823cb165e35e124f862c99c89a46414c24e3800f149377591e35a4848317e825
              \
 No newline at end of file
 4255   5197   
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
 4256   5198   
new file mode 100644
 4257   5199   
index 0000000..379dcb2
 4258         -
-- /dev/null
        5200  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 4259   5201   
@@ -0,0 +1,4 @@
        5202  +
{
        5203  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5204  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5205  +
}
 4260   5206   
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
 4261   5207   
similarity index 99%
 4262   5208   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4263   5209   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4264   5210   
index 77cf28d..45151ea 100644
 4265         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
        5211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 4266   5212   
@@ -1,7 +1,7 @@
 4267   5213   
GET
 4268   5214   
/example
 4269   5215   
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
 4270   5216   
host:example.amazonaws.com
 4271   5217   
 4272   5218   
host
 4273         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5219  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4274   5220   
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
 4275   5221   
new file mode 100644
 4276   5222   
index 0000000..11ad7bf
 4277         -
-- /dev/null
        5223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 4278   5224   
@@ -0,0 +1 @@
        5225  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 4279   5226   
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
 4280   5227   
new file mode 100644
 4281   5228   
index 0000000..a7537b1
 4282         -
-- /dev/null
        5229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 4283   5230   
@@ -0,0 +1,3 @@
        5231  +
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
        5232  +
Host:example.amazonaws.com
        5233  +
 4284   5234   
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
 4285   5235   
similarity index 99%
 4286   5236   
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
 4287   5237   
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
 4288   5238   
index 49d9b24..b486672 100644
 4289         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-string-to-sign.txt
        5239  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 4290   5240   
@@ -1,4 +1,4 @@
 4291   5241   
AWS4-ECDSA-P256-SHA256
 4292   5242   
20150830T123600Z
 4293   5243   
20150830/service/aws4_request
 4294         -
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
        5244  +
0cc67a8acfed5946b645794c649dd98d3485728119cdf17d38985ba0ff55abca
              \
 No newline at end of file
 4295   5245   
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
 4296   5246   
similarity index 65%
 4297   5247   
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
 4298   5248   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4299   5249   
index 3c91071..5d919c9 100644
 4300         -
-- 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
        5250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 4301   5251   
@@ -1,3 +1,2 @@
 4302   5252   
GET /./example HTTP/1.1
 4303   5253   
Host:example.amazonaws.com
 4304         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4305   5254   
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
 4306   5255   
new file mode 100644
 4307   5256   
index 0000000..7bee5c7
 4308         -
-- /dev/null
        5257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 4309   5258   
@@ -0,0 +1,12 @@
        5259  +
{
        5260  +
    "credentials": {
        5261  +
        "access_key_id": "AKIDEXAMPLE",
        5262  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5263  +
    },
        5264  +
    "expiration_in_seconds": 3600,
        5265  +
    "normalize": false,
        5266  +
    "region": "us-east-1",
        5267  +
    "service": "service",
        5268  +
    "sign_body": false,
        5269  +
    "timestamp": "2015-08-30T12:36:00Z"
        5270  +
}
              \
 No newline at end of file
 4310   5271   
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
 4311   5272   
similarity index 99%
 4312   5273   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4313   5274   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4314   5275   
index 4444842..2355a69 100644
 4315         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
        5276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 4316   5277   
@@ -1,9 +1,9 @@
 4317   5278   
GET
 4318   5279   
/./example
 4319   5280   
 4320   5281   
host:example.amazonaws.com
 4321   5282   
x-amz-date:20150830T123600Z
 4322   5283   
x-amz-region-set:us-east-1
 4323   5284   
 4324   5285   
host;x-amz-date;x-amz-region-set
 4325         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5286  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4326   5287   
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
 4327   5288   
new file mode 100644
 4328   5289   
index 0000000..9c8f737
 4329         -
-- /dev/null
        5290  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 4330   5291   
@@ -0,0 +1 @@
        5292  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 4331   5293   
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
 4332   5294   
new file mode 100644
 4333   5295   
index 0000000..aa5980d
 4334         -
-- /dev/null
        5296  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 4335   5297   
@@ -0,0 +1,6 @@
        5298  +
GET /./example HTTP/1.1
        5299  +
Host:example.amazonaws.com
        5300  +
X-Amz-Date:20150830T123600Z
        5301  +
X-Amz-Region-Set:us-east-1
        5302  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        5303  +
 4336   5304   
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
 4337   5305   
similarity index 99%
 4338   5306   
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
 4339   5307   
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
 4340   5308   
index cc63510..d056816 100644
 4341         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
        5309  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 4342   5310   
@@ -1,4 +1,4 @@
 4343   5311   
AWS4-ECDSA-P256-SHA256
 4344   5312   
20150830T123600Z
 4345   5313   
20150830/service/aws4_request
 4346         -
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
        5314  +
407314cdff397462b2458ba1860907adefcbb73fd630ddbd3de7300d2f773804
              \
 No newline at end of file
 4347   5315   
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
 4348   5316   
new file mode 100644
 4349   5317   
index 0000000..379dcb2
 4350         -
-- /dev/null
        5318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 4351   5319   
@@ -0,0 +1,4 @@
        5320  +
{
        5321  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5322  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5323  +
}
 4352   5324   
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
 4353   5325   
similarity index 99%
 4354   5326   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4355   5327   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4356   5328   
index ed2cb2d..df9928e 100644
 4357         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
        5329  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 4358   5330   
@@ -1,7 +1,7 @@
 4359   5331   
GET
 4360   5332   
/./example
 4361   5333   
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
 4362   5334   
host:example.amazonaws.com
 4363   5335   
 4364   5336   
host
 4365         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5337  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4366   5338   
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
 4367   5339   
new file mode 100644
 4368   5340   
index 0000000..bb4d86b
 4369         -
-- /dev/null
        5341  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 4370   5342   
@@ -0,0 +1 @@
        5343  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 4371   5344   
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
 4372   5345   
new file mode 100644
 4373   5346   
index 0000000..0061136
 4374         -
-- /dev/null
        5347  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 4375   5348   
@@ -0,0 +1,3 @@
        5349  +
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
        5350  +
Host:example.amazonaws.com
        5351  +
 4376   5352   
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
 4377   5353   
similarity index 99%
 4378   5354   
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
 4379   5355   
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
 4380   5356   
index c9f3b6d..418f2d6 100644
 4381         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
        5357  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 4382   5358   
@@ -1,4 +1,4 @@
 4383   5359   
AWS4-ECDSA-P256-SHA256
 4384   5360   
20150830T123600Z
 4385   5361   
20150830/service/aws4_request
 4386         -
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
        5362  +
efbe4f47c2acbb53fbfd0be6846cfa35a48c21f3f800e741278dae7b721302b4
              \
 No newline at end of file
 4387   5363   
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
 4388   5364   
new file mode 100644
 4389   5365   
index 0000000..5d919c9
 4390         -
-- /dev/null
        5366  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 4391   5367   
@@ -0,0 +1,2 @@
        5368  +
GET /./example HTTP/1.1
        5369  +
Host:example.amazonaws.com
 4392   5370   
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
 4393   5371   
new file mode 100644
 4394   5372   
index 0000000..7bee5c7
 4395         -
-- /dev/null
        5373  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 4396   5374   
@@ -0,0 +1,12 @@
        5375  +
{
        5376  +
    "credentials": {
        5377  +
        "access_key_id": "AKIDEXAMPLE",
        5378  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5379  +
    },
        5380  +
    "expiration_in_seconds": 3600,
        5381  +
    "normalize": false,
        5382  +
    "region": "us-east-1",
        5383  +
    "service": "service",
        5384  +
    "sign_body": false,
        5385  +
    "timestamp": "2015-08-30T12:36:00Z"
        5386  +
}
              \
 No newline at end of file
 4397   5387   
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
 4398   5388   
similarity index 99%
 4399   5389   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 4400   5390   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4401   5391   
index 8a4d33b..5f809da 100644
 4402         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
        5392  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 4403   5393   
@@ -1,9 +1,9 @@
 4404   5394   
GET
 4405   5395   
//
 4406   5396   
 4407   5397   
host:example.amazonaws.com
 4408   5398   
x-amz-date:20150830T123600Z
 4409   5399   
x-amz-region-set:us-east-1
 4410   5400   
 4411   5401   
host;x-amz-date;x-amz-region-set
 4412         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5402  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4413   5403   
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
 4414   5404   
new file mode 100644
 4415   5405   
index 0000000..60179e9
 4416         -
-- /dev/null
        5406  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 4417   5407   
@@ -0,0 +1 @@
        5408  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 4418   5409   
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
 4419   5410   
new file mode 100644
 4420   5411   
index 0000000..72bf1b7
 4421         -
-- /dev/null
        5412  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 4422   5413   
@@ -0,0 +1,6 @@
        5414  +
GET // HTTP/1.1
        5415  +
Host:example.amazonaws.com
        5416  +
X-Amz-Date:20150830T123600Z
        5417  +
X-Amz-Region-Set:us-east-1
        5418  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        5419  +
 4423   5420   
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
 4424   5421   
similarity index 99%
 4425   5422   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 4426   5423   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4427   5424   
index 874c01c..2b3bf67 100644
 4428         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
        5425  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 4429   5426   
@@ -1,4 +1,4 @@
 4430   5427   
AWS4-ECDSA-P256-SHA256
 4431   5428   
20150830T123600Z
 4432   5429   
20150830/service/aws4_request
 4433         -
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
        5430  +
fc8f42c7ce50ba8830a34b16d9fb478170176d78c81339e8d7e31d4baa9ec9f4
              \
 No newline at end of file
 4434   5431   
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
 4435   5432   
new file mode 100644
 4436   5433   
index 0000000..379dcb2
 4437         -
-- /dev/null
        5434  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 4438   5435   
@@ -0,0 +1,4 @@
        5436  +
{
        5437  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5438  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5439  +
}
 4439   5440   
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
 4440   5441   
similarity index 99%
 4441   5442   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 4442   5443   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4443   5444   
index 81d7b0b..d10ad29 100644
 4444         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
        5445  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 4445   5446   
@@ -1,7 +1,7 @@
 4446   5447   
GET
 4447   5448   
//
 4448   5449   
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
 4449   5450   
host:example.amazonaws.com
 4450   5451   
 4451   5452   
host
 4452         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5453  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4453   5454   
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
 4454   5455   
new file mode 100644
 4455   5456   
index 0000000..d9bd824
 4456         -
-- /dev/null
        5457  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 4457   5458   
@@ -0,0 +1 @@
        5459  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 4458   5460   
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
 4459   5461   
new file mode 100644
 4460   5462   
index 0000000..19d1d46
 4461         -
-- /dev/null
        5463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 4462   5464   
@@ -0,0 +1,3 @@
        5465  +
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
        5466  +
Host:example.amazonaws.com
        5467  +
 4463   5468   
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
 4464   5469   
similarity index 99%
 4465   5470   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 4466   5471   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4467   5472   
index 17e5279..24c8a5e 100644
 4468         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
        5473  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 4469   5474   
@@ -1,4 +1,4 @@
 4470   5475   
AWS4-ECDSA-P256-SHA256
 4471   5476   
20150830T123600Z
 4472   5477   
20150830/service/aws4_request
 4473         -
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
        5478  +
633e0570a745c18cc22e43af8be65cfed3e7173061ec403353734bdfae90e0b6
              \
 No newline at end of file
 4474   5479   
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
 4475   5480   
new file mode 100644
 4476   5481   
index 0000000..25bc21e
 4477         -
-- /dev/null
        5482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 4478   5483   
@@ -0,0 +1,2 @@
        5484  +
GET // HTTP/1.1
        5485  +
Host:example.amazonaws.com
 4479   5486   
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
 4480   5487   
new file mode 100644
 4481   5488   
index 0000000..0468d80
 4482         -
-- /dev/null
        5489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 4483   5490   
@@ -0,0 +1,12 @@
        5491  +
{
        5492  +
    "credentials": {
        5493  +
        "access_key_id": "AKIDEXAMPLE",
        5494  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5495  +
    },
        5496  +
    "expiration_in_seconds": 3600,
        5497  +
    "normalize": true,
        5498  +
    "region": "us-east-1",
        5499  +
    "service": "service",
        5500  +
    "sign_body": false,
        5501  +
    "timestamp": "2015-08-30T12:36:00Z"
        5502  +
}
              \
 No newline at end of file
 4484   5503   
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
 4485   5504   
similarity index 99%
 4486   5505   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 4487   5506   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4488   5507   
index fdf9c48..a8e9e02 100644
 4489         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
        5508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 4490   5509   
@@ -1,9 +1,9 @@
 4491   5510   
GET
 4492   5511   
/example/
 4493   5512   
 4494   5513   
host:example.amazonaws.com
 4495   5514   
x-amz-date:20150830T123600Z
 4496   5515   
x-amz-region-set:us-east-1
 4497   5516   
 4498   5517   
host;x-amz-date;x-amz-region-set
 4499         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5518  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4500   5519   
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
 4501   5520   
new file mode 100644
 4502   5521   
index 0000000..ffe1b60
 4503         -
-- /dev/null
        5522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 4504   5523   
@@ -0,0 +1 @@
        5524  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 4505   5525   
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
 4506   5526   
new file mode 100644
 4507   5527   
index 0000000..3189f55
 4508         -
-- /dev/null
        5528  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 4509   5529   
@@ -0,0 +1,6 @@
        5530  +
GET //example// HTTP/1.1
        5531  +
Host:example.amazonaws.com
        5532  +
X-Amz-Date:20150830T123600Z
        5533  +
X-Amz-Region-Set:us-east-1
        5534  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        5535  +
 4510   5536   
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
 4511   5537   
similarity index 99%
 4512   5538   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 4513   5539   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4514   5540   
index 8f9c95e..430020e 100644
 4515         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
        5541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 4516   5542   
@@ -1,4 +1,4 @@
 4517   5543   
AWS4-ECDSA-P256-SHA256
 4518   5544   
20150830T123600Z
 4519   5545   
20150830/service/aws4_request
 4520         -
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
        5546  +
ea6c9c4bc1e85b94f2579cebbc85a84c3f8eaa055c006697555f074dd68509a6
              \
 No newline at end of file
 4521   5547   
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
 4522   5548   
new file mode 100644
 4523   5549   
index 0000000..379dcb2
 4524         -
-- /dev/null
        5550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 4525   5551   
@@ -0,0 +1,4 @@
        5552  +
{
        5553  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5554  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5555  +
}
 4526   5556   
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
 4527   5557   
similarity index 99%
 4528   5558   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 4529   5559   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4530   5560   
index 1046735..8d41e37 100644
 4531         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
        5561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 4532   5562   
@@ -1,7 +1,7 @@
 4533   5563   
GET
 4534   5564   
/example/
 4535   5565   
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
 4536   5566   
host:example.amazonaws.com
 4537   5567   
 4538   5568   
host
 4539         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5569  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4540   5570   
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
 4541   5571   
new file mode 100644
 4542   5572   
index 0000000..93a0fa4
 4543         -
-- /dev/null
        5573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 4544   5574   
@@ -0,0 +1 @@
        5575  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 4545   5576   
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
 4546   5577   
new file mode 100644
 4547   5578   
index 0000000..65c8cb6
 4548         -
-- /dev/null
        5579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 4549   5580   
@@ -0,0 +1,3 @@
        5581  +
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
        5582  +
Host:example.amazonaws.com
        5583  +
 4550   5584   
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
 4551   5585   
similarity index 99%
 4552   5586   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 4553   5587   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4554   5588   
index b293cc2..0f4c4c5 100644
 4555         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
        5589  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4556   5590   
@@ -1,4 +1,4 @@
 4557   5591   
AWS4-ECDSA-P256-SHA256
 4558   5592   
20150830T123600Z
 4559   5593   
20150830/service/aws4_request
 4560         -
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
        5594  +
ab3f7b8af0ce16e0faf508160fb13d890874992d74f36214ae9eec7437361f2b
              \
 No newline at end of file
 4561   5595   
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
 4562   5596   
similarity index 65%
 4563   5597   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 4564   5598   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4565   5599   
index a4307ce..12e0931 100644
 4566         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        5600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4567   5601   
@@ -1,3 +1,2 @@
 4568   5602   
GET //example// HTTP/1.1
 4569   5603   
Host:example.amazonaws.com
 4570         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4571   5604   
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
 4572   5605   
new file mode 100644
 4573   5606   
index 0000000..7bee5c7
 4574         -
-- /dev/null
        5607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 4575   5608   
@@ -0,0 +1,12 @@
        5609  +
{
        5610  +
    "credentials": {
        5611  +
        "access_key_id": "AKIDEXAMPLE",
        5612  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5613  +
    },
        5614  +
    "expiration_in_seconds": 3600,
        5615  +
    "normalize": false,
        5616  +
    "region": "us-east-1",
        5617  +
    "service": "service",
        5618  +
    "sign_body": false,
        5619  +
    "timestamp": "2015-08-30T12:36:00Z"
        5620  +
}
              \
 No newline at end of file
 4576   5621   
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
 4577   5622   
similarity index 99%
 4578   5623   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 4579   5624   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4580   5625   
index a9c55f6..76f55ed 100644
 4581         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
        5626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4582   5627   
@@ -1,9 +1,9 @@
 4583   5628   
GET
 4584   5629   
//example//
 4585   5630   
 4586   5631   
host:example.amazonaws.com
 4587   5632   
x-amz-date:20150830T123600Z
 4588   5633   
x-amz-region-set:us-east-1
 4589   5634   
 4590   5635   
host;x-amz-date;x-amz-region-set
 4591         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5636  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4592   5637   
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
 4593   5638   
new file mode 100644
 4594   5639   
index 0000000..de333b2
 4595         -
-- /dev/null
        5640  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 4596   5641   
@@ -0,0 +1 @@
        5642  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 4597   5643   
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
 4598   5644   
new file mode 100644
 4599   5645   
index 0000000..773ce63
 4600         -
-- /dev/null
        5646  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 4601   5647   
@@ -0,0 +1,6 @@
        5648  +
GET //example// HTTP/1.1
        5649  +
Host:example.amazonaws.com
        5650  +
X-Amz-Date:20150830T123600Z
        5651  +
X-Amz-Region-Set:us-east-1
        5652  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        5653  +
 4602   5654   
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
 4603   5655   
similarity index 99%
 4604   5656   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 4605   5657   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4606   5658   
index 5c4c2cd..46c3265 100644
 4607         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
        5659  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4608   5660   
@@ -1,4 +1,4 @@
 4609   5661   
AWS4-ECDSA-P256-SHA256
 4610   5662   
20150830T123600Z
 4611   5663   
20150830/service/aws4_request
 4612         -
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
        5664  +
bf8c459a6a7f3879f55bff41e4dca65f69df4628456904e47f83013c0deb7276
              \
 No newline at end of file
 4613   5665   
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
 4614   5666   
new file mode 100644
 4615   5667   
index 0000000..379dcb2
 4616         -
-- /dev/null
        5668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 4617   5669   
@@ -0,0 +1,4 @@
        5670  +
{
        5671  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5672  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5673  +
}
 4618   5674   
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
 4619   5675   
similarity index 99%
 4620   5676   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 4621   5677   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4622   5678   
index c878ab4..6047ccf 100644
 4623         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
        5679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4624   5680   
@@ -1,7 +1,7 @@
 4625   5681   
GET
 4626   5682   
//example//
 4627   5683   
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
 4628   5684   
host:example.amazonaws.com
 4629   5685   
 4630   5686   
host
 4631         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5687  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4632   5688   
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
 4633   5689   
new file mode 100644
 4634   5690   
index 0000000..d61fcd0
 4635         -
-- /dev/null
        5691  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 4636   5692   
@@ -0,0 +1 @@
        5693  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 4637   5694   
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
 4638   5695   
new file mode 100644
 4639   5696   
index 0000000..3e37b5b
 4640         -
-- /dev/null
        5697  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 4641   5698   
@@ -0,0 +1,3 @@
        5699  +
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
        5700  +
Host:example.amazonaws.com
        5701  +
 4642   5702   
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
 4643   5703   
similarity index 99%
 4644   5704   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 4645   5705   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4646   5706   
index 5f59645..2537d28 100644
 4647         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
        5707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4648   5708   
@@ -1,4 +1,4 @@
 4649   5709   
AWS4-ECDSA-P256-SHA256
 4650   5710   
20150830T123600Z
 4651   5711   
20150830/service/aws4_request
 4652         -
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
        5712  +
660b4a6f0bd53b287cefb21cdf69c1574303de44d2e9f7759b5379b428b70157
              \
 No newline at end of file
 4653   5713   
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
 4654   5714   
new file mode 100644
 4655   5715   
index 0000000..12e0931
 4656         -
-- /dev/null
        5716  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 4657   5717   
@@ -0,0 +1,2 @@
        5718  +
GET //example// HTTP/1.1
        5719  +
Host:example.amazonaws.com
 4658   5720   
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
 4659   5721   
new file mode 100644
 4660   5722   
index 0000000..0468d80
 4661         -
-- /dev/null
        5723  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 4662   5724   
@@ -0,0 +1,12 @@
        5725  +
{
        5726  +
    "credentials": {
        5727  +
        "access_key_id": "AKIDEXAMPLE",
        5728  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5729  +
    },
        5730  +
    "expiration_in_seconds": 3600,
        5731  +
    "normalize": true,
        5732  +
    "region": "us-east-1",
        5733  +
    "service": "service",
        5734  +
    "sign_body": false,
        5735  +
    "timestamp": "2015-08-30T12:36:00Z"
        5736  +
}
              \
 No newline at end of file
 4663   5737   
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
 4664   5738   
new file mode 100644
 4665   5739   
index 0000000..0b2b616
 4666         -
-- /dev/null
        5740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 4667   5741   
@@ -0,0 +1,9 @@
        5742  +
GET
        5743  +
/example%20space/
        5744  +
        5745  +
host:example.amazonaws.com
        5746  +
x-amz-date:20150830T123600Z
        5747  +
x-amz-region-set:us-east-1
        5748  +
        5749  +
host;x-amz-date;x-amz-region-set
        5750  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4668   5751   
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
 4669   5752   
new file mode 100644
 4670   5753   
index 0000000..6e7841d
 4671         -
-- /dev/null
        5754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 4672   5755   
@@ -0,0 +1 @@
        5756  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 4673   5757   
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
 4674   5758   
new file mode 100644
 4675   5759   
index 0000000..0969cd3
 4676         -
-- /dev/null
        5760  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 4677   5761   
@@ -0,0 +1,6 @@
        5762  +
GET /example space/ HTTP/1.1
        5763  +
Host:example.amazonaws.com
        5764  +
X-Amz-Date:20150830T123600Z
        5765  +
X-Amz-Region-Set:us-east-1
        5766  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5767  +
 4678   5768   
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
 4679   5769   
new file mode 100644
 4680   5770   
index 0000000..ddae6e2
 4681         -
-- /dev/null
        5771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4682   5772   
@@ -0,0 +1,4 @@
        5773  +
AWS4-ECDSA-P256-SHA256
        5774  +
20150830T123600Z
        5775  +
20150830/service/aws4_request
        5776  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4683   5777   
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
 4684   5778   
new file mode 100644
 4685   5779   
index 0000000..379dcb2
 4686         -
-- /dev/null
        5780  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4687   5781   
@@ -0,0 +1,4 @@
        5782  +
{
        5783  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5784  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5785  +
}
 4688   5786   
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
 4689   5787   
new file mode 100644
 4690   5788   
index 0000000..a66b3cb
 4691         -
-- /dev/null
        5789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4692   5790   
@@ -0,0 +1,7 @@
        5791  +
GET
        5792  +
/example%20space/
        5793  +
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
        5794  +
host:example.amazonaws.com
        5795  +
        5796  +
host
        5797  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4693   5798   
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
 4694   5799   
new file mode 100644
 4695   5800   
index 0000000..b3253ae
 4696         -
-- /dev/null
        5801  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4697   5802   
@@ -0,0 +1 @@
        5803  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 4698   5804   
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
 4699   5805   
new file mode 100644
 4700   5806   
index 0000000..9e335b2
 4701         -
-- /dev/null
        5807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4702   5808   
@@ -0,0 +1,3 @@
        5809  +
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
        5810  +
Host:example.amazonaws.com
        5811  +
 4703   5812   
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
 4704   5813   
new file mode 100644
 4705   5814   
index 0000000..b6ff6fb
 4706         -
-- /dev/null
        5815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4707   5816   
@@ -0,0 +1,4 @@
        5817  +
AWS4-ECDSA-P256-SHA256
        5818  +
20150830T123600Z
        5819  +
20150830/service/aws4_request
        5820  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4708   5821   
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
 4709   5822   
new file mode 100644
 4710   5823   
index 0000000..ab509ab
 4711         -
-- /dev/null
        5824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4712   5825   
@@ -0,0 +1,2 @@
        5826  +
GET /example space/ HTTP/1.1
        5827  +
Host:example.amazonaws.com
 4713   5828   
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
 4714   5829   
new file mode 100644
 4715   5830   
index 0000000..7bee5c7
 4716         -
-- /dev/null
        5831  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4717   5832   
@@ -0,0 +1,12 @@
        5833  +
{
        5834  +
    "credentials": {
        5835  +
        "access_key_id": "AKIDEXAMPLE",
        5836  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5837  +
    },
        5838  +
    "expiration_in_seconds": 3600,
        5839  +
    "normalize": false,
        5840  +
    "region": "us-east-1",
        5841  +
    "service": "service",
        5842  +
    "sign_body": false,
        5843  +
    "timestamp": "2015-08-30T12:36:00Z"
        5844  +
}
              \
 No newline at end of file
 4718   5845   
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
 4719   5846   
new file mode 100644
 4720   5847   
index 0000000..0b2b616
 4721         -
-- /dev/null
        5848  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4722   5849   
@@ -0,0 +1,9 @@
        5850  +
GET
        5851  +
/example%20space/
        5852  +
        5853  +
host:example.amazonaws.com
        5854  +
x-amz-date:20150830T123600Z
        5855  +
x-amz-region-set:us-east-1
        5856  +
        5857  +
host;x-amz-date;x-amz-region-set
        5858  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4723   5859   
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
 4724   5860   
new file mode 100644
 4725   5861   
index 0000000..e75ae08
 4726         -
-- /dev/null
        5862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4727   5863   
@@ -0,0 +1 @@
        5864  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4728   5865   
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
 4729   5866   
new file mode 100644
 4730   5867   
index 0000000..cb089db
 4731         -
-- /dev/null
        5868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4732   5869   
@@ -0,0 +1,6 @@
        5870  +
GET /example space/ HTTP/1.1
        5871  +
Host:example.amazonaws.com
        5872  +
X-Amz-Date:20150830T123600Z
        5873  +
X-Amz-Region-Set:us-east-1
        5874  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5875  +
 4733   5876   
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
 4734   5877   
new file mode 100644
 4735   5878   
index 0000000..ddae6e2
 4736         -
-- /dev/null
        5879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4737   5880   
@@ -0,0 +1,4 @@
        5881  +
AWS4-ECDSA-P256-SHA256
        5882  +
20150830T123600Z
        5883  +
20150830/service/aws4_request
        5884  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4738   5885   
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
 4739   5886   
new file mode 100644
 4740   5887   
index 0000000..379dcb2
 4741         -
-- /dev/null
        5888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4742   5889   
@@ -0,0 +1,4 @@
        5890  +
{
        5891  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5892  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5893  +
}
 4743   5894   
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
 4744   5895   
new file mode 100644
 4745   5896   
index 0000000..a66b3cb
 4746         -
-- /dev/null
        5897  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4747   5898   
@@ -0,0 +1,7 @@
        5899  +
GET
        5900  +
/example%20space/
        5901  +
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
        5902  +
host:example.amazonaws.com
        5903  +
        5904  +
host
        5905  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4748   5906   
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
 4749   5907   
new file mode 100644
 4750   5908   
index 0000000..66a80c3
 4751         -
-- /dev/null
        5909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4752   5910   
@@ -0,0 +1 @@
        5911  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4753   5912   
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
 4754   5913   
new file mode 100644
 4755   5914   
index 0000000..7d1b9d9
 4756         -
-- /dev/null
        5915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4757   5916   
@@ -0,0 +1,3 @@
        5917  +
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
        5918  +
Host:example.amazonaws.com
        5919  +
 4758   5920   
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
 4759   5921   
new file mode 100644
 4760   5922   
index 0000000..b6ff6fb
 4761         -
-- /dev/null
        5923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4762   5924   
@@ -0,0 +1,4 @@
        5925  +
AWS4-ECDSA-P256-SHA256
        5926  +
20150830T123600Z
        5927  +
20150830/service/aws4_request
        5928  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4763   5929   
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
 4764   5930   
new file mode 100644
 4765   5931   
index 0000000..ab509ab
 4766         -
-- /dev/null
        5932  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4767   5933   
@@ -0,0 +1,2 @@
        5934  +
GET /example space/ HTTP/1.1
        5935  +
Host:example.amazonaws.com
 4768   5936   
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
 4769   5937   
new file mode 100644
 4770   5938   
index 0000000..0468d80
 4771         -
-- /dev/null
        5939  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4772   5940   
@@ -0,0 +1,12 @@
        5941  +
{
        5942  +
    "credentials": {
        5943  +
        "access_key_id": "AKIDEXAMPLE",
        5944  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5945  +
    },
        5946  +
    "expiration_in_seconds": 3600,
        5947  +
    "normalize": true,
        5948  +
    "region": "us-east-1",
        5949  +
    "service": "service",
        5950  +
    "sign_body": false,
        5951  +
    "timestamp": "2015-08-30T12:36:00Z"
        5952  +
}
              \
 No newline at end of file
 4773   5953   
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
 4774   5954   
similarity index 99%
 4775   5955   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4776   5956   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4777   5957   
index b0db648..46d76bb 100644
 4778         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
        5958  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4779   5959   
@@ -1,9 +1,9 @@
 4780   5960   
GET
 4781   5961   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4782   5962   
 4783   5963   
host:example.amazonaws.com
 4784   5964   
x-amz-date:20150830T123600Z
 4785   5965   
x-amz-region-set:us-east-1
 4786   5966   
 4787   5967   
host;x-amz-date;x-amz-region-set
 4788         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        5968  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4789   5969   
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
 4790   5970   
new file mode 100644
 4791   5971   
index 0000000..53c0cb6
 4792         -
-- /dev/null
        5972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4793   5973   
@@ -0,0 +1 @@
        5974  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4794   5975   
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
 4795   5976   
new file mode 100644
 4796   5977   
index 0000000..3bdb653
 4797         -
-- /dev/null
        5978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4798   5979   
@@ -0,0 +1,6 @@
        5980  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5981  +
Host:example.amazonaws.com
        5982  +
X-Amz-Date:20150830T123600Z
        5983  +
X-Amz-Region-Set:us-east-1
        5984  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5985  +
 4799   5986   
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
 4800   5987   
similarity index 99%
 4801   5988   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4802   5989   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4803   5990   
index 20c7cd6..3b30173 100644
 4804         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
        5991  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4805   5992   
@@ -1,4 +1,4 @@
 4806   5993   
AWS4-ECDSA-P256-SHA256
 4807   5994   
20150830T123600Z
 4808   5995   
20150830/service/aws4_request
 4809         -
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
        5996  +
b48c0f7d7cdaa2cd05e4b789c913063becd96ccace5296a334c950040e58bcac
              \
 No newline at end of file
 4810   5997   
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
 4811   5998   
new file mode 100644
 4812   5999   
index 0000000..379dcb2
 4813         -
-- /dev/null
        6000  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4814   6001   
@@ -0,0 +1,4 @@
        6002  +
{
        6003  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6004  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6005  +
}
 4815   6006   
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
 4816   6007   
similarity index 99%
 4817   6008   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4818   6009   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4819   6010   
index f9fb726..7e93f58 100644
 4820         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
        6011  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4821   6012   
@@ -1,7 +1,7 @@
 4822   6013   
GET
 4823   6014   
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 4824   6015   
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
 4825   6016   
host:example.amazonaws.com
 4826   6017   
 4827   6018   
host
 4828         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6019  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4829   6020   
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
 4830   6021   
new file mode 100644
 4831   6022   
index 0000000..48311a8
 4832         -
-- /dev/null
        6023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4833   6024   
@@ -0,0 +1 @@
        6025  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4834   6026   
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
 4835   6027   
new file mode 100644
 4836   6028   
index 0000000..82da9be
 4837         -
-- /dev/null
        6029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4838   6030   
@@ -0,0 +1,3 @@
        6031  +
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
        6032  +
Host:example.amazonaws.com
        6033  +
 4839   6034   
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
 4840   6035   
similarity index 99%
 4841   6036   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4842   6037   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4843   6038   
index ef06e89..4aab9a2 100644
 4844         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
        6039  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4845   6040   
@@ -1,4 +1,4 @@
 4846   6041   
AWS4-ECDSA-P256-SHA256
 4847   6042   
20150830T123600Z
 4848   6043   
20150830/service/aws4_request
 4849         -
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
        6044  +
a967a5035e5dc574f94fb9f0de0faf9d56e889c26d9a65d7d0a15d89690280d1
              \
 No newline at end of file
 4850   6045   
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
 4851   6046   
similarity index 80%
 4852   6047   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4853   6048   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4854   6049   
index da760cd..a149694 100644
 4855         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        6050  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4856   6051   
@@ -1,3 +1,2 @@
 4857   6052   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4858   6053   
Host:example.amazonaws.com
 4859         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4860   6054   
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
 4861   6055   
new file mode 100644
 4862   6056   
index 0000000..0468d80
 4863         -
-- /dev/null
        6057  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4864   6058   
@@ -0,0 +1,12 @@
        6059  +
{
        6060  +
    "credentials": {
        6061  +
        "access_key_id": "AKIDEXAMPLE",
        6062  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6063  +
    },
        6064  +
    "expiration_in_seconds": 3600,
        6065  +
    "normalize": true,
        6066  +
    "region": "us-east-1",
        6067  +
    "service": "service",
        6068  +
    "sign_body": false,
        6069  +
    "timestamp": "2015-08-30T12:36:00Z"
        6070  +
}
              \
 No newline at end of file
 4865   6071   
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
 4866   6072   
new file mode 100644
 4867   6073   
index 0000000..0f1afe7
 4868         -
-- /dev/null
        6074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4869   6075   
@@ -0,0 +1,9 @@
        6076  +
GET
        6077  +
/%E1%88%B4
        6078  +
        6079  +
host:example.amazonaws.com
        6080  +
x-amz-date:20150830T123600Z
        6081  +
x-amz-region-set:us-east-1
        6082  +
        6083  +
host;x-amz-date;x-amz-region-set
        6084  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4870   6085   
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
 4871   6086   
new file mode 100644
 4872   6087   
index 0000000..4b9af6c
 4873         -
-- /dev/null
        6088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4874   6089   
@@ -0,0 +1 @@
        6090  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4875   6091   
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
 4876   6092   
new file mode 100644
 4877   6093   
index 0000000..d42d7b3
 4878         -
-- /dev/null
        6094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4879   6095   
@@ -0,0 +1,6 @@
        6096  +
GET /ሴ HTTP/1.1
        6097  +
Host:example.amazonaws.com
        6098  +
X-Amz-Date:20150830T123600Z
        6099  +
X-Amz-Region-Set:us-east-1
        6100  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        6101  +
 4880   6102   
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
 4881   6103   
new file mode 100644
 4882   6104   
index 0000000..0827f62
 4883         -
-- /dev/null
        6105  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4884   6106   
@@ -0,0 +1,4 @@
        6107  +
AWS4-ECDSA-P256-SHA256
        6108  +
20150830T123600Z
        6109  +
20150830/service/aws4_request
        6110  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4885   6111   
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
 4886   6112   
new file mode 100644
 4887   6113   
index 0000000..379dcb2
 4888         -
-- /dev/null
        6114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4889   6115   
@@ -0,0 +1,4 @@
        6116  +
{
        6117  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6118  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6119  +
}
 4890   6120   
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
 4891   6121   
new file mode 100644
 4892   6122   
index 0000000..a41a2f8
 4893         -
-- /dev/null
        6123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4894   6124   
@@ -0,0 +1,7 @@
        6125  +
GET
        6126  +
/%E1%88%B4
        6127  +
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
        6128  +
host:example.amazonaws.com
        6129  +
        6130  +
host
        6131  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4895   6132   
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
 4896   6133   
new file mode 100644
 4897   6134   
index 0000000..a5c7f4f
 4898         -
-- /dev/null
        6135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4899   6136   
@@ -0,0 +1 @@
        6137  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4900   6138   
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
 4901   6139   
new file mode 100644
 4902   6140   
index 0000000..492ed33
 4903         -
-- /dev/null
        6141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4904   6142   
@@ -0,0 +1,3 @@
        6143  +
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
        6144  +
Host:example.amazonaws.com
        6145  +
 4905   6146   
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
 4906   6147   
new file mode 100644
 4907   6148   
index 0000000..a93108f
 4908         -
-- /dev/null
        6149  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4909   6150   
@@ -0,0 +1,4 @@
        6151  +
AWS4-ECDSA-P256-SHA256
        6152  +
20150830T123600Z
        6153  +
20150830/service/aws4_request
        6154  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4910   6155   
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
 4911   6156   
new file mode 100644
 4912   6157   
index 0000000..9e273f6
 4913         -
-- /dev/null
        6158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4914   6159   
@@ -0,0 +1,2 @@
        6160  +
GET /ሴ HTTP/1.1
        6161  +
Host:example.amazonaws.com
 4915   6162   
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
 4916   6163   
new file mode 100644
 4917   6164   
index 0000000..0468d80
 4918         -
-- /dev/null
        6165  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4919   6166   
@@ -0,0 +1,12 @@
        6167  +
{
        6168  +
    "credentials": {
        6169  +
        "access_key_id": "AKIDEXAMPLE",
        6170  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6171  +
    },
        6172  +
    "expiration_in_seconds": 3600,
        6173  +
    "normalize": true,
        6174  +
    "region": "us-east-1",
        6175  +
    "service": "service",
        6176  +
    "sign_body": false,
        6177  +
    "timestamp": "2015-08-30T12:36:00Z"
        6178  +
}
              \
 No newline at end of file
 4920   6179   
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
 4921   6180   
similarity index 99%
 4922   6181   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4923   6182   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4924   6183   
index bb9d4bf..edc0bb4 100644
 4925         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
        6184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4926   6185   
@@ -1,9 +1,9 @@
 4927   6186   
GET
 4928   6187   
/
 4929   6188   
Param1=value1
 4930   6189   
host:example.amazonaws.com
 4931   6190   
x-amz-date:20150830T123600Z
 4932   6191   
x-amz-region-set:us-east-1
 4933   6192   
 4934   6193   
host;x-amz-date;x-amz-region-set
 4935         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6194  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4936   6195   
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
 4937   6196   
new file mode 100644
 4938   6197   
index 0000000..ee9a272
 4939         -
-- /dev/null
        6198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4940   6199   
@@ -0,0 +1 @@
        6200  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4941   6201   
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
 4942   6202   
new file mode 100644
 4943   6203   
index 0000000..2090343
 4944         -
-- /dev/null
        6204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4945   6205   
@@ -0,0 +1,6 @@
        6206  +
GET /?Param1=value1 HTTP/1.1
        6207  +
Host:example.amazonaws.com
        6208  +
X-Amz-Date:20150830T123600Z
        6209  +
X-Amz-Region-Set:us-east-1
        6210  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        6211  +
 4946   6212   
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
 4947   6213   
similarity index 99%
 4948   6214   
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
 4949   6215   
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
 4950   6216   
index a176f1d..06ed74f 100644
 4951         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-string-to-sign.txt
        6217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-string-to-sign.txt
 4952   6218   
@@ -1,4 +1,4 @@
 4953   6219   
AWS4-ECDSA-P256-SHA256
 4954   6220   
20150830T123600Z
 4955   6221   
20150830/service/aws4_request
 4956         -
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
        6222  +
894f4237e92aae973c992da1d1f39d7a5913a23e9f7cbcf085e9550685eb498a
              \
 No newline at end of file
 4957   6223   
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
 4958   6224   
new file mode 100644
 4959   6225   
index 0000000..379dcb2
 4960         -
-- /dev/null
        6226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4961   6227   
@@ -0,0 +1,4 @@
        6228  +
{
        6229  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6230  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6231  +
}
 4962   6232   
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
 4963   6233   
similarity index 99%
 4964   6234   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4965   6235   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4966   6236   
index 344384b..a875d70 100644
 4967         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
        6237  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4968   6238   
@@ -1,7 +1,7 @@
 4969   6239   
GET
 4970   6240   
/
 4971   6241   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 4972   6242   
host:example.amazonaws.com
 4973   6243   
 4974   6244   
host
 4975         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6245  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4976   6246   
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
 4977   6247   
new file mode 100644
 4978   6248   
index 0000000..ef93624
 4979         -
-- /dev/null
        6249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4980   6250   
@@ -0,0 +1 @@
        6251  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4981   6252   
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
 4982   6253   
new file mode 100644
 4983   6254   
index 0000000..92829f7
 4984         -
-- /dev/null
        6255  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4985   6256   
@@ -0,0 +1,3 @@
        6257  +
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
        6258  +
Host:example.amazonaws.com
        6259  +
 4986   6260   
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
 4987   6261   
similarity index 99%
 4988   6262   
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
 4989   6263   
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
 4990   6264   
index b625052..4ff9191 100644
 4991         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-string-to-sign.txt
        6265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-string-to-sign.txt
 4992   6266   
@@ -1,4 +1,4 @@
 4993   6267   
AWS4-ECDSA-P256-SHA256
 4994   6268   
20150830T123600Z
 4995   6269   
20150830/service/aws4_request
 4996         -
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
        6270  +
07551f1d699afeb50d6811a527ab7b0270b60448ea27d8cbccb9750d68287b3f
              \
 No newline at end of file
 4997   6271   
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
 4998   6272   
similarity index 67%
 4999   6273   
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
 5000   6274   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 5001   6275   
index 970d0a0..f4a03bb 100644
 5002         -
-- 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
        6276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 5003   6277   
@@ -1,3 +1,2 @@
 5004   6278   
GET /?Param1=value1 HTTP/1.1
 5005   6279   
Host:example.amazonaws.com
 5006         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5007   6280   
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
 5008   6281   
new file mode 100644
 5009   6282   
index 0000000..0468d80
 5010         -
-- /dev/null
        6283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 5011   6284   
@@ -0,0 +1,12 @@
        6285  +
{
        6286  +
    "credentials": {
        6287  +
        "access_key_id": "AKIDEXAMPLE",
        6288  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6289  +
    },
        6290  +
    "expiration_in_seconds": 3600,
        6291  +
    "normalize": true,
        6292  +
    "region": "us-east-1",
        6293  +
    "service": "service",
        6294  +
    "sign_body": false,
        6295  +
    "timestamp": "2015-08-30T12:36:00Z"
        6296  +
}
              \
 No newline at end of file
 5012   6297   
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
 5013   6298   
new file mode 100644
 5014   6299   
index 0000000..da07537
 5015         -
-- /dev/null
        6300  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 5016   6301   
@@ -0,0 +1,9 @@
        6302  +
GET
        6303  +
/
        6304  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        6305  +
host:example.amazonaws.com
        6306  +
x-amz-date:20150830T123600Z
        6307  +
x-amz-region-set:us-east-1
        6308  +
        6309  +
host;x-amz-date;x-amz-region-set
        6310  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5017   6311   
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
 5018   6312   
new file mode 100644
 5019   6313   
index 0000000..edb21e5
 5020         -
-- /dev/null
        6314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 5021   6315   
@@ -0,0 +1 @@
        6316  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 5022   6317   
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
 5023   6318   
new file mode 100644
 5024   6319   
index 0000000..e60394c
 5025         -
-- /dev/null
        6320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 5026   6321   
@@ -0,0 +1,6 @@
        6322  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6323  +
Host:example.amazonaws.com
        6324  +
X-Amz-Date:20150830T123600Z
        6325  +
X-Amz-Region-Set:us-east-1
        6326  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        6327  +
 5027   6328   
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
 5028   6329   
new file mode 100644
 5029   6330   
index 0000000..1dfc886
 5030         -
-- /dev/null
        6331  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 5031   6332   
@@ -0,0 +1,4 @@
        6333  +
AWS4-ECDSA-P256-SHA256
        6334  +
20150830T123600Z
        6335  +
20150830/service/aws4_request
        6336  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 5032   6337   
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
 5033   6338   
new file mode 100644
 5034   6339   
index 0000000..379dcb2
 5035         -
-- /dev/null
        6340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 5036   6341   
@@ -0,0 +1,4 @@
        6342  +
{
        6343  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6344  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6345  +
}
 5037   6346   
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
 5038   6347   
new file mode 100644
 5039   6348   
index 0000000..e94dc0c
 5040         -
-- /dev/null
        6349  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 5041   6350   
@@ -0,0 +1,7 @@
        6351  +
GET
        6352  +
/
        6353  +
%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
        6354  +
host:example.amazonaws.com
        6355  +
        6356  +
host
        6357  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5042   6358   
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
 5043   6359   
new file mode 100644
 5044   6360   
index 0000000..7489437
 5045         -
-- /dev/null
        6361  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 5046   6362   
@@ -0,0 +1 @@
        6363  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 5047   6364   
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
 5048   6365   
new file mode 100644
 5049   6366   
index 0000000..90c0e73
 5050         -
-- /dev/null
        6367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 5051   6368   
@@ -0,0 +1,3 @@
        6369  +
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
        6370  +
Host:example.amazonaws.com
        6371  +
 5052   6372   
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
 5053   6373   
new file mode 100644
 5054   6374   
index 0000000..ab8a711
 5055         -
-- /dev/null
        6375  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 5056   6376   
@@ -0,0 +1,4 @@
        6377  +
AWS4-ECDSA-P256-SHA256
        6378  +
20150830T123600Z
        6379  +
20150830/service/aws4_request
        6380  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 5057   6381   
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
 5058   6382   
new file mode 100644
 5059   6383   
index 0000000..368c6e3
 5060         -
-- /dev/null
        6384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 5061   6385   
@@ -0,0 +1,2 @@
        6386  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        6387  +
Host:example.amazonaws.com
 5062   6388   
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
 5063   6389   
new file mode 100644
 5064   6390   
index 0000000..0468d80
 5065         -
-- /dev/null
        6391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 5066   6392   
@@ -0,0 +1,12 @@
        6393  +
{
        6394  +
    "credentials": {
        6395  +
        "access_key_id": "AKIDEXAMPLE",
        6396  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6397  +
    },
        6398  +
    "expiration_in_seconds": 3600,
        6399  +
    "normalize": true,
        6400  +
    "region": "us-east-1",
        6401  +
    "service": "service",
        6402  +
    "sign_body": false,
        6403  +
    "timestamp": "2015-08-30T12:36:00Z"
        6404  +
}
              \
 No newline at end of file
 5067   6405   
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
 5068   6406   
similarity index 99%
 5069   6407   
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
 5070   6408   
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
 5071   6409   
index 74f625a..3db56f7 100644
 5072         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/header-canonical-request.txt
        6410  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-canonical-request.txt
 5073   6411   
@@ -1,9 +1,9 @@
 5074   6412   
GET
 5075   6413   
/
 5076   6414   
Param1=value1&Param2=value2
 5077   6415   
host:example.amazonaws.com
 5078   6416   
x-amz-date:20150830T123600Z
 5079   6417   
x-amz-region-set:us-east-1
 5080   6418   
 5081   6419   
host;x-amz-date;x-amz-region-set
 5082         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6420  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5083   6421   
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
 5084   6422   
new file mode 100644
 5085   6423   
index 0000000..e6042bc
 5086         -
-- /dev/null
        6424  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 5087   6425   
@@ -0,0 +1 @@
        6426  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 5088   6427   
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
 5089   6428   
new file mode 100644
 5090   6429   
index 0000000..5505969
 5091         -
-- /dev/null
        6430  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 5092   6431   
@@ -0,0 +1,6 @@
        6432  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        6433  +
Host:example.amazonaws.com
        6434  +
X-Amz-Date:20150830T123600Z
        6435  +
X-Amz-Region-Set:us-east-1
        6436  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        6437  +
 5093   6438   
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
 5094   6439   
similarity index 99%
 5095   6440   
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
 5096   6441   
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
 5097   6442   
index 44873b7..e8f5e31 100644
 5098         -
-- 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
        6443  +
++ 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
 5099   6444   
@@ -1,4 +1,4 @@
 5100   6445   
AWS4-ECDSA-P256-SHA256
 5101   6446   
20150830T123600Z
 5102   6447   
20150830/service/aws4_request
 5103         -
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
        6448  +
cc07b29e0d0f0b2d6aa296621a5608fd9c2271159b9b2f737f682704ebb96482
              \
 No newline at end of file
 5104   6449   
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
 5105   6450   
new file mode 100644
 5106   6451   
index 0000000..379dcb2
 5107         -
-- /dev/null
        6452  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 5108   6453   
@@ -0,0 +1,4 @@
        6454  +
{
        6455  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6456  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6457  +
}
 5109   6458   
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
 5110   6459   
similarity index 99%
 5111   6460   
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
 5112   6461   
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
 5113   6462   
index 6d30727..3fe6a9f 100644
 5114         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/query-canonical-request.txt
        6463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-canonical-request.txt
 5115   6464   
@@ -1,7 +1,7 @@
 5116   6465   
GET
 5117   6466   
/
 5118   6467   
Param1=value1&Param2=value2&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5119   6468   
host:example.amazonaws.com
 5120   6469   
 5121   6470   
host
 5122         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6471  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5123   6472   
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
 5124   6473   
new file mode 100644
 5125   6474   
index 0000000..3f35de8
 5126         -
-- /dev/null
        6475  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 5127   6476   
@@ -0,0 +1 @@
        6477  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 5128   6478   
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
 5129   6479   
new file mode 100644
 5130   6480   
index 0000000..30b336b
 5131         -
-- /dev/null
        6481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 5132   6482   
@@ -0,0 +1,3 @@
        6483  +
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
        6484  +
Host:example.amazonaws.com
        6485  +
 5133   6486   
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
 5134   6487   
similarity index 99%
 5135   6488   
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
 5136   6489   
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
 5137   6490   
index 99d0510..7f0565f 100644
 5138         -
-- 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
        6491  +
++ 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
 5139   6492   
@@ -1,4 +1,4 @@
 5140   6493   
AWS4-ECDSA-P256-SHA256
 5141   6494   
20150830T123600Z
 5142   6495   
20150830/service/aws4_request
 5143         -
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
        6496  +
c688584c3dbae2868c4911c825239f2c9375e66b9962f21db60b9b2fcd75bf45
              \
 No newline at end of file
 5144   6497   
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
 5145   6498   
similarity index 100%
 5146   6499   
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
 5147   6500   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 5148   6501   
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
 5149   6502   
new file mode 100644
 5150   6503   
index 0000000..0468d80
 5151         -
-- /dev/null
        6504  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 5152   6505   
@@ -0,0 +1,12 @@
        6506  +
{
        6507  +
    "credentials": {
        6508  +
        "access_key_id": "AKIDEXAMPLE",
        6509  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6510  +
    },
        6511  +
    "expiration_in_seconds": 3600,
        6512  +
    "normalize": true,
        6513  +
    "region": "us-east-1",
        6514  +
    "service": "service",
        6515  +
    "sign_body": false,
        6516  +
    "timestamp": "2015-08-30T12:36:00Z"
        6517  +
}
              \
 No newline at end of file
 5153   6518   
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
 5154   6519   
similarity index 99%
 5155   6520   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 5156   6521   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5157   6522   
index 816c862..cc4537a 100644
 5158         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
        6523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 5159   6524   
@@ -1,9 +1,9 @@
 5160   6525   
GET
 5161   6526   
/
 5162   6527   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
 5163   6528   
host:example.amazonaws.com
 5164   6529   
x-amz-date:20150830T123600Z
 5165   6530   
x-amz-region-set:us-east-1
 5166   6531   
 5167   6532   
host;x-amz-date;x-amz-region-set
 5168         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6533  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5169   6534   
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
 5170   6535   
new file mode 100644
 5171   6536   
index 0000000..70d38c1
 5172         -
-- /dev/null
        6537  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 5173   6538   
@@ -0,0 +1 @@
        6539  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 5174   6540   
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
 5175   6541   
new file mode 100644
 5176   6542   
index 0000000..0647eea
 5177         -
-- /dev/null
        6543  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 5178   6544   
@@ -0,0 +1,6 @@
        6545  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        6546  +
Host:example.amazonaws.com
        6547  +
X-Amz-Date:20150830T123600Z
        6548  +
X-Amz-Region-Set:us-east-1
        6549  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        6550  +
 5179   6551   
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
 5180   6552   
similarity index 99%
 5181   6553   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 5182   6554   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5183   6555   
index 6129fc5..cc19d14 100644
 5184         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
        6556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 5185   6557   
@@ -1,4 +1,4 @@
 5186   6558   
AWS4-ECDSA-P256-SHA256
 5187   6559   
20150830T123600Z
 5188   6560   
20150830/service/aws4_request
 5189         -
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
        6561  +
377b8a3e195894659b84cd1c475dc8a3663a663360a349430c0c3b82bd82b77b
              \
 No newline at end of file
 5190   6562   
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
 5191   6563   
new file mode 100644
 5192   6564   
index 0000000..379dcb2
 5193         -
-- /dev/null
        6565  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 5194   6566   
@@ -0,0 +1,4 @@
        6567  +
{
        6568  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6569  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6570  +
}
 5195   6571   
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
 5196   6572   
similarity index 99%
 5197   6573   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 5198   6574   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5199   6575   
index b77ee9f..ed6a10e 100644
 5200         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
        6576  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 5201   6577   
@@ -1,7 +1,7 @@
 5202   6578   
GET
 5203   6579   
/
 5204   6580   
-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 5205   6581   
host:example.amazonaws.com
 5206   6582   
 5207   6583   
host
 5208         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6584  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5209   6585   
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
 5210   6586   
new file mode 100644
 5211   6587   
index 0000000..2ceba7b
 5212         -
-- /dev/null
        6588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 5213   6589   
@@ -0,0 +1 @@
        6590  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 5214   6591   
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
 5215   6592   
new file mode 100644
 5216   6593   
index 0000000..0cd6d0a
 5217         -
-- /dev/null
        6594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 5218   6595   
@@ -0,0 +1,3 @@
        6596  +
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
        6597  +
Host:example.amazonaws.com
        6598  +
 5219   6599   
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
 5220   6600   
similarity index 99%
 5221   6601   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 5222   6602   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5223   6603   
index 1cfed7a..aad1421 100644
 5224         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
        6604  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 5225   6605   
@@ -1,4 +1,4 @@
 5226   6606   
AWS4-ECDSA-P256-SHA256
 5227   6607   
20150830T123600Z
 5228   6608   
20150830/service/aws4_request
 5229         -
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
        6609  +
5d8923c620c699f856a35a6eb8dd786fd4c8c6ab0a35c552caeb5b648989433f
              \
 No newline at end of file
 5230   6610   
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
 5231   6611   
similarity index 86%
 5232   6612   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 5233   6613   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5234   6614   
index d2833b3..36b2fe3 100644
 5235         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        6615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 5236   6616   
@@ -1,3 +1,2 @@
 5237   6617   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 5238   6618   
Host:example.amazonaws.com
 5239         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5240   6619   
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
 5241   6620   
new file mode 100644
 5242   6621   
index 0000000..0468d80
 5243         -
-- /dev/null
        6622  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 5244   6623   
@@ -0,0 +1,12 @@
        6624  +
{
        6625  +
    "credentials": {
        6626  +
        "access_key_id": "AKIDEXAMPLE",
        6627  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6628  +
    },
        6629  +
    "expiration_in_seconds": 3600,
        6630  +
    "normalize": true,
        6631  +
    "region": "us-east-1",
        6632  +
    "service": "service",
        6633  +
    "sign_body": false,
        6634  +
    "timestamp": "2015-08-30T12:36:00Z"
        6635  +
}
              \
 No newline at end of file
 5245   6636   
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
 5246   6637   
new file mode 100644
 5247   6638   
index 0000000..76db73d
 5248         -
-- /dev/null
        6639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 5249   6640   
@@ -0,0 +1,9 @@
        6641  +
GET
        6642  +
/
        6643  +
        6644  +
host:example.amazonaws.com
        6645  +
x-amz-date:20150830T123600Z
        6646  +
x-amz-region-set:us-east-1
        6647  +
        6648  +
host;x-amz-date;x-amz-region-set
        6649  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5250   6650   
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
 5251   6651   
new file mode 100644
 5252   6652   
index 0000000..281cc62
 5253         -
-- /dev/null
        6653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 5254   6654   
@@ -0,0 +1 @@
        6655  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 5255   6656   
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
 5256   6657   
new file mode 100644
 5257   6658   
index 0000000..cce9925
 5258         -
-- /dev/null
        6659  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 5259   6660   
@@ -0,0 +1,6 @@
        6661  +
GET / HTTP/1.1
        6662  +
Host:example.amazonaws.com
        6663  +
X-Amz-Date:20150830T123600Z
        6664  +
X-Amz-Region-Set:us-east-1
        6665  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        6666  +
 5260   6667   
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
 5261   6668   
new file mode 100644
 5262   6669   
index 0000000..600f1d8
 5263         -
-- /dev/null
        6670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 5264   6671   
@@ -0,0 +1,4 @@
        6672  +
AWS4-ECDSA-P256-SHA256
        6673  +
20150830T123600Z
        6674  +
20150830/service/aws4_request
        6675  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5265   6676   
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
 5266   6677   
new file mode 100644
 5267   6678   
index 0000000..379dcb2
 5268         -
-- /dev/null
        6679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 5269   6680   
@@ -0,0 +1,4 @@
        6681  +
{
        6682  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6683  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6684  +
}
 5270   6685   
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
 5271   6686   
new file mode 100644
 5272   6687   
index 0000000..779c51c
 5273         -
-- /dev/null
        6688  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 5274   6689   
@@ -0,0 +1,7 @@
        6690  +
GET
        6691  +
/
        6692  +
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
        6693  +
host:example.amazonaws.com
        6694  +
        6695  +
host
        6696  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5275   6697   
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
 5276   6698   
new file mode 100644
 5277   6699   
index 0000000..2979e5e
 5278         -
-- /dev/null
        6700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 5279   6701   
@@ -0,0 +1 @@
        6702  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 5280   6703   
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
 5281   6704   
new file mode 100644
 5282   6705   
index 0000000..1b3179c
 5283         -
-- /dev/null
        6706  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 5284   6707   
@@ -0,0 +1,3 @@
        6708  +
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
        6709  +
Host:example.amazonaws.com
        6710  +
 5285   6711   
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
 5286   6712   
new file mode 100644
 5287   6713   
index 0000000..6e29a7e
 5288         -
-- /dev/null
        6714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 5289   6715   
@@ -0,0 +1,4 @@
        6716  +
AWS4-ECDSA-P256-SHA256
        6717  +
20150830T123600Z
        6718  +
20150830/service/aws4_request
        6719  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5290   6720   
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
 5291   6721   
similarity index 60%
 5292   6722   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 5293   6723   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5294   6724   
index 0f7a9bf..e659c3b 100644
 5295         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        6725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 5296   6726   
@@ -1,3 +1,2 @@
 5297   6727   
GET / HTTP/1.1
 5298   6728   
Host:example.amazonaws.com
 5299         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5300   6729   
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
 5301   6730   
new file mode 100644
 5302   6731   
index 0000000..0468d80
 5303         -
-- /dev/null
        6732  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 5304   6733   
@@ -0,0 +1,12 @@
        6734  +
{
        6735  +
    "credentials": {
        6736  +
        "access_key_id": "AKIDEXAMPLE",
        6737  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6738  +
    },
        6739  +
    "expiration_in_seconds": 3600,
        6740  +
    "normalize": true,
        6741  +
    "region": "us-east-1",
        6742  +
    "service": "service",
        6743  +
    "sign_body": false,
        6744  +
    "timestamp": "2015-08-30T12:36:00Z"
        6745  +
}
              \
 No newline at end of file
 5305   6746   
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
 5306   6747   
new file mode 100644
 5307   6748   
index 0000000..8841ddf
 5308         -
-- /dev/null
        6749  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 5309   6750   
@@ -0,0 +1,9 @@
        6751  +
GET
        6752  +
/
        6753  +
%E1%88%B4=bar
        6754  +
host:example.amazonaws.com
        6755  +
x-amz-date:20150830T123600Z
        6756  +
x-amz-region-set:us-east-1
        6757  +
        6758  +
host;x-amz-date;x-amz-region-set
        6759  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5310   6760   
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
 5311   6761   
new file mode 100644
 5312   6762   
index 0000000..1497add
 5313         -
-- /dev/null
        6763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 5314   6764   
@@ -0,0 +1 @@
        6765  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 5315   6766   
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
 5316   6767   
new file mode 100644
 5317   6768   
index 0000000..961bc10
 5318         -
-- /dev/null
        6769  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 5319   6770   
@@ -0,0 +1,6 @@
        6771  +
GET /?ሴ=bar HTTP/1.1
        6772  +
Host:example.amazonaws.com
        6773  +
X-Amz-Date:20150830T123600Z
        6774  +
X-Amz-Region-Set:us-east-1
        6775  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        6776  +
 5320   6777   
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
 5321   6778   
new file mode 100644
 5322   6779   
index 0000000..e78ed70
 5323         -
-- /dev/null
        6780  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 5324   6781   
@@ -0,0 +1,4 @@
        6782  +
AWS4-ECDSA-P256-SHA256
        6783  +
20150830T123600Z
        6784  +
20150830/service/aws4_request
        6785  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 5325   6786   
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
 5326   6787   
new file mode 100644
 5327   6788   
index 0000000..379dcb2
 5328         -
-- /dev/null
        6789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 5329   6790   
@@ -0,0 +1,4 @@
        6791  +
{
        6792  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6793  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6794  +
}
 5330   6795   
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
 5331   6796   
new file mode 100644
 5332   6797   
index 0000000..6d5ae93
 5333         -
-- /dev/null
        6798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 5334   6799   
@@ -0,0 +1,7 @@
        6800  +
GET
        6801  +
/
        6802  +
%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
        6803  +
host:example.amazonaws.com
        6804  +
        6805  +
host
        6806  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5335   6807   
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
 5336   6808   
new file mode 100644
 5337   6809   
index 0000000..92107f2
 5338         -
-- /dev/null
        6810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 5339   6811   
@@ -0,0 +1 @@
        6812  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 5340   6813   
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
 5341   6814   
new file mode 100644
 5342   6815   
index 0000000..bb8a75b
 5343         -
-- /dev/null
        6816  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 5344   6817   
@@ -0,0 +1,3 @@
        6818  +
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
        6819  +
Host:example.amazonaws.com
        6820  +
 5345   6821   
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
 5346   6822   
new file mode 100644
 5347   6823   
index 0000000..9fa94c7
 5348         -
-- /dev/null
        6824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 5349   6825   
@@ -0,0 +1,4 @@
        6826  +
AWS4-ECDSA-P256-SHA256
        6827  +
20150830T123600Z
        6828  +
20150830/service/aws4_request
        6829  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 5350   6830   
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
 5351   6831   
new file mode 100644
 5352   6832   
index 0000000..aff333a
 5353         -
-- /dev/null
        6833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 5354   6834   
@@ -0,0 +1,2 @@
        6835  +
GET /?ሴ=bar HTTP/1.1
        6836  +
Host:example.amazonaws.com
 5355   6837   
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
 5356   6838   
new file mode 100644
 5357   6839   
index 0000000..a334e18
 5358         -
-- /dev/null
        6840  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 5359   6841   
@@ -0,0 +1,13 @@
        6842  +
{
        6843  +
    "credentials": {
        6844  +
        "access_key_id": "AKIDEXAMPLE",
        6845  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6846  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6847  +
    },
        6848  +
    "expiration_in_seconds": 3600,
        6849  +
    "normalize": true,
        6850  +
    "region": "us-east-1",
        6851  +
    "service": "service",
        6852  +
    "sign_body": false,
        6853  +
    "timestamp": "2015-08-30T12:36:00Z"
        6854  +
}
              \
 No newline at end of file
 5360   6855   
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
 5361   6856   
similarity index 99%
 5362   6857   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 5363   6858   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5364   6859   
index f14defd..0e9ad42 100644
 5365         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
        6860  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 5366   6861   
@@ -1,10 +1,10 @@
 5367   6862   
GET
 5368   6863   
/
 5369   6864   
 5370   6865   
host:example.amazonaws.com
 5371   6866   
x-amz-date:20150830T123600Z
 5372   6867   
x-amz-region-set:us-east-1
 5373   6868   
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
 5374   6869   
 5375   6870   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5376         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6871  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5377   6872   
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
 5378   6873   
new file mode 100644
 5379   6874   
index 0000000..a7673b5
 5380         -
-- /dev/null
        6875  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 5381   6876   
@@ -0,0 +1 @@
        6877  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 5382   6878   
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
 5383   6879   
new file mode 100644
 5384   6880   
index 0000000..ed16e76
 5385         -
-- /dev/null
        6881  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 5386   6882   
@@ -0,0 +1,7 @@
        6883  +
GET / HTTP/1.1
        6884  +
Host:example.amazonaws.com
        6885  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6886  +
X-Amz-Date:20150830T123600Z
        6887  +
X-Amz-Region-Set:us-east-1
        6888  +
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
        6889  +
 5387   6890   
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
 5388   6891   
similarity index 99%
 5389   6892   
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
 5390   6893   
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
 5391   6894   
index 4edece5..6c1ec65 100644
 5392         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-string-to-sign.txt
        6895  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-string-to-sign.txt
 5393   6896   
@@ -1,4 +1,4 @@
 5394   6897   
AWS4-ECDSA-P256-SHA256
 5395   6898   
20150830T123600Z
 5396   6899   
20150830/service/aws4_request
 5397         -
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
        6900  +
79893373104239a0547df489af395ec3c1b8873a8601f07f11ffd3f1ac557e7d
              \
 No newline at end of file
 5398   6901   
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
 5399   6902   
new file mode 100644
 5400   6903   
index 0000000..379dcb2
 5401         -
-- /dev/null
        6904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 5402   6905   
@@ -0,0 +1,4 @@
        6906  +
{
        6907  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6908  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6909  +
}
 5403   6910   
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
 5404   6911   
similarity index 99%
 5405   6912   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 5406   6913   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5407   6914   
index 7c042af..1876b42 100644
 5408         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
        6915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 5409   6916   
@@ -1,7 +1,7 @@
 5410   6917   
GET
 5411   6918   
/
 5412   6919   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Security-Token=6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267&X-Amz-SignedHeaders=host
 5413   6920   
host:example.amazonaws.com
 5414   6921   
 5415   6922   
host
 5416         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6923  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5417   6924   
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
 5418   6925   
new file mode 100644
 5419   6926   
index 0000000..903dfb4
 5420         -
-- /dev/null
        6927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 5421   6928   
@@ -0,0 +1 @@
        6929  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 5422   6930   
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
 5423   6931   
new file mode 100644
 5424   6932   
index 0000000..bf1d246
 5425         -
-- /dev/null
        6933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 5426   6934   
@@ -0,0 +1,3 @@
        6935  +
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
        6936  +
Host:example.amazonaws.com
        6937  +
 5427   6938   
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
 5428   6939   
similarity index 99%
 5429   6940   
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
 5430   6941   
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
 5431   6942   
index 0fd066a..f1b1790 100644
 5432         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-string-to-sign.txt
        6943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-string-to-sign.txt
 5433   6944   
@@ -1,4 +1,4 @@
 5434   6945   
AWS4-ECDSA-P256-SHA256
 5435   6946   
20150830T123600Z
 5436   6947   
20150830/service/aws4_request
 5437         -
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
        6948  +
496062b4c2ed2175fe08ad084158783fa8d013c694542af721d49b25d1ebd390
              \
 No newline at end of file
 5438   6949   
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
 5439   6950   
similarity index 60%
 5440   6951   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 5441   6952   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5442   6953   
index 0f7a9bf..e659c3b 100644
 5443         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 5444   6955   
@@ -1,3 +1,2 @@
 5445   6956   
GET / HTTP/1.1
 5446   6957   
Host:example.amazonaws.com
 5447         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5448   6958   
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
 5449   6959   
new file mode 100644
 5450   6960   
index 0000000..76db73d
 5451         -
-- /dev/null
        6961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 5452   6962   
@@ -0,0 +1,9 @@
        6963  +
GET
        6964  +
/
        6965  +
        6966  +
host:example.amazonaws.com
        6967  +
x-amz-date:20150830T123600Z
        6968  +
x-amz-region-set:us-east-1
        6969  +
        6970  +
host;x-amz-date;x-amz-region-set
        6971  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5453   6972   
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
 5454   6973   
new file mode 100644
 5455   6974   
index 0000000..0468d80
 5456         -
-- /dev/null
        6975  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 5457   6976   
@@ -0,0 +1,12 @@
        6977  +
{
        6978  +
    "credentials": {
        6979  +
        "access_key_id": "AKIDEXAMPLE",
        6980  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6981  +
    },
        6982  +
    "expiration_in_seconds": 3600,
        6983  +
    "normalize": true,
        6984  +
    "region": "us-east-1",
        6985  +
    "service": "service",
        6986  +
    "sign_body": false,
        6987  +
    "timestamp": "2015-08-30T12:36:00Z"
        6988  +
}
              \
 No newline at end of file
 5458   6989   
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
 5459   6990   
new file mode 100644
 5460   6991   
index 0000000..76db73d
 5461         -
-- /dev/null
        6992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 5462   6993   
@@ -0,0 +1,9 @@
        6994  +
GET
        6995  +
/
        6996  +
        6997  +
host:example.amazonaws.com
        6998  +
x-amz-date:20150830T123600Z
        6999  +
x-amz-region-set:us-east-1
        7000  +
        7001  +
host;x-amz-date;x-amz-region-set
        7002  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5463   7003   
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
 5464   7004   
new file mode 100644
 5465   7005   
index 0000000..a96ff24
 5466         -
-- /dev/null
        7006  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 5467   7007   
@@ -0,0 +1 @@
        7008  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 5468   7009   
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
 5469   7010   
new file mode 100644
 5470   7011   
index 0000000..689078b
 5471         -
-- /dev/null
        7012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 5472   7013   
@@ -0,0 +1,6 @@
        7014  +
GET / HTTP/1.1
        7015  +
Host:example.amazonaws.com
        7016  +
X-Amz-Date:20150830T123600Z
        7017  +
X-Amz-Region-Set:us-east-1
        7018  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        7019  +
 5473   7020   
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
 5474   7021   
new file mode 100644
 5475   7022   
index 0000000..600f1d8
 5476         -
-- /dev/null
        7023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 5477   7024   
@@ -0,0 +1,4 @@
        7025  +
AWS4-ECDSA-P256-SHA256
        7026  +
20150830T123600Z
        7027  +
20150830/service/aws4_request
        7028  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5478   7029   
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
 5479   7030   
new file mode 100644
 5480   7031   
index 0000000..379dcb2
 5481         -
-- /dev/null
        7032  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 5482   7033   
@@ -0,0 +1,4 @@
        7034  +
{
        7035  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7036  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7037  +
}
 5483   7038   
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
 5484   7039   
new file mode 100644
 5485   7040   
index 0000000..779c51c
 5486         -
-- /dev/null
        7041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 5487   7042   
@@ -0,0 +1,7 @@
        7043  +
GET
        7044  +
/
        7045  +
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
        7046  +
host:example.amazonaws.com
        7047  +
        7048  +
host
        7049  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5488   7050   
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
 5489   7051   
new file mode 100644
 5490   7052   
index 0000000..cc42158
 5491         -
-- /dev/null
        7053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 5492   7054   
@@ -0,0 +1 @@
        7055  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 5493   7056   
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
 5494   7057   
new file mode 100644
 5495   7058   
index 0000000..dc6d01d
 5496         -
-- /dev/null
        7059  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 5497   7060   
@@ -0,0 +1,3 @@
        7061  +
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
        7062  +
Host:example.amazonaws.com
        7063  +
 5498   7064   
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
 5499   7065   
new file mode 100644
 5500   7066   
index 0000000..6e29a7e
 5501         -
-- /dev/null
        7067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 5502   7068   
@@ -0,0 +1,4 @@
        7069  +
AWS4-ECDSA-P256-SHA256
        7070  +
20150830T123600Z
        7071  +
20150830/service/aws4_request
        7072  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 5503   7073   
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
 5504   7074   
new file mode 100644
 5505   7075   
index 0000000..e659c3b
 5506         -
-- /dev/null
        7076  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 5507   7077   
@@ -0,0 +1,2 @@
        7078  +
GET / HTTP/1.1
        7079  +
Host:example.amazonaws.com
 5508   7080   
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
 5509   7081   
new file mode 100644
 5510   7082   
index 0000000..600f1d8
 5511         -
-- /dev/null
        7083  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 5512   7084   
@@ -0,0 +1,4 @@
        7085  +
AWS4-ECDSA-P256-SHA256
        7086  +
20150830T123600Z
        7087  +
20150830/service/aws4_request
        7088  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 5513   7089   
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
 5514   7090   
new file mode 100644
 5515   7091   
index 0000000..0468d80
 5516         -
-- /dev/null
        7092  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 5517   7093   
@@ -0,0 +1,12 @@
        7094  +
{
        7095  +
    "credentials": {
        7096  +
        "access_key_id": "AKIDEXAMPLE",
        7097  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7098  +
    },
        7099  +
    "expiration_in_seconds": 3600,
        7100  +
    "normalize": true,
        7101  +
    "region": "us-east-1",
        7102  +
    "service": "service",
        7103  +
    "sign_body": false,
        7104  +
    "timestamp": "2015-08-30T12:36:00Z"
        7105  +
}
              \
 No newline at end of file
 5518   7106   
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
 5519   7107   
similarity index 99%
 5520   7108   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 5521   7109   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5522   7110   
index a6942c1..e881ac7 100644
 5523         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
        7111  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 5524   7112   
@@ -1,9 +1,9 @@
 5525   7113   
POST
 5526   7114   
/
 5527   7115   
 5528   7116   
host:example.amazonaws.com
 5529   7117   
x-amz-date:20150830T123600Z
 5530   7118   
x-amz-region-set:us-east-1
 5531   7119   
 5532   7120   
host;x-amz-date;x-amz-region-set
 5533         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7121  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5534   7122   
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
 5535   7123   
new file mode 100644
 5536   7124   
index 0000000..4210210
 5537         -
-- /dev/null
        7125  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 5538   7126   
@@ -0,0 +1 @@
        7127  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 5539   7128   
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
 5540   7129   
new file mode 100644
 5541   7130   
index 0000000..257b110
 5542         -
-- /dev/null
        7131  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 5543   7132   
@@ -0,0 +1,6 @@
        7133  +
POST / HTTP/1.1
        7134  +
Host:example.amazonaws.com
        7135  +
X-Amz-Date:20150830T123600Z
        7136  +
X-Amz-Region-Set:us-east-1
        7137  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        7138  +
 5544   7139   
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
 5545   7140   
similarity index 99%
 5546   7141   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 5547   7142   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5548   7143   
index d5650cb..f8adf13 100644
 5549         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
        7144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 5550   7145   
@@ -1,4 +1,4 @@
 5551   7146   
AWS4-ECDSA-P256-SHA256
 5552   7147   
20150830T123600Z
 5553   7148   
20150830/service/aws4_request
 5554         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7149  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5555   7150   
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
 5556   7151   
new file mode 100644
 5557   7152   
index 0000000..379dcb2
 5558         -
-- /dev/null
        7153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 5559   7154   
@@ -0,0 +1,4 @@
        7155  +
{
        7156  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7157  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7158  +
}
 5560   7159   
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
 5561   7160   
similarity index 99%
 5562   7161   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 5563   7162   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5564   7163   
index e48ce07..5ea8e3c 100644
 5565         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
        7164  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 5566   7165   
@@ -1,7 +1,7 @@
 5567   7166   
POST
 5568   7167   
/
 5569   7168   
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
 5570   7169   
host:example.amazonaws.com
 5571   7170   
 5572   7171   
host
 5573         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7172  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5574   7173   
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
 5575   7174   
new file mode 100644
 5576   7175   
index 0000000..9e2069e
 5577         -
-- /dev/null
        7176  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 5578   7177   
@@ -0,0 +1 @@
        7178  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 5579   7179   
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
 5580   7180   
new file mode 100644
 5581   7181   
index 0000000..67f5d29
 5582         -
-- /dev/null
        7182  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 5583   7183   
@@ -0,0 +1,3 @@
        7184  +
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
        7185  +
Host:example.amazonaws.com
        7186  +
 5584   7187   
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
 5585   7188   
similarity index 99%
 5586   7189   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 5587   7190   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5588   7191   
index 34e3382..711c162 100644
 5589         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
        7192  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 5590   7193   
@@ -1,4 +1,4 @@
 5591   7194   
AWS4-ECDSA-P256-SHA256
 5592   7195   
20150830T123600Z
 5593   7196   
20150830/service/aws4_request
 5594         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7197  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5595   7198   
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
 5596   7199   
similarity index 61%
 5597   7200   
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
 5598   7201   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5599   7202   
index 3dc4179..3f0a82a 100644
 5600         -
-- 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
        7203  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 5601   7204   
@@ -1,3 +1,2 @@
 5602   7205   
POST / HTTP/1.1
 5603   7206   
Host:example.amazonaws.com
 5604         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5605   7207   
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
 5606   7208   
new file mode 100644
 5607   7209   
index 0000000..0468d80
 5608         -
-- /dev/null
        7210  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 5609   7211   
@@ -0,0 +1,12 @@
        7212  +
{
        7213  +
    "credentials": {
        7214  +
        "access_key_id": "AKIDEXAMPLE",
        7215  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7216  +
    },
        7217  +
    "expiration_in_seconds": 3600,
        7218  +
    "normalize": true,
        7219  +
    "region": "us-east-1",
        7220  +
    "service": "service",
        7221  +
    "sign_body": false,
        7222  +
    "timestamp": "2015-08-30T12:36:00Z"
        7223  +
}
              \
 No newline at end of file
 5610   7224   
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
 5611   7225   
similarity index 99%
 5612   7226   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 5613   7227   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5614   7228   
index a8e1727..2883822 100644
 5615         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
        7229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 5616   7230   
@@ -1,10 +1,10 @@
 5617   7231   
POST
 5618   7232   
/
 5619   7233   
 5620   7234   
host:example.amazonaws.com
 5621   7235   
my-header1:value1
 5622   7236   
x-amz-date:20150830T123600Z
 5623   7237   
x-amz-region-set:us-east-1
 5624   7238   
 5625   7239   
host;my-header1;x-amz-date;x-amz-region-set
 5626         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7240  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5627   7241   
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
 5628   7242   
new file mode 100644
 5629   7243   
index 0000000..e3c2e6e
 5630         -
-- /dev/null
        7244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 5631   7245   
@@ -0,0 +1 @@
        7246  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 5632   7247   
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
 5633   7248   
new file mode 100644
 5634   7249   
index 0000000..1d6e288
 5635         -
-- /dev/null
        7250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 5636   7251   
@@ -0,0 +1,7 @@
        7252  +
POST / HTTP/1.1
        7253  +
Host:example.amazonaws.com
        7254  +
My-Header1:value1
        7255  +
X-Amz-Date:20150830T123600Z
        7256  +
X-Amz-Region-Set:us-east-1
        7257  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        7258  +
 5637   7259   
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
 5638   7260   
similarity index 99%
 5639   7261   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 5640   7262   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5641   7263   
index f6e3e9b..7c5236a 100644
 5642         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
        7264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 5643   7265   
@@ -1,4 +1,4 @@
 5644   7266   
AWS4-ECDSA-P256-SHA256
 5645   7267   
20150830T123600Z
 5646   7268   
20150830/service/aws4_request
 5647         -
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
        7269  +
b92b1e85236a12f9d118f85fb6686c83b0e83fb3428f8d4da3cc9acb2851fcfa
              \
 No newline at end of file
 5648   7270   
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
 5649   7271   
new file mode 100644
 5650   7272   
index 0000000..379dcb2
 5651         -
-- /dev/null
        7273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 5652   7274   
@@ -0,0 +1,4 @@
        7275  +
{
        7276  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7277  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7278  +
}
 5653   7279   
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
 5654   7280   
similarity index 99%
 5655   7281   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 5656   7282   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5657   7283   
index 0ae73e1..2cf3f29 100644
 5658         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
        7284  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 5659   7285   
@@ -1,8 +1,8 @@
 5660   7286   
POST
 5661   7287   
/
 5662   7288   
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
 5663   7289   
host:example.amazonaws.com
 5664   7290   
my-header1:value1
 5665   7291   
 5666   7292   
host;my-header1
 5667         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7293  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5668   7294   
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
 5669   7295   
new file mode 100644
 5670   7296   
index 0000000..2a08401
 5671         -
-- /dev/null
        7297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 5672   7298   
@@ -0,0 +1 @@
        7299  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 5673   7300   
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
 5674   7301   
new file mode 100644
 5675   7302   
index 0000000..8d2343f
 5676         -
-- /dev/null
        7303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 5677   7304   
@@ -0,0 +1,4 @@
        7305  +
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
        7306  +
Host:example.amazonaws.com
        7307  +
My-Header1:value1
        7308  +
 5678   7309   
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
 5679   7310   
similarity index 99%
 5680   7311   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 5681   7312   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5682   7313   
index 8cb96bf..2c4db7a 100644
 5683         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
        7314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 5684   7315   
@@ -1,4 +1,4 @@
 5685   7316   
AWS4-ECDSA-P256-SHA256
 5686   7317   
20150830T123600Z
 5687   7318   
20150830/service/aws4_request
 5688         -
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
        7319  +
336638ab840d4785edc7db35ab9c036bc15ffb2dc1a4e05b04f3a7cd7407593f
              \
 No newline at end of file
 5689   7320   
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
 5690   7321   
similarity index 69%
 5691   7322   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 5692   7323   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5693   7324   
index 0253f19..917720e 100644
 5694         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        7325  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 5695   7326   
@@ -1,4 +1,3 @@
 5696   7327   
POST / HTTP/1.1
 5697   7328   
Host:example.amazonaws.com
 5698   7329   
My-Header1:value1
 5699         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5700   7330   
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
 5701   7331   
new file mode 100644
 5702   7332   
index 0000000..0468d80
 5703         -
-- /dev/null
        7333  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 5704   7334   
@@ -0,0 +1,12 @@
        7335  +
{
        7336  +
    "credentials": {
        7337  +
        "access_key_id": "AKIDEXAMPLE",
        7338  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7339  +
    },
        7340  +
    "expiration_in_seconds": 3600,
        7341  +
    "normalize": true,
        7342  +
    "region": "us-east-1",
        7343  +
    "service": "service",
        7344  +
    "sign_body": false,
        7345  +
    "timestamp": "2015-08-30T12:36:00Z"
        7346  +
}
              \
 No newline at end of file
 5705   7347   
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
 5706   7348   
similarity index 99%
 5707   7349   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 5708   7350   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5709   7351   
index 1dc3ef8..164e65c 100644
 5710         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
        7352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 5711   7353   
@@ -1,10 +1,10 @@
 5712   7354   
POST
 5713   7355   
/
 5714   7356   
 5715   7357   
host:example.amazonaws.com
 5716   7358   
my-header1:VALUE1
 5717   7359   
x-amz-date:20150830T123600Z
 5718   7360   
x-amz-region-set:us-east-1
 5719   7361   
 5720   7362   
host;my-header1;x-amz-date;x-amz-region-set
 5721         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7363  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5722   7364   
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
 5723   7365   
new file mode 100644
 5724   7366   
index 0000000..7072b0e
 5725         -
-- /dev/null
        7367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 5726   7368   
@@ -0,0 +1 @@
        7369  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 5727   7370   
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
 5728   7371   
new file mode 100644
 5729   7372   
index 0000000..17f5e3e
 5730         -
-- /dev/null
        7373  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 5731   7374   
@@ -0,0 +1,7 @@
        7375  +
POST / HTTP/1.1
        7376  +
Host:example.amazonaws.com
        7377  +
My-Header1:VALUE1
        7378  +
X-Amz-Date:20150830T123600Z
        7379  +
X-Amz-Region-Set:us-east-1
        7380  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        7381  +
 5732   7382   
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
 5733   7383   
similarity index 99%
 5734   7384   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 5735   7385   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5736   7386   
index 59c7e45..620f54e 100644
 5737         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
        7387  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 5738   7388   
@@ -1,4 +1,4 @@
 5739   7389   
AWS4-ECDSA-P256-SHA256
 5740   7390   
20150830T123600Z
 5741   7391   
20150830/service/aws4_request
 5742         -
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
        7392  +
7de5a74bc45fb5c8a90faada2ab9538e69e4a5eb7f330f62387715669cecd492
              \
 No newline at end of file
 5743   7393   
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
 5744   7394   
new file mode 100644
 5745   7395   
index 0000000..379dcb2
 5746         -
-- /dev/null
        7396  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 5747   7397   
@@ -0,0 +1,4 @@
        7398  +
{
        7399  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7400  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7401  +
}
 5748   7402   
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
 5749   7403   
similarity index 99%
 5750   7404   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 5751   7405   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5752   7406   
index 377e6f3..23e0da3 100644
 5753         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
        7407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 5754   7408   
@@ -1,8 +1,8 @@
 5755   7409   
POST
 5756   7410   
/
 5757   7411   
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
 5758   7412   
host:example.amazonaws.com
 5759   7413   
my-header1:VALUE1
 5760   7414   
 5761   7415   
host;my-header1
 5762         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7416  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5763   7417   
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
 5764   7418   
new file mode 100644
 5765   7419   
index 0000000..a18acb8
 5766         -
-- /dev/null
        7420  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 5767   7421   
@@ -0,0 +1 @@
        7422  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 5768   7423   
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
 5769   7424   
new file mode 100644
 5770   7425   
index 0000000..7cbdcfa
 5771         -
-- /dev/null
        7426  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 5772   7427   
@@ -0,0 +1,4 @@
        7428  +
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
        7429  +
Host:example.amazonaws.com
        7430  +
My-Header1:VALUE1
        7431  +
 5773   7432   
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
 5774   7433   
similarity index 99%
 5775   7434   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 5776   7435   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5777   7436   
index 84a7afd..0c90627 100644
 5778         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
        7437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 5779   7438   
@@ -1,4 +1,4 @@
 5780   7439   
AWS4-ECDSA-P256-SHA256
 5781   7440   
20150830T123600Z
 5782   7441   
20150830/service/aws4_request
 5783         -
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
        7442  +
949fb555e05d3289760ff0f0566ad73a69ed865000d9843b93a15b916dbc8b6f
              \
 No newline at end of file
 5784   7443   
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
 5785   7444   
similarity index 69%
 5786   7445   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 5787   7446   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5788   7447   
index 3f9987a..5f14c91 100644
 5789         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        7448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 5790   7449   
@@ -1,4 +1,3 @@
 5791   7450   
POST / HTTP/1.1
 5792   7451   
Host:example.amazonaws.com
 5793   7452   
My-Header1:VALUE1
 5794         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5795   7453   
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
 5796   7454   
new file mode 100644
 5797   7455   
index 0000000..8f1d5ce
 5798         -
-- /dev/null
        7456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 5799   7457   
@@ -0,0 +1,14 @@
        7458  +
{
        7459  +
    "credentials": {
        7460  +
        "access_key_id": "AKIDEXAMPLE",
        7461  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7462  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7463  +
    },
        7464  +
    "expiration_in_seconds": 3600,
        7465  +
    "normalize": true,
        7466  +
    "region": "us-east-1",
        7467  +
    "service": "service",
        7468  +
    "sign_body": false,
        7469  +
    "timestamp": "2015-08-30T12:36:00Z",
        7470  +
    "omit_session_token": true
        7471  +
}
 5800   7472   
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
 5801   7473   
similarity index 99%
 5802   7474   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 5803   7475   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5804   7476   
index a6942c1..e881ac7 100644
 5805         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
        7477  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 5806   7478   
@@ -1,9 +1,9 @@
 5807   7479   
POST
 5808   7480   
/
 5809   7481   
 5810   7482   
host:example.amazonaws.com
 5811   7483   
x-amz-date:20150830T123600Z
 5812   7484   
x-amz-region-set:us-east-1
 5813   7485   
 5814   7486   
host;x-amz-date;x-amz-region-set
 5815         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7487  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5816   7488   
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
 5817   7489   
new file mode 100644
 5818   7490   
index 0000000..9c5ecb9
 5819         -
-- /dev/null
        7491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 5820   7492   
@@ -0,0 +1 @@
        7493  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 5821   7494   
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
 5822   7495   
similarity index 52%
 5823   7496   
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
 5824   7497   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5825   7498   
index 9d91775..61b6527 100644
 5826         -
-- 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
        7499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 5827   7500   
@@ -1,4 +1,7 @@
 5828   7501   
POST / HTTP/1.1
 5829   7502   
Host:example.amazonaws.com
        7503  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5830   7504   
X-Amz-Date:20150830T123600Z
 5831         -
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
        7505  +
X-Amz-Region-Set:us-east-1
        7506  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        7507  +
 5832   7508   
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
 5833   7509   
similarity index 99%
 5834   7510   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 5835   7511   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5836   7512   
index d5650cb..f8adf13 100644
 5837         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
        7513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 5838   7514   
@@ -1,4 +1,4 @@
 5839   7515   
AWS4-ECDSA-P256-SHA256
 5840   7516   
20150830T123600Z
 5841   7517   
20150830/service/aws4_request
 5842         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7518  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 5843   7519   
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
 5844   7520   
new file mode 100644
 5845   7521   
index 0000000..379dcb2
 5846         -
-- /dev/null
        7522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 5847   7523   
@@ -0,0 +1,4 @@
        7524  +
{
        7525  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7526  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7527  +
}
 5848   7528   
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
 5849   7529   
similarity index 99%
 5850   7530   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 5851   7531   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5852   7532   
index e48ce07..5ea8e3c 100644
 5853         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
        7533  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 5854   7534   
@@ -1,7 +1,7 @@
 5855   7535   
POST
 5856   7536   
/
 5857   7537   
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
 5858   7538   
host:example.amazonaws.com
 5859   7539   
 5860   7540   
host
 5861         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7541  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5862   7542   
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
 5863   7543   
new file mode 100644
 5864   7544   
index 0000000..ff8823a
 5865         -
-- /dev/null
        7545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 5866   7546   
@@ -0,0 +1 @@
        7547  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 5867   7548   
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
 5868   7549   
new file mode 100644
 5869   7550   
index 0000000..cfac41b
 5870         -
-- /dev/null
        7551  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 5871   7552   
@@ -0,0 +1,3 @@
        7553  +
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
        7554  +
Host:example.amazonaws.com
        7555  +
 5872   7556   
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
 5873   7557   
similarity index 99%
 5874   7558   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 5875   7559   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5876   7560   
index 34e3382..711c162 100644
 5877         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
        7561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5878   7562   
@@ -1,4 +1,4 @@
 5879   7563   
AWS4-ECDSA-P256-SHA256
 5880   7564   
20150830T123600Z
 5881   7565   
20150830/service/aws4_request
 5882         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        7566  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 5883   7567   
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
 5884   7568   
similarity index 61%
 5885   7569   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 5886   7570   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5887   7571   
index 3dc4179..3f0a82a 100644
 5888         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        7572  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5889   7573   
@@ -1,3 +1,2 @@
 5890   7574   
POST / HTTP/1.1
 5891   7575   
Host:example.amazonaws.com
 5892         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5893   7576   
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
 5894   7577   
new file mode 100644
 5895   7578   
index 0000000..5187392
 5896         -
-- /dev/null
        7579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 5897   7580   
@@ -0,0 +1,14 @@
        7581  +
{
        7582  +
    "credentials": {
        7583  +
        "access_key_id": "AKIDEXAMPLE",
        7584  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        7585  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        7586  +
    },
        7587  +
    "expiration_in_seconds": 3600,
        7588  +
    "normalize": true,
        7589  +
    "region": "us-east-1",
        7590  +
    "service": "service",
        7591  +
    "sign_body": false,
        7592  +
    "timestamp": "2015-08-30T12:36:00Z",
        7593  +
    "omit_session_token": false
        7594  +
}
 5898   7595   
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
 5899   7596   
similarity index 99%
 5900   7597   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 5901   7598   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5902   7599   
index dd408c8..e95924e 100644
 5903         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
        7600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5904   7601   
@@ -1,10 +1,10 @@
 5905   7602   
POST
 5906   7603   
/
 5907   7604   
 5908   7605   
host:example.amazonaws.com
 5909   7606   
x-amz-date:20150830T123600Z
 5910   7607   
x-amz-region-set:us-east-1
 5911   7608   
x-amz-security-token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 5912   7609   
 5913   7610   
host;x-amz-date;x-amz-region-set;x-amz-security-token
 5914         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7611  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5915   7612   
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
 5916   7613   
new file mode 100644
 5917   7614   
index 0000000..1573f07
 5918         -
-- /dev/null
        7615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 5919   7616   
@@ -0,0 +1 @@
        7617  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 5920   7618   
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
 5921   7619   
new file mode 100644
 5922   7620   
index 0000000..6ef9a08
 5923         -
-- /dev/null
        7621  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 5924   7622   
@@ -0,0 +1,7 @@
        7623  +
POST / HTTP/1.1
        7624  +
Host:example.amazonaws.com
        7625  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        7626  +
X-Amz-Date:20150830T123600Z
        7627  +
X-Amz-Region-Set:us-east-1
        7628  +
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
        7629  +
 5925   7630   
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
 5926   7631   
similarity index 99%
 5927   7632   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 5928   7633   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5929   7634   
index f352b54..3c3235f 100644
 5930         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
        7635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5931   7636   
@@ -1,4 +1,4 @@
 5932   7637   
AWS4-ECDSA-P256-SHA256
 5933   7638   
20150830T123600Z
 5934   7639   
20150830/service/aws4_request
 5935         -
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
        7640  +
964c15d46a67b327b877c02d680c81cb75df04e85144142e190da565ff0d029f
              \
 No newline at end of file
 5936   7641   
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
 5937   7642   
new file mode 100644
 5938   7643   
index 0000000..379dcb2
 5939         -
-- /dev/null
        7644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 5940   7645   
@@ -0,0 +1,4 @@
        7646  +
{
        7647  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7648  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7649  +
}
 5941   7650   
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
 5942   7651   
similarity index 99%
 5943   7652   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 5944   7653   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5945   7654   
index 832cdc0..63b7de5 100644
 5946         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
        7655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5947   7656   
@@ -1,7 +1,7 @@
 5948   7657   
POST
 5949   7658   
/
 5950   7659   
X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-SignedHeaders=host
 5951   7660   
host:example.amazonaws.com
 5952   7661   
 5953   7662   
host
 5954         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7663  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 5955   7664   
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
 5956   7665   
new file mode 100644
 5957   7666   
index 0000000..713f57c
 5958         -
-- /dev/null
        7667  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 5959   7668   
@@ -0,0 +1 @@
        7669  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 5960   7670   
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
 5961   7671   
new file mode 100644
 5962   7672   
index 0000000..32c3bb3
 5963         -
-- /dev/null
        7673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 5964   7674   
@@ -0,0 +1,3 @@
        7675  +
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
        7676  +
Host:example.amazonaws.com
        7677  +
 5965   7678   
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
 5966   7679   
similarity index 99%
 5967   7680   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 5968   7681   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5969   7682   
index d7f3668..b46cd8c 100644
 5970         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
        7683  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5971   7684   
@@ -1,4 +1,4 @@
 5972   7685   
AWS4-ECDSA-P256-SHA256
 5973   7686   
20150830T123600Z
 5974   7687   
20150830/service/aws4_request
 5975         -
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
        7688  +
c3a8ba26c461df46b5010b756fb8644fd922a2aea95d77b56295e5e4d3bb155f
              \
 No newline at end of file
 5976   7689   
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
 5977   7690   
similarity index 60%
 5978   7691   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 5979   7692   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5980   7693   
index 8b5efc8..3f0a82a 100644
 5981         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        7694  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5982   7695   
@@ -1,3 +1,2 @@
 5983   7696   
POST / HTTP/1.1
 5984   7697   
Host:example.amazonaws.com
 5985         -
X-Amz-Date:20150830T123600Z
 5986   7698   
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
 5987   7699   
new file mode 100644
 5988   7700   
index 0000000..0468d80
 5989         -
-- /dev/null
        7701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 5990   7702   
@@ -0,0 +1,12 @@
        7703  +
{
        7704  +
    "credentials": {
        7705  +
        "access_key_id": "AKIDEXAMPLE",
        7706  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7707  +
    },
        7708  +
    "expiration_in_seconds": 3600,
        7709  +
    "normalize": true,
        7710  +
    "region": "us-east-1",
        7711  +
    "service": "service",
        7712  +
    "sign_body": false,
        7713  +
    "timestamp": "2015-08-30T12:36:00Z"
        7714  +
}
              \
 No newline at end of file
 5991   7715   
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
 5992   7716   
similarity index 99%
 5993   7717   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 5994   7718   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5995   7719   
index 02af60f..34b8c11 100644
 5996         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
        7720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5997   7721   
@@ -1,9 +1,9 @@
 5998   7722   
POST
 5999   7723   
/
 6000   7724   
Param1=value1
 6001   7725   
host:example.amazonaws.com
 6002   7726   
x-amz-date:20150830T123600Z
 6003   7727   
x-amz-region-set:us-east-1
 6004   7728   
 6005   7729   
host;x-amz-date;x-amz-region-set
 6006         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7730  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6007   7731   
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
 6008   7732   
new file mode 100644
 6009   7733   
index 0000000..aac6427
 6010         -
-- /dev/null
        7734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 6011   7735   
@@ -0,0 +1 @@
        7736  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 6012   7737   
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
 6013   7738   
new file mode 100644
 6014   7739   
index 0000000..a611436
 6015         -
-- /dev/null
        7740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 6016   7741   
@@ -0,0 +1,6 @@
        7742  +
POST /?Param1=value1 HTTP/1.1
        7743  +
Host:example.amazonaws.com
        7744  +
X-Amz-Date:20150830T123600Z
        7745  +
X-Amz-Region-Set:us-east-1
        7746  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        7747  +
 6017   7748   
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
 6018   7749   
similarity index 99%
 6019   7750   
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
 6020   7751   
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
 6021   7752   
index 4256b4f..ad88dff 100644
 6022         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt
        7753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
 6023   7754   
@@ -1,4 +1,4 @@
 6024   7755   
AWS4-ECDSA-P256-SHA256
 6025   7756   
20150830T123600Z
 6026   7757   
20150830/service/aws4_request
 6027         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7758  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 6028   7759   
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
 6029   7760   
new file mode 100644
 6030   7761   
index 0000000..379dcb2
 6031         -
-- /dev/null
        7762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 6032   7763   
@@ -0,0 +1,4 @@
        7764  +
{
        7765  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7766  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7767  +
}
 6033   7768   
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
 6034   7769   
similarity index 99%
 6035   7770   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 6036   7771   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 6037   7772   
index fa84bbd..76d5ad6 100644
 6038         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
        7773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 6039   7774   
@@ -1,7 +1,7 @@
 6040   7775   
POST
 6041   7776   
/
 6042   7777   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 6043   7778   
host:example.amazonaws.com
 6044   7779   
 6045   7780   
host
 6046         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7781  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6047   7782   
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
 6048   7783   
new file mode 100644
 6049   7784   
index 0000000..4cb1c94
 6050         -
-- /dev/null
        7785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 6051   7786   
@@ -0,0 +1 @@
        7787  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 6052   7788   
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
 6053   7789   
new file mode 100644
 6054   7790   
index 0000000..bd22b97
 6055         -
-- /dev/null
        7791  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 6056   7792   
@@ -0,0 +1,3 @@
        7793  +
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
        7794  +
Host:example.amazonaws.com
        7795  +
 6057   7796   
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
 6058   7797   
similarity index 99%
 6059   7798   
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
 6060   7799   
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
 6061   7800   
index de270ef..8c9d319 100644
 6062         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt
        7801  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
 6063   7802   
@@ -1,4 +1,4 @@
 6064   7803   
AWS4-ECDSA-P256-SHA256
 6065   7804   
20150830T123600Z
 6066   7805   
20150830/service/aws4_request
 6067         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7806  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 6068   7807   
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
 6069   7808   
similarity index 67%
 6070   7809   
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
 6071   7810   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 6072   7811   
index 9157bc7..c9d6e5d 100644
 6073         -
-- 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
        7812  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 6074   7813   
@@ -1,3 +1,2 @@
 6075   7814   
POST /?Param1=value1 HTTP/1.1
 6076   7815   
Host:example.amazonaws.com
 6077         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 6078   7816   
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
 6079   7817   
new file mode 100644
 6080   7818   
index 0000000..0468d80
 6081         -
-- /dev/null
        7819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 6082   7820   
@@ -0,0 +1,12 @@
        7821  +
{
        7822  +
    "credentials": {
        7823  +
        "access_key_id": "AKIDEXAMPLE",
        7824  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7825  +
    },
        7826  +
    "expiration_in_seconds": 3600,
        7827  +
    "normalize": true,
        7828  +
    "region": "us-east-1",
        7829  +
    "service": "service",
        7830  +
    "sign_body": false,
        7831  +
    "timestamp": "2015-08-30T12:36:00Z"
        7832  +
}
              \
 No newline at end of file
 6083   7833   
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
 6084   7834   
similarity index 99%
 6085   7835   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 6086   7836   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 6087   7837   
index 02af60f..34b8c11 100644
 6088         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
        7838  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 6089   7839   
@@ -1,9 +1,9 @@
 6090   7840   
POST
 6091   7841   
/
 6092   7842   
Param1=value1
 6093   7843   
host:example.amazonaws.com
 6094   7844   
x-amz-date:20150830T123600Z
 6095   7845   
x-amz-region-set:us-east-1
 6096   7846   
 6097   7847   
host;x-amz-date;x-amz-region-set
 6098         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7848  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6099   7849   
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
 6100   7850   
new file mode 100644
 6101   7851   
index 0000000..34f75c8
 6102         -
-- /dev/null
        7852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 6103   7853   
@@ -0,0 +1 @@
        7854  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 6104   7855   
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
 6105   7856   
new file mode 100644
 6106   7857   
index 0000000..c731408
 6107         -
-- /dev/null
        7858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 6108   7859   
@@ -0,0 +1,6 @@
        7860  +
POST /?Param1=value1 HTTP/1.1
        7861  +
Host:example.amazonaws.com
        7862  +
X-Amz-Date:20150830T123600Z
        7863  +
X-Amz-Region-Set:us-east-1
        7864  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        7865  +
 6109   7866   
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
 6110   7867   
similarity index 99%
 6111   7868   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 6112   7869   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 6113   7870   
index 4256b4f..ad88dff 100644
 6114         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
        7871  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 6115   7872   
@@ -1,4 +1,4 @@
 6116   7873   
AWS4-ECDSA-P256-SHA256
 6117   7874   
20150830T123600Z
 6118   7875   
20150830/service/aws4_request
 6119         -
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
        7876  +
502dea2656f02eea10bd05eeec315ea1a6686ed2861176e1670b2d67e17b2f36
              \
 No newline at end of file
 6120   7877   
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
 6121   7878   
new file mode 100644
 6122   7879   
index 0000000..379dcb2
 6123         -
-- /dev/null
        7880  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 6124   7881   
@@ -0,0 +1,4 @@
        7882  +
{
        7883  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7884  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7885  +
}
 6125   7886   
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
 6126   7887   
similarity index 99%
 6127   7888   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 6128   7889   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 6129   7890   
index fa84bbd..76d5ad6 100644
 6130         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
        7891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 6131   7892   
@@ -1,7 +1,7 @@
 6132   7893   
POST
 6133   7894   
/
 6134   7895   
Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=host
 6135   7896   
host:example.amazonaws.com
 6136   7897   
 6137   7898   
host
 6138         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7899  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6139   7900   
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
 6140   7901   
new file mode 100644
 6141   7902   
index 0000000..ae000d6
 6142         -
-- /dev/null
        7903  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 6143   7904   
@@ -0,0 +1 @@
        7905  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 6144   7906   
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
 6145   7907   
new file mode 100644
 6146   7908   
index 0000000..a868f7d
 6147         -
-- /dev/null
        7909  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 6148   7910   
@@ -0,0 +1,3 @@
        7911  +
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
        7912  +
Host:example.amazonaws.com
        7913  +
 6149   7914   
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
 6150   7915   
similarity index 99%
 6151   7916   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 6152   7917   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 6153   7918   
index de270ef..8c9d319 100644
 6154         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
        7919  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 6155   7920   
@@ -1,4 +1,4 @@
 6156   7921   
AWS4-ECDSA-P256-SHA256
 6157   7922   
20150830T123600Z
 6158   7923   
20150830/service/aws4_request
 6159         -
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
        7924  +
b9ec8df7b378fbee58903f5c54bd50e80a4d2d5aa9532583910ce771e42574fe
              \
 No newline at end of file
 6160   7925   
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
 6161   7926   
similarity index 67%
 6162   7927   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 6163   7928   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6164   7929   
index 9157bc7..c9d6e5d 100644
 6165         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        7930  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 6166   7931   
@@ -1,3 +1,2 @@
 6167   7932   
POST /?Param1=value1 HTTP/1.1
 6168   7933   
Host:example.amazonaws.com
 6169         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 6170   7934   
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
 6171   7935   
new file mode 100644
 6172   7936   
index 0000000..0468d80
 6173         -
-- /dev/null
        7937  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 6174   7938   
@@ -0,0 +1,12 @@
        7939  +
{
        7940  +
    "credentials": {
        7941  +
        "access_key_id": "AKIDEXAMPLE",
        7942  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7943  +
    },
        7944  +
    "expiration_in_seconds": 3600,
        7945  +
    "normalize": true,
        7946  +
    "region": "us-east-1",
        7947  +
    "service": "service",
        7948  +
    "sign_body": false,
        7949  +
    "timestamp": "2015-08-30T12:36:00Z"
        7950  +
}
              \
 No newline at end of file
 6175   7951   
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
 6176   7952   
similarity index 99%
 6177   7953   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 6178   7954   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6179   7955   
index a6942c1..e881ac7 100644
 6180         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
        7956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 6181   7957   
@@ -1,9 +1,9 @@
 6182   7958   
POST
 6183   7959   
/
 6184   7960   
 6185   7961   
host:example.amazonaws.com
 6186   7962   
x-amz-date:20150830T123600Z
 6187   7963   
x-amz-region-set:us-east-1
 6188   7964   
 6189   7965   
host;x-amz-date;x-amz-region-set
 6190         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7966  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6191   7967   
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
 6192   7968   
new file mode 100644
 6193   7969   
index 0000000..7c5e47b
 6194         -
-- /dev/null
        7970  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 6195   7971   
@@ -0,0 +1 @@
        7972  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 6196   7973   
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
 6197   7974   
new file mode 100644
 6198   7975   
index 0000000..c0e50a0
 6199         -
-- /dev/null
        7976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 6200   7977   
@@ -0,0 +1,6 @@
        7978  +
POST / HTTP/1.1
        7979  +
Host:example.amazonaws.com
        7980  +
X-Amz-Date:20150830T123600Z
        7981  +
X-Amz-Region-Set:us-east-1
        7982  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        7983  +
 6201   7984   
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
 6202   7985   
similarity index 99%
 6203   7986   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 6204   7987   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6205   7988   
index d5650cb..f8adf13 100644
 6206         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
        7989  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 6207   7990   
@@ -1,4 +1,4 @@
 6208   7991   
AWS4-ECDSA-P256-SHA256
 6209   7992   
20150830T123600Z
 6210   7993   
20150830/service/aws4_request
 6211         -
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
        7994  +
806a9b01b76472cc6b66fff02630726d55f8b4ada6d2fd9b36eb0d710e215861
              \
 No newline at end of file
 6212   7995   
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
 6213   7996   
new file mode 100644
 6214   7997   
index 0000000..379dcb2
 6215         -
-- /dev/null
        7998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 6216   7999   
@@ -0,0 +1,4 @@
        8000  +
{
        8001  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8002  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8003  +
}
 6217   8004   
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
 6218   8005   
similarity index 99%
 6219   8006   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 6220   8007   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6221   8008   
index e48ce07..5ea8e3c 100644
 6222         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
        8009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 6223   8010   
@@ -1,7 +1,7 @@
 6224   8011   
POST
 6225   8012   
/
 6226   8013   
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
 6227   8014   
host:example.amazonaws.com
 6228   8015   
 6229   8016   
host
 6230         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8017  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 6231   8018   
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
 6232   8019   
new file mode 100644
 6233   8020   
index 0000000..ea8e3b4
 6234         -
-- /dev/null
        8021  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 6235   8022   
@@ -0,0 +1 @@
        8023  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 6236   8024   
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
 6237   8025   
new file mode 100644
 6238   8026   
index 0000000..616973f
 6239         -
-- /dev/null
        8027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 6240   8028   
@@ -0,0 +1,3 @@
        8029  +
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
        8030  +
Host:example.amazonaws.com
        8031  +
 6241   8032   
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
 6242   8033   
similarity index 99%
 6243   8034   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 6244   8035   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6245   8036   
index 34e3382..711c162 100644
 6246         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
        8037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 6247   8038   
@@ -1,4 +1,4 @@
 6248   8039   
AWS4-ECDSA-P256-SHA256
 6249   8040   
20150830T123600Z
 6250   8041   
20150830/service/aws4_request
 6251         -
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
        8042  +
192546340393592ef9baaa24656f55ed91288110e7514b50f0a3f79bb761a29c
              \
 No newline at end of file
 6252   8043   
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
 6253   8044   
new file mode 100644
 6254   8045   
index 0000000..3f0a82a
 6255         -
-- /dev/null
        8046  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 6256   8047   
@@ -0,0 +1,2 @@
        8048  +
POST / HTTP/1.1
        8049  +
Host:example.amazonaws.com
 6257   8050   
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
 6258   8051   
new file mode 100644
 6259   8052   
index 0000000..0db1df1
 6260         -
-- /dev/null
        8053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 6261   8054   
@@ -0,0 +1,12 @@
        8055  +
{
        8056  +
    "credentials": {
        8057  +
        "access_key_id": "AKIDEXAMPLE",
        8058  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8059  +
    },
        8060  +
    "expiration_in_seconds": 3600,
        8061  +
    "normalize": true,
        8062  +
    "region": "us-east-1",
        8063  +
    "service": "service",
        8064  +
    "sign_body": true,
        8065  +
    "timestamp": "2015-08-30T12:36:00Z"
        8066  +
}
              \
 No newline at end of file
 6262   8067   
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
 6263   8068   
similarity index 62%
 6264   8069   
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
 6265   8070   
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
 6266   8071   
index 05ab787..62639b2 100644
 6267         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        8072  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 6268   8073   
@@ -1,12 +1,12 @@
 6269   8074   
POST
 6270   8075   
/
 6271   8076   
 6272   8077   
content-length:13
 6273   8078   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6274   8079   
host:example.amazonaws.com
 6275         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8080  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6276   8081   
x-amz-date:20150830T123600Z
 6277   8082   
x-amz-region-set:us-east-1
 6278   8083   
 6279   8084   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6280         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8085  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6281   8086   
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
 6282   8087   
new file mode 100644
 6283   8088   
index 0000000..006ec2e
 6284         -
-- /dev/null
        8089  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 6285   8090   
@@ -0,0 +1 @@
        8091  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 6286   8092   
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
 6287   8093   
new file mode 100644
 6288   8094   
index 0000000..87a11f2
 6289         -
-- /dev/null
        8095  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 6290   8096   
@@ -0,0 +1,10 @@
        8097  +
POST / HTTP/1.1
        8098  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        8099  +
Host:example.amazonaws.com
        8100  +
Content-Length:13
        8101  +
X-Amz-Date:20150830T123600Z
        8102  +
X-Amz-Region-Set:us-east-1
        8103  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8104  +
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
        8105  +
        8106  +
Param1=value1
              \
 No newline at end of file
 6291   8107   
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
 6292   8108   
new file mode 100644
 6293   8109   
index 0000000..c047afb
 6294         -
-- /dev/null
        8110  +
++ 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
 6295   8111   
@@ -0,0 +1,4 @@
        8112  +
AWS4-ECDSA-P256-SHA256
        8113  +
20150830T123600Z
        8114  +
20150830/service/aws4_request
        8115  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 6296   8116   
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
 6297   8117   
new file mode 100644
 6298   8118   
index 0000000..379dcb2
 6299         -
-- /dev/null
        8119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 6300   8120   
@@ -0,0 +1,4 @@
        8121  +
{
        8122  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8123  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8124  +
}
 6301   8125   
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
 6302   8126   
similarity index 85%
 6303   8127   
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
 6304   8128   
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
 6305   8129   
index fcc454f..6933a8c 100644
 6306         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        8130  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 6307   8131   
@@ -1,9 +1,9 @@
 6308   8132   
POST
 6309   8133   
/
 6310   8134   
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
 6311   8135   
content-length:13
 6312   8136   
content-type:application/x-www-form-urlencoded; charset=utf-8
 6313   8137   
host:example.amazonaws.com
 6314   8138   
 6315   8139   
content-length;content-type;host
 6316         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8140  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6317   8141   
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
 6318   8142   
new file mode 100644
 6319   8143   
index 0000000..34a2e12
 6320         -
-- /dev/null
        8144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 6321   8145   
@@ -0,0 +1 @@
        8146  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 6322   8147   
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
 6323   8148   
new file mode 100644
 6324   8149   
index 0000000..197b99e
 6325         -
-- /dev/null
        8150  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 6326   8151   
@@ -0,0 +1,6 @@
        8152  +
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
        8153  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        8154  +
Host:example.amazonaws.com
        8155  +
Content-Length:13
        8156  +
        8157  +
Param1=value1
              \
 No newline at end of file
 6327   8158   
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
 6328   8159   
new file mode 100644
 6329   8160   
index 0000000..9d2bc74
 6330         -
-- /dev/null
        8161  +
++ 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
 6331   8162   
@@ -0,0 +1,4 @@
        8163  +
AWS4-ECDSA-P256-SHA256
        8164  +
20150830T123600Z
        8165  +
20150830/service/aws4_request
        8166  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 6332   8167   
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
 6333   8168   
similarity index 80%
 6334   8169   
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
 6335   8170   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6336   8171   
index 36015f1..8289eaa 100644
 6337         -
-- 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
        8172  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 6338   8173   
@@ -1,6 +1,6 @@
 6339   8174   
POST / HTTP/1.1
 6340   8175   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 6341   8176   
Host:example.amazonaws.com
 6342         -
X-Amz-Date:20150830T123600Z
        8177  +
Content-Length:13
 6343   8178   
 6344   8179   
Param1=value1
              \
 No newline at end of file
 6345   8180   
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
 6346   8181   
new file mode 100644
 6347   8182   
index 0000000..0db1df1
 6348         -
-- /dev/null
        8183  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 6349   8184   
@@ -0,0 +1,12 @@
        8185  +
{
        8186  +
    "credentials": {
        8187  +
        "access_key_id": "AKIDEXAMPLE",
        8188  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        8189  +
    },
        8190  +
    "expiration_in_seconds": 3600,
        8191  +
    "normalize": true,
        8192  +
    "region": "us-east-1",
        8193  +
    "service": "service",
        8194  +
    "sign_body": true,
        8195  +
    "timestamp": "2015-08-30T12:36:00Z"
        8196  +
}
              \
 No newline at end of file
 6350   8197   
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
 6351   8198   
similarity index 61%
 6352   8199   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 6353   8200   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6354   8201   
index 69009dc..797632b 100644
 6355         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        8202  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 6356   8203   
@@ -1,12 +1,12 @@
 6357   8204   
POST
 6358   8205   
/
 6359   8206   
 6360   8207   
content-length:13
 6361   8208   
content-type:application/x-www-form-urlencoded
 6362   8209   
host:example.amazonaws.com
 6363         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8210  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 6364   8211   
x-amz-date:20150830T123600Z
 6365   8212   
x-amz-region-set:us-east-1
 6366   8213   
 6367   8214   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 6368         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        8215  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6369   8216   
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
 6370   8217   
new file mode 100644
 6371   8218   
index 0000000..f5a641c
 6372         -
-- /dev/null
        8219  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 6373   8220   
@@ -0,0 +1 @@
        8221  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 6374   8222   
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
 6375   8223   
new file mode 100644
 6376   8224   
index 0000000..7bd94a7
 6377         -
-- /dev/null
        8225  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 6378   8226   
@@ -0,0 +1,10 @@
        8227  +
POST / HTTP/1.1
        8228  +
Content-Type:application/x-www-form-urlencoded
        8229  +
Host:example.amazonaws.com
        8230  +
Content-Length:13
        8231  +
X-Amz-Date:20150830T123600Z
        8232  +
X-Amz-Region-Set:us-east-1
        8233  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8234  +
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
        8235  +
        8236  +
Param1=value1
              \
 No newline at end of file
 6379   8237   
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
 6380   8238   
new file mode 100644
 6381   8239   
index 0000000..8d25ba9
 6382         -
-- /dev/null
        8240  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 6383   8241   
@@ -0,0 +1,4 @@
        8242  +
AWS4-ECDSA-P256-SHA256
        8243  +
20150830T123600Z
        8244  +
20150830/service/aws4_request
        8245  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 6384   8246   
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
 6385   8247   
new file mode 100644
 6386   8248   
index 0000000..379dcb2
 6387         -
-- /dev/null
        8249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 6388   8250   
@@ -0,0 +1,4 @@
        8251  +
{
        8252  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        8253  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        8254  +
}
 6389   8255   
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
 6390   8256   
similarity index 99%
 6391   8257   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 6392   8258   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6393   8259   
index 9ed065b..563ff58 100644
 6394         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
        8260  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 6395   8261   
@@ -1,9 +1,9 @@
 6396   8262   
POST
 6397   8263   
/
 6398   8264   
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
 6399   8265   
content-length:13
 6400   8266   
content-type:application/x-www-form-urlencoded
 6401   8267   
host:example.amazonaws.com
 6402   8268   
 6403   8269   
content-length;content-type;host
 6404         -
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        8270  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 6405   8271   
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
 6406   8272   
new file mode 100644
 6407   8273   
index 0000000..0c77daf
 6408         -
-- /dev/null
        8274  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 6409   8275   
@@ -0,0 +1 @@
        8276  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 6410   8277   
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
 6411   8278   
new file mode 100644
 6412   8279   
index 0000000..71d6de9
 6413         -
-- /dev/null
        8280  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 6414   8281   
@@ -0,0 +1,6 @@
        8282  +
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
        8283  +
Content-Type:application/x-www-form-urlencoded
        8284  +
Host:example.amazonaws.com
        8285  +
Content-Length:13
        8286  +
        8287  +
Param1=value1
              \
 No newline at end of file
 6415   8288   
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
 6416   8289   
similarity index 99%
 6417   8290   
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
 6418   8291   
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
 6419   8292   
index bef3143..cc7a224 100644
 6420         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt
        8293  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
 6421   8294   
@@ -1,4 +1,4 @@
 6422   8295   
AWS4-ECDSA-P256-SHA256
 6423   8296   
20150830T123600Z
 6424   8297   
20150830/service/aws4_request
 6425         -
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
        8298  +
4e4122984d30d13170a298ece62cc30f8da12578fb3b482616b1f11036b13934
              \
 No newline at end of file
 6426   8299   
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
 6427   8300   
new file mode 100644
 6428   8301   
index 0000000..760b2d3
 6429         -
-- /dev/null
        8302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 6430   8303   
@@ -0,0 +1,6 @@
        8304  +
POST / HTTP/1.1
        8305  +
Content-Type:application/x-www-form-urlencoded
        8306  +
Host:example.amazonaws.com
        8307  +
Content-Length:13
        8308  +
        8309  +
Param1=value1
              \
 No newline at end of file
 6431   8310   
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
 6432   8311   
index 9bd636f..b53f33f 100644
 6433         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        8312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 6434   8313   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 6435   8314   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 6436   8315   
        }
 6437   8316   
 6438   8317   
        if let SignatureValues::QueryParams(values) = values {
 6439   8318   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 6440   8319   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 6441   8320   
 6442   8321   
            #[cfg(feature = "sigv4a")]
 6443   8322   
            if let Some(regions) = values.region_set {
 6444   8323   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 6445   8324   
            }
 6446   8325   
 6447   8326   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 6448   8327   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 6449   8328   
            add_param(
 6450   8329   
                &mut params,
 6451   8330   
                param::X_AMZ_SIGNED_HEADERS,
 6452   8331   
                values.signed_headers.as_str(),
 6453   8332   
            );
 6454   8333   
 6455   8334   
            if let Some(security_token) = values.security_token {
 6456   8335   
                add_param(
 6457   8336   
                    &mut params,
 6458   8337   
                    settings
 6459   8338   
                        .session_token_name_override
 6460   8339   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 6461   8340   
                    security_token,
 6462   8341   
                );
 6463   8342   
            }
 6464   8343   
        }
 6465         -
        // Sort by param name, and then by param value
        8344  +
        8345  +
        // Sort on the _encoded_ key/value pairs
        8346  +
        let mut params: Vec<(String, String)> = params
        8347  +
            .into_iter()
        8348  +
            .map(|x| {
        8349  +
                use aws_smithy_http::query::fmt_string;
        8350  +
                let enc_k = fmt_string(&x.0);
        8351  +
                let enc_v = fmt_string(&x.1);
        8352  +
                (enc_k, enc_v)
        8353  +
            })
        8354  +
            .collect();
        8355  +
 6466   8356   
        params.sort();
 6467   8357   
 6468   8358   
        let mut query = QueryWriter::new(uri);
 6469   8359   
        query.clear_params();
 6470   8360   
        for (key, value) in params {
 6471         -
            query.insert(&key, &value);
        8361  +
            query.insert_encoded(&key, &value);
 6472   8362   
        }
 6473   8363   
 6474   8364   
        let query = query.build_query();
 6475   8365   
        if query.is_empty() {
 6476   8366   
            None
 6477   8367   
        } else {
 6478   8368   
            Some(query)
 6479   8369   
        }
 6480   8370   
    }
 6481   8371   
 6482   8372   
    fn insert_host_header(
 6483   8373   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 6484   8374   
        uri: &Uri,
 6485   8375   
    ) -> HeaderValue {
 6486   8376   
        match canonical_headers.get(&HOST) {
 6487   8377   
            Some(header) => header.clone(),
 6488   8378   
            None => {
 6489   8379   
                let port = uri.port();
 6490   8380   
                let scheme = uri.scheme();
 6491   8381   
                let authority = uri
 6492   8382   
                    .authority()
 6493   8383   
                    .expect("request uri authority must be set for signing")
 6494   8384   
                    .as_str();
 6495   8385   
                let host = uri
 6496   8386   
                    .host()
 6497   8387   
                    .expect("request uri host must be set for signing");
 6498   8388   
 6499   8389   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 6500   8390   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 6501   8391   
                // sent in the Host header (and Hyper strips default ports if they are present)
 6502   8392   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 6503   8393   
            service,
 6504   8394   
            hashed_creq,
 6505   8395   
            signature_version: SignatureVersion::V4a,
 6506   8396   
        }
 6507   8397   
    }
 6508   8398   
}
 6509   8399   
 6510   8400   
impl fmt::Display for StringToSign<'_> {
 6511   8401   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 6512   8402   
        write!(
 6513   8403   
            f,
 6514   8404   
            "{}\n{}\n{}\n{}",
 6515   8405   
            self.algorithm,
 6516   8406   
            format_date_time(self.time),
 6517   8407   
            match self.signature_version {
 6518   8408   
                SignatureVersion::V4 => self.scope.to_string(),
 6519   8409   
                SignatureVersion::V4a => self.scope.v4a_display(),
 6520   8410   
            },
 6521   8411   
            self.hashed_creq
 6522   8412   
        )
 6523   8413   
    }
 6524   8414   
}
 6525   8415   
 6526   8416   
#[cfg(test)]
 6527   8417   
mod tests {
 6528   8418   
    use crate::date_time::test_parsers::parse_date_time;
 6529   8419   
    use crate::http_request::canonical_request::{
 6530   8420   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 6531   8421   
    };
 6532   8422   
    use crate::http_request::test;
        8423  +
    use crate::http_request::test::SigningSuiteTest;
 6533   8424   
    use crate::http_request::{
 6534   8425   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 6535   8426   
        SigningParams, SigningSettings,
 6536   8427   
    };
 6537   8428   
    use crate::sign::v4;
 6538   8429   
    use crate::sign::v4::sha256_hex_string;
 6539   8430   
    use aws_credential_types::Credentials;
 6540   8431   
    use aws_smithy_http::query_writer::QueryWriter;
 6541   8432   
    use aws_smithy_runtime_api::client::identity::Identity;
 6542   8433   
    use http0::{HeaderValue, Uri};
 6543   8434   
    use pretty_assertions::assert_eq;
 6544   8435   
    use proptest::{prelude::*, proptest};
 6545   8436   
    use std::borrow::Cow;
 6546   8437   
    use std::time::Duration;
 6547   8438   
 6548   8439   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 6549   8440   
        v4::signing_params::Builder::default()
 6550   8441   
            .identity(identity)
 6551   8442   
            .region("test-region")
 6552   8443   
            .name("testservicename")
 6553   8444   
            .time(parse_date_time("20210511T154045Z").unwrap())
 6554   8445   
            .settings(settings)
 6555   8446   
            .build()
 6556   8447   
            .unwrap()
 6557   8448   
            .into()
 6558   8449   
    }
 6559   8450   
 6560   8451   
    #[test]
 6561   8452   
    fn test_repeated_header() {
 6562         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8453  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8454  +
        let mut req = test.request();
 6563   8455   
        req.headers.push((
 6564   8456   
            "x-amz-object-attributes".to_string(),
 6565   8457   
            "Checksum".to_string(),
 6566   8458   
        ));
 6567   8459   
        req.headers.push((
 6568   8460   
            "x-amz-object-attributes".to_string(),
 6569   8461   
            "ObjectSize".to_string(),
 6570   8462   
        ));
 6571   8463   
        let req = SignableRequest::from(&req);
 6572   8464   
        let settings = SigningSettings {
 6573   8465   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6574   8466   
            session_token_mode: SessionTokenMode::Exclude,
 6575   8467   
            ..Default::default()
 6576   8468   
        };
 6577   8469   
        let identity = Credentials::for_tests().into();
 6578   8470   
        let signing_params = signing_params(&identity, settings);
 6579   8471   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6580   8472   
 6581   8473   
        assert_eq!(
 6582   8474   
            creq.values.signed_headers().to_string(),
 6583   8475   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 6584   8476   
        );
 6585   8477   
        assert_eq!(
 6586   8478   
            creq.header_values_for("x-amz-object-attributes"),
 6587   8479   
            "Checksum,ObjectSize",
 6588   8480   
        );
 6589   8481   
    }
 6590   8482   
 6591   8483   
    #[test]
 6592   8484   
    fn test_host_header_properly_handles_ports() {
 6593   8485   
        fn host_header_test_setup(endpoint: String) -> String {
 6594         -
            let mut req = test::v4::test_request("get-vanilla");
        8486  +
            let test = SigningSuiteTest::v4("get-vanilla");
        8487  +
            let mut req = test.request();
 6595   8488   
            req.uri = endpoint;
 6596   8489   
            let req = SignableRequest::from(&req);
 6597   8490   
            let settings = SigningSettings {
 6598   8491   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6599   8492   
                session_token_mode: SessionTokenMode::Exclude,
 6600   8493   
                ..Default::default()
 6601   8494   
            };
 6602   8495   
            let identity = Credentials::for_tests().into();
 6603   8496   
            let signing_params = signing_params(&identity, settings);
 6604   8497   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6605   8498   
            creq.header_values_for("host")
 6606   8499   
        }
 6607   8500   
 6608   8501   
        // HTTP request with 80 port should not be signed with that port
 6609   8502   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 6610   8503   
        assert_eq!(http_80_host_header, "localhost",);
 6611   8504   
 6612   8505   
        // HTTP request with non-80 port should be signed with that port
 6613   8506   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 6614   8507   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 6615   8508   
 6616   8509   
        // HTTPS request with 443 port should not be signed with that port
 6617   8510   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 6618   8511   
        assert_eq!(https_443_host_header, "localhost",);
 6619   8512   
 6620   8513   
        // HTTPS request with non-443 port should be signed with that port
 6621   8514   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 6622   8515   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 6623   8516   
    }
 6624   8517   
 6625   8518   
    #[test]
 6626   8519   
    fn test_set_xamz_sha_256() {
 6627         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8520  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8521  +
        let req = test.request();
 6628   8522   
        let req = SignableRequest::from(&req);
 6629   8523   
        let settings = SigningSettings {
 6630   8524   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6631   8525   
            session_token_mode: SessionTokenMode::Exclude,
 6632   8526   
            ..Default::default()
 6633   8527   
        };
 6634   8528   
        let identity = Credentials::for_tests().into();
 6635   8529   
        let mut signing_params = signing_params(&identity, settings);
 6636   8530   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6637   8531   
        assert_eq!(
 6638   8532   
            creq.values.content_sha256(),
 6639   8533   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 6640   8534   
        );
 6641   8535   
        // assert that the sha256 header was added
 6642   8536   
        assert_eq!(
 6643   8537   
            creq.values.signed_headers().as_str(),
 6644   8538   
            "host;x-amz-content-sha256;x-amz-date"
 6645   8539   
        );
 6646   8540   
 6647   8541   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 6648   8542   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6649   8543   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6650   8544   
    }
 6651   8545   
 6652   8546   
    #[test]
 6653   8547   
    fn test_unsigned_payload() {
 6654         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8548  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8549  +
        let mut req = test.request();
 6655   8550   
        req.set_body(SignableBody::UnsignedPayload);
 6656   8551   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 6657   8552   
 6658   8553   
        let settings = SigningSettings {
 6659   8554   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6660   8555   
            ..Default::default()
 6661   8556   
        };
 6662   8557   
        let identity = Credentials::for_tests().into();
 6663   8558   
        let signing_params = signing_params(&identity, settings);
 6664   8559   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6665   8560   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 6666   8561   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 6667   8562   
    }
 6668   8563   
 6669   8564   
    #[test]
 6670   8565   
    fn test_precomputed_payload() {
 6671   8566   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 6672         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        8567  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8568  +
        let mut req = test.request();
 6673   8569   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 6674   8570   
        let req = SignableRequest::from(&req);
 6675   8571   
        let settings = SigningSettings {
 6676   8572   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6677   8573   
            ..Default::default()
 6678   8574   
        };
 6679   8575   
        let identity = Credentials::for_tests().into();
 6680   8576   
        let signing_params = signing_params(&identity, settings);
 6681   8577   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6682   8578   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 6683   8579   
        assert!(creq.to_string().ends_with(payload_hash));
 6684   8580   
    }
 6685   8581   
 6686   8582   
    #[test]
 6687   8583   
    fn test_generate_scope() {
 6688   8584   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 6689   8585   
        let scope = SigningScope {
 6690   8586   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6691   8587   
            region: "us-east-1",
 6692   8588   
            service: "iam",
 6693   8589   
        };
 6694   8590   
        assert_eq!(format!("{}\n", scope), expected);
 6695   8591   
    }
 6696   8592   
 6697   8593   
    #[test]
 6698   8594   
    fn test_string_to_sign() {
 6699   8595   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6700         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 6701         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        8596  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8597  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        8598  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 6702   8599   
        let encoded = sha256_hex_string(creq.as_bytes());
 6703   8600   
 6704   8601   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 6705   8602   
        assert_eq!(expected_sts, actual.to_string());
 6706   8603   
    }
 6707   8604   
 6708   8605   
    #[test]
 6709   8606   
    fn test_digest_of_canonical_request() {
 6710         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        8607  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8608  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 6711   8609   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 6712   8610   
        let actual = sha256_hex_string(creq.as_bytes());
 6713   8611   
        assert_eq!(expected, actual);
 6714   8612   
    }
 6715   8613   
 6716   8614   
    #[test]
 6717   8615   
    fn test_double_url_encode_path() {
 6718         -
        let req = test::v4::test_request("double-encode-path");
        8616  +
        let test = SigningSuiteTest::v4("double-encode-path");
        8617  +
        let req = test.request();
 6719   8618   
        let req = SignableRequest::from(&req);
 6720   8619   
        let identity = Credentials::for_tests().into();
 6721   8620   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6722   8621   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6723   8622   
 6724         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        8623  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6725   8624   
        let actual = format!("{}", creq);
 6726   8625   
        assert_eq!(actual, expected);
 6727   8626   
    }
 6728   8627   
 6729   8628   
    #[test]
 6730   8629   
    fn test_double_url_encode() {
 6731         -
        let req = test::v4::test_request("double-url-encode");
        8630  +
        let test = SigningSuiteTest::v4("double-url-encode");
        8631  +
        let req = test.request();
 6732   8632   
        let req = SignableRequest::from(&req);
 6733   8633   
        let identity = Credentials::for_tests().into();
 6734   8634   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6735   8635   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6736         -
 6737         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        8636  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 6738   8637   
        let actual = format!("{}", creq);
 6739   8638   
        assert_eq!(actual, expected);
 6740   8639   
    }
 6741   8640   
 6742   8641   
    #[test]
 6743   8642   
    fn test_tilde_in_uri() {
 6744   8643   
        let req = http0::Request::builder()
 6745   8644   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 6746   8645   
        let req = SignableRequest::from(&req);
 6747   8646   
        let identity = Credentials::for_tests().into();
 6748   8647   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6749   8648   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6750   8649   
        assert_eq!(
 6751   8650   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 6752   8651   
            creq.params.as_deref(),
 6753   8652   
        );
 6754   8653   
    }
 6755   8654   
 6756   8655   
    #[test]
 6757   8656   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 6758   8657   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 6759   8658   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 6760   8659   
 6761   8660   
        let mut query_writer = QueryWriter::new(&uri);
 6762   8661   
        query_writer.insert("list-type", "2");
 6763   8662   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 6764   8663   
 6765   8664   
        let req = http0::Request::builder()
 6766   8665   
            .uri(query_writer.build_uri())
 6767   8666   
            .body("")
 6768   8667   
            .unwrap()
 6769   8668   
            .into();
 6770   8669   
        let req = SignableRequest::from(&req);
 6771   8670   
        let identity = Credentials::for_tests().into();
 6772   8671   
        let signing_params = signing_params(&identity, SigningSettings::default());
 6773   8672   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6774   8673   
 6775   8674   
        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~";
 6776   8675   
        let actual = creq.params.unwrap();
 6777   8676   
        assert_eq!(expected, actual);
 6778   8677   
    }
 6779   8678   
 6780   8679   
    #[test]
 6781   8680   
    fn test_omit_session_token() {
 6782         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        8681  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        8682  +
        let req = test.request();
 6783   8683   
        let req = SignableRequest::from(&req);
 6784   8684   
        let settings = SigningSettings {
 6785   8685   
            session_token_mode: SessionTokenMode::Include,
 6786   8686   
            ..Default::default()
 6787   8687   
        };
 6788   8688   
        let identity = Credentials::for_tests_with_session_token().into();
 6789   8689   
        let mut signing_params = signing_params(&identity, settings);
 6790   8690   
 6791   8691   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6792   8692   
        assert_eq!(
 6793   8693   
            creq.values.signed_headers().as_str(),
 6794   8694   
            "host;x-amz-date;x-amz-security-token"
 6795   8695   
        );
 6796   8696   
        assert_eq!(
 6797   8697   
            creq.headers.get("x-amz-security-token").unwrap(),
 6798   8698   
            "notarealsessiontoken"
 6799   8699   
        );
 6800   8700   
 6801   8701   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 6802   8702   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 6803   8703   
        assert_eq!(
 6804   8704   
            creq.headers.get("x-amz-security-token").unwrap(),
 6805   8705   
            "notarealsessiontoken"
 6806   8706   
        );
 6807   8707   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 6808   8708   
    }
 6809   8709   
 6810   8710   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 6811   8711   
    #[test]
 6812   8712   
    fn non_presigning_header_exclusion() {
 6813   8713   
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
 6814   8714   
index c4bbbee..363fc2c 100644
 6815         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        8715  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 6816   8716   
@@ -6,60 +6,62 @@
 6817   8717   
use super::error::SigningError;
 6818   8718   
use super::{PayloadChecksumKind, SignatureLocation};
 6819   8719   
use crate::http_request::canonical_request::header;
 6820   8720   
use crate::http_request::canonical_request::param;
 6821   8721   
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 6822   8722   
use crate::http_request::error::CanonicalRequestError;
 6823   8723   
use crate::http_request::SigningParams;
 6824   8724   
use crate::sign::v4;
 6825   8725   
#[cfg(feature = "sigv4a")]
 6826   8726   
use crate::sign::v4a;
 6827   8727   
use crate::{SignatureVersion, SigningOutput};
 6828   8728   
use http0::Uri;
 6829   8729   
use std::borrow::Cow;
 6830   8730   
use std::fmt::{Debug, Formatter};
 6831   8731   
use std::str;
 6832   8732   
 6833   8733   
const LOG_SIGNABLE_BODY: &str = "LOG_SIGNABLE_BODY";
 6834   8734   
 6835   8735   
/// Represents all of the information necessary to sign an HTTP request.
 6836   8736   
#[derive(Debug)]
 6837   8737   
#[non_exhaustive]
 6838   8738   
pub struct SignableRequest<'a> {
 6839   8739   
    method: &'a str,
 6840   8740   
    uri: Uri,
 6841   8741   
    headers: Vec<(&'a str, &'a str)>,
 6842   8742   
    body: SignableBody<'a>,
 6843   8743   
}
 6844   8744   
 6845   8745   
impl<'a> SignableRequest<'a> {
 6846   8746   
    /// Creates a new `SignableRequest`.
        8747  +
    ///
        8748  +
    /// NOTE: The `uri` is expected to already in encoded form.
 6847   8749   
    pub fn new(
 6848   8750   
        method: &'a str,
 6849   8751   
        uri: impl Into<Cow<'a, str>>,
 6850   8752   
        headers: impl Iterator<Item = (&'a str, &'a str)>,
 6851   8753   
        body: SignableBody<'a>,
 6852   8754   
    ) -> Result<Self, SigningError> {
 6853   8755   
        let uri = uri
 6854   8756   
            .into()
 6855   8757   
            .parse()
 6856   8758   
            .map_err(|e| SigningError::from(CanonicalRequestError::from(e)))?;
 6857   8759   
        let headers = headers.collect();
 6858   8760   
        Ok(Self {
 6859   8761   
            method,
 6860   8762   
            uri,
 6861   8763   
            headers,
 6862   8764   
            body,
 6863   8765   
        })
 6864   8766   
    }
 6865   8767   
 6866   8768   
    /// Returns the signable URI
 6867   8769   
    pub(crate) fn uri(&self) -> &Uri {
 6868   8770   
        &self.uri
 6869   8771   
    }
 6870   8772   
 6871   8773   
    /// Returns the signable HTTP method
 6872   8774   
    pub(crate) fn method(&self) -> &str {
 6873   8775   
        self.method
 6874   8776   
    }
 6875   8777   
 6876   8778   
    /// Returns the request headers
 6877   8779   
@@ -478,436 +480,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 6878   8780   
        sensitive,
 6879   8781   
    });
 6880   8782   
}
 6881   8783   
 6882   8784   
// add signature to authorization header
 6883   8785   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 6884   8786   
fn build_authorization_header(
 6885   8787   
    access_key: &str,
 6886   8788   
    creq: &CanonicalRequest<'_>,
 6887   8789   
    sts: StringToSign<'_>,
 6888   8790   
    signature: &str,
 6889   8791   
    signature_version: SignatureVersion,
 6890   8792   
) -> String {
 6891   8793   
    let scope = match signature_version {
 6892   8794   
        SignatureVersion::V4 => sts.scope.to_string(),
 6893   8795   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 6894   8796   
    };
 6895   8797   
    format!(
 6896   8798   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 6897   8799   
        sts.algorithm,
 6898   8800   
        access_key,
 6899   8801   
        scope,
 6900   8802   
        creq.values.signed_headers().as_str(),
 6901   8803   
        signature
 6902   8804   
    )
 6903   8805   
}
 6904   8806   
#[cfg(test)]
 6905   8807   
mod tests {
 6906   8808   
    use crate::date_time::test_parsers::parse_date_time;
 6907   8809   
    use crate::http_request::sign::{add_header, SignableRequest};
        8810  +
    use crate::http_request::test::SigningSuiteTest;
 6908   8811   
    use crate::http_request::{
 6909         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        8812  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 6910   8813   
        SigningSettings,
 6911   8814   
    };
 6912   8815   
    use crate::sign::v4;
 6913   8816   
    use aws_credential_types::Credentials;
 6914   8817   
    use http0::{HeaderValue, Request};
 6915   8818   
    use pretty_assertions::assert_eq;
 6916   8819   
    use proptest::proptest;
 6917   8820   
    use std::borrow::Cow;
 6918   8821   
    use std::iter;
 6919         -
    use std::time::Duration;
 6920   8822   
 6921   8823   
    macro_rules! assert_req_eq {
 6922   8824   
        (http: $expected:expr, $actual:expr) => {
 6923   8825   
            let mut expected = ($expected).map(|_b|"body");
 6924   8826   
            let mut actual = ($actual).map(|_b|"body");
 6925   8827   
            make_headers_comparable(&mut expected);
 6926   8828   
            make_headers_comparable(&mut actual);
 6927   8829   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 6928   8830   
        };
 6929   8831   
        ($expected:tt, $actual:tt) => {
 6930   8832   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 6931   8833   
        };
 6932   8834   
    }
 6933   8835   
 6934   8836   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 6935   8837   
        for (_name, value) in request.headers_mut() {
 6936   8838   
            value.set_sensitive(false);
 6937   8839   
        }
 6938   8840   
    }
 6939   8841   
 6940         -
    #[test]
 6941         -
    fn test_sign_vanilla_with_headers() {
 6942         -
        let settings = SigningSettings::default();
 6943         -
        let identity = &Credentials::for_tests().into();
 6944         -
        let params = v4::SigningParams {
 6945         -
            identity,
 6946         -
            region: "us-east-1",
 6947         -
            name: "service",
 6948         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6949         -
            settings,
 6950         -
        }
 6951         -
        .into();
 6952         -
 6953         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6954         -
        let signable = SignableRequest::from(&original);
 6955         -
        let out = sign(signable, &params).unwrap();
 6956         -
        assert_eq!(
 6957         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 6958         -
            out.signature
 6959         -
        );
 6960         -
 6961         -
        let mut signed = original.as_http_request();
 6962         -
        out.output.apply_to_request_http0x(&mut signed);
 6963         -
 6964         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 6965         -
        assert_req_eq!(expected, signed);
 6966         -
    }
 6967         -
        8842  +
    // Sigv4A suite tests
 6968   8843   
    #[cfg(feature = "sigv4a")]
 6969         -
    mod sigv4a_tests {
 6970         -
        use super::*;
 6971         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 6972         -
        use crate::http_request::{sign, test, SigningParams};
 6973         -
        use crate::sign::v4a;
 6974         -
        use p256::ecdsa::signature::{Signature, Verifier};
 6975         -
        use p256::ecdsa::{DerSignature, SigningKey};
 6976         -
        use pretty_assertions::assert_eq;
 6977         -
 6978         -
        fn new_v4a_signing_params_from_context(
 6979         -
            test_context: &'_ test::v4a::TestContext,
 6980         -
            signature_location: SignatureLocation,
 6981         -
        ) -> SigningParams<'_> {
 6982         -
            let mut params = v4a::SigningParams::from(test_context);
 6983         -
            params.settings.signature_location = signature_location;
 6984         -
 6985         -
            params.into()
 6986         -
        }
 6987         -
 6988         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 6989         -
            let tc = test::v4a::test_context(test_name);
 6990         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 6991         -
 6992         -
            let req = test::v4a::test_request(test_name);
 6993         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 6994         -
            let signable_req = SignableRequest::from(&req);
 6995         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 6996         -
 6997         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 6998         -
 6999         -
            let expected_string_to_sign =
 7000         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 7001         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 7002         -
            let actual_string_to_sign = StringToSign::new_v4a(
 7003         -
                *params.time(),
 7004         -
                params.region_set().unwrap(),
 7005         -
                params.name(),
 7006         -
                hashed_creq,
 7007         -
            )
 7008         -
            .to_string();
        8844  +
    mod v4a_suite {
        8845  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 7009   8846   
 7010         -
            assert_eq!(
 7011         -
                expected_string_to_sign, actual_string_to_sign,
 7012         -
                "'string to sign' didn't match"
 7013         -
            );
 7014         -
 7015         -
            let out = sign(signable_req, &params).unwrap();
 7016         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 7017         -
            out.output
 7018         -
                .apply_to_request_http0x(&mut req.as_http_request());
 7019         -
 7020         -
            let creds = params.credentials().unwrap();
 7021         -
            let signing_key =
 7022         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 7023         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 7024         -
            let sig = sig
 7025         -
                .try_into()
 7026         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 7027         -
 7028         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 7029         -
            let peer_public_key = signing_key.verifying_key();
 7030         -
            let sts = actual_string_to_sign.as_bytes();
 7031         -
            peer_public_key.verify(sts, &sig).unwrap();
        8847  +
        #[test]
        8848  +
        fn test_get_header_key_duplicate() {
        8849  +
            run_test_suite_v4a("get-header-key-duplicate")
 7032   8850   
        }
 7033   8851   
 7034   8852   
        #[test]
 7035         -
        fn test_get_header_key_duplicate() {
 7036         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        8853  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8854  +
        fn test_get_header_value_multiline() {
        8855  +
            run_test_suite_v4a("get-header-value-multiline")
 7037   8856   
        }
 7038   8857   
 7039   8858   
        #[test]
 7040   8859   
        fn test_get_header_value_order() {
 7041         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        8860  +
            run_test_suite_v4a("get-header-value-order")
 7042   8861   
        }
 7043   8862   
 7044   8863   
        #[test]
 7045   8864   
        fn test_get_header_value_trim() {
 7046         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        8865  +
            run_test_suite_v4a("get-header-value-trim");
 7047   8866   
        }
 7048   8867   
 7049   8868   
        #[test]
 7050   8869   
        fn test_get_relative_normalized() {
 7051         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        8870  +
            run_test_suite_v4a("get-relative-normalized");
 7052   8871   
        }
 7053   8872   
 7054   8873   
        #[test]
 7055   8874   
        fn test_get_relative_relative_normalized() {
 7056         -
            run_v4a_test_suite(
 7057         -
                "get-relative-relative-normalized",
 7058         -
                SignatureLocation::Headers,
 7059         -
            );
        8875  +
            run_test_suite_v4a("get-relative-relative-normalized");
 7060   8876   
        }
 7061   8877   
 7062   8878   
        #[test]
 7063   8879   
        fn test_get_relative_relative_unnormalized() {
 7064         -
            run_v4a_test_suite(
 7065         -
                "get-relative-relative-unnormalized",
 7066         -
                SignatureLocation::Headers,
 7067         -
            );
        8880  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 7068   8881   
        }
 7069   8882   
 7070   8883   
        #[test]
 7071   8884   
        fn test_get_relative_unnormalized() {
 7072         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        8885  +
            run_test_suite_v4a("get-relative-unnormalized");
 7073   8886   
        }
 7074   8887   
 7075   8888   
        #[test]
 7076   8889   
        fn test_get_slash_dot_slash_normalized() {
 7077         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        8890  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 7078   8891   
        }
 7079   8892   
 7080   8893   
        #[test]
 7081   8894   
        fn test_get_slash_dot_slash_unnormalized() {
 7082         -
            run_v4a_test_suite(
 7083         -
                "get-slash-dot-slash-unnormalized",
 7084         -
                SignatureLocation::Headers,
 7085         -
            );
        8895  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 7086   8896   
        }
 7087   8897   
 7088   8898   
        #[test]
 7089   8899   
        fn test_get_slash_normalized() {
 7090         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        8900  +
            run_test_suite_v4a("get-slash-normalized");
 7091   8901   
        }
 7092   8902   
 7093   8903   
        #[test]
 7094   8904   
        fn test_get_slash_pointless_dot_normalized() {
 7095         -
            run_v4a_test_suite(
 7096         -
                "get-slash-pointless-dot-normalized",
 7097         -
                SignatureLocation::Headers,
 7098         -
            );
        8905  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 7099   8906   
        }
 7100   8907   
 7101   8908   
        #[test]
 7102   8909   
        fn test_get_slash_pointless_dot_unnormalized() {
 7103         -
            run_v4a_test_suite(
 7104         -
                "get-slash-pointless-dot-unnormalized",
 7105         -
                SignatureLocation::Headers,
 7106         -
            );
        8910  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 7107   8911   
        }
 7108   8912   
 7109   8913   
        #[test]
 7110   8914   
        fn test_get_slash_unnormalized() {
 7111         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        8915  +
            run_test_suite_v4a("get-slash-unnormalized");
 7112   8916   
        }
 7113   8917   
 7114   8918   
        #[test]
 7115   8919   
        fn test_get_slashes_normalized() {
 7116         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        8920  +
            run_test_suite_v4a("get-slashes-normalized");
 7117   8921   
        }
 7118   8922   
 7119   8923   
        #[test]
 7120   8924   
        fn test_get_slashes_unnormalized() {
 7121         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        8925  +
            run_test_suite_v4a("get-slashes-unnormalized");
        8926  +
        }
        8927  +
        8928  +
        #[test]
        8929  +
        #[ignore = "relies on single encode of path segments"]
        8930  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8931  +
        // skipped until we add control over double_uri_encode in context.json
        8932  +
        fn test_get_space_normalized() {
        8933  +
            run_test_suite_v4a("get-space-normalized");
        8934  +
        }
        8935  +
        8936  +
        #[test]
        8937  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8938  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8939  +
        fn test_get_space_unnormalized() {
        8940  +
            run_test_suite_v4a("get-space-unnormalized");
 7122   8941   
        }
 7123   8942   
 7124   8943   
        #[test]
 7125   8944   
        fn test_get_unreserved() {
 7126         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        8945  +
            run_test_suite_v4a("get-unreserved");
        8946  +
        }
        8947  +
        8948  +
        #[test]
        8949  +
        #[ignore = "httparse fails on invalid uri character"]
        8950  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8951  +
        fn test_get_utf8() {
        8952  +
            run_test_suite_v4a("get-utf8");
 7127   8953   
        }
 7128   8954   
 7129   8955   
        #[test]
 7130   8956   
        fn test_get_vanilla() {
 7131         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        8957  +
            run_test_suite_v4a("get-vanilla");
 7132   8958   
        }
 7133   8959   
 7134   8960   
        #[test]
 7135   8961   
        fn test_get_vanilla_empty_query_key() {
 7136         -
            run_v4a_test_suite(
 7137         -
                "get-vanilla-empty-query-key",
 7138         -
                SignatureLocation::QueryParams,
 7139         -
            );
        8962  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 7140   8963   
        }
 7141   8964   
 7142   8965   
        #[test]
 7143   8966   
        fn test_get_vanilla_query() {
 7144         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        8967  +
            run_test_suite_v4a("get-vanilla-query");
        8968  +
        }
        8969  +
        8970  +
        #[test]
        8971  +
        fn test_get_vanilla_query_order_encoded() {
        8972  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 7145   8973   
        }
 7146   8974   
 7147   8975   
        #[test]
 7148   8976   
        fn test_get_vanilla_query_order_key_case() {
 7149         -
            run_v4a_test_suite(
 7150         -
                "get-vanilla-query-order-key-case",
 7151         -
                SignatureLocation::QueryParams,
 7152         -
            );
        8977  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 7153   8978   
        }
 7154   8979   
 7155   8980   
        #[test]
 7156   8981   
        fn test_get_vanilla_query_unreserved() {
 7157         -
            run_v4a_test_suite(
 7158         -
                "get-vanilla-query-unreserved",
 7159         -
                SignatureLocation::QueryParams,
 7160         -
            );
        8982  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        8983  +
        }
        8984  +
        8985  +
        #[test]
        8986  +
        #[ignore = "httparse fails on invalid uri character"]
        8987  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8988  +
        fn test_get_vanilla_utf8_query() {
        8989  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 7161   8990   
        }
 7162   8991   
 7163   8992   
        #[test]
 7164   8993   
        fn test_get_vanilla_with_session_token() {
 7165         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        8994  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 7166   8995   
        }
 7167   8996   
 7168   8997   
        #[test]
 7169   8998   
        fn test_post_header_key_case() {
 7170         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        8999  +
            run_test_suite_v4a("post-header-key-case");
 7171   9000   
        }
 7172   9001   
 7173   9002   
        #[test]
 7174   9003   
        fn test_post_header_key_sort() {
 7175         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        9004  +
            run_test_suite_v4a("post-header-key-sort");
 7176   9005   
        }
 7177   9006   
 7178   9007   
        #[test]
 7179   9008   
        fn test_post_header_value_case() {
 7180         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        9009  +
            run_test_suite_v4a("post-header-value-case");
 7181   9010   
        }
 7182   9011   
 7183   9012   
        #[test]
 7184   9013   
        fn test_post_sts_header_after() {
 7185         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        9014  +
            run_test_suite_v4a("post-sts-header-after");
 7186   9015   
        }
 7187   9016   
 7188   9017   
        #[test]
 7189   9018   
        fn test_post_sts_header_before() {
 7190         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        9019  +
            run_test_suite_v4a("post-sts-header-before");
 7191   9020   
        }
 7192   9021   
 7193   9022   
        #[test]
 7194   9023   
        fn test_post_vanilla() {
 7195         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        9024  +
            run_test_suite_v4a("post-vanilla");
 7196   9025   
        }
 7197   9026   
 7198   9027   
        #[test]
 7199   9028   
        fn test_post_vanilla_empty_query_value() {
 7200         -
            run_v4a_test_suite(
 7201         -
                "post-vanilla-empty-query-value",
 7202         -
                SignatureLocation::QueryParams,
 7203         -
            );
        9029  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 7204   9030   
        }
 7205   9031   
 7206   9032   
        #[test]
 7207   9033   
        fn test_post_vanilla_query() {
 7208         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        9034  +
            run_test_suite_v4a("post-vanilla-query");
 7209   9035   
        }
 7210   9036   
 7211   9037   
        #[test]
 7212   9038   
        fn test_post_x_www_form_urlencoded() {
 7213         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        9039  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 7214   9040   
        }
 7215   9041   
 7216   9042   
        #[test]
 7217   9043   
        fn test_post_x_www_form_urlencoded_parameters() {
 7218         -
            run_v4a_test_suite(
 7219         -
                "post-x-www-form-urlencoded-parameters",
 7220         -
                SignatureLocation::QueryParams,
 7221         -
            );
        9044  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 7222   9045   
        }
 7223   9046   
    }
 7224   9047   
 7225   9048   
    #[test]
 7226   9049   
    fn test_sign_url_escape() {
 7227         -
        let test = "double-encode-path";
        9050  +
        let test = SigningSuiteTest::v4("double-encode-path");
 7228   9051   
        let settings = SigningSettings::default();
 7229   9052   
        let identity = &Credentials::for_tests().into();
 7230   9053   
        let params = v4::SigningParams {
 7231   9054   
            identity,
 7232   9055   
            region: "us-east-1",
 7233   9056   
            name: "service",
 7234   9057   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7235   9058   
            settings,
 7236   9059   
        }
 7237   9060   
        .into();
 7238   9061   
 7239         -
        let original = test::v4::test_request(test);
        9062  +
        let original = test.request();
 7240   9063   
        let signable = SignableRequest::from(&original);
 7241   9064   
        let out = sign(signable, &params).unwrap();
 7242   9065   
        assert_eq!(
 7243   9066   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 7244   9067   
            out.signature
 7245   9068   
        );
 7246   9069   
 7247   9070   
        let mut signed = original.as_http_request();
 7248   9071   
        out.output.apply_to_request_http0x(&mut signed);
 7249   9072   
 7250         -
        let expected = test::v4::test_signed_request(test);
 7251         -
        assert_req_eq!(expected, signed);
 7252         -
    }
 7253         -
 7254         -
    #[test]
 7255         -
    fn test_sign_vanilla_with_query_params() {
 7256         -
        let settings = SigningSettings {
 7257         -
            signature_location: SignatureLocation::QueryParams,
 7258         -
            expires_in: Some(Duration::from_secs(35)),
 7259         -
            ..Default::default()
 7260         -
        };
 7261         -
        let identity = &Credentials::for_tests().into();
 7262         -
        let params = v4::SigningParams {
 7263         -
            identity,
 7264         -
            region: "us-east-1",
 7265         -
            name: "service",
 7266         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 7267         -
            settings,
 7268         -
        }
 7269         -
        .into();
 7270         -
 7271         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 7272         -
        let signable = SignableRequest::from(&original);
 7273         -
        let out = sign(signable, &params).unwrap();
 7274         -
        assert_eq!(
 7275         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 7276         -
            out.signature
 7277         -
        );
 7278         -
 7279         -
        let mut signed = original.as_http_request();
 7280         -
        out.output.apply_to_request_http0x(&mut signed);
 7281         -
 7282         -
        let expected =
 7283         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        9073  +
        let expected = test.signed_request(SignatureLocation::Headers);
 7284   9074   
        assert_req_eq!(expected, signed);
 7285   9075   
    }
 7286   9076   
 7287   9077   
    #[test]
 7288   9078   
    fn test_sign_headers_utf8() {
 7289   9079   
        let settings = SigningSettings::default();
 7290   9080   
        let identity = &Credentials::for_tests().into();
 7291   9081   
        let params = v4::SigningParams {
 7292   9082   
            identity,
 7293   9083   
            region: "us-east-1",
 7294   9084   
            name: "service",
 7295   9085   
            time: parse_date_time("20150830T123600Z").unwrap(),
 7296   9086   
            settings,
 7297   9087   
        }
 7298   9088   
        .into();
 7299   9089   
 7300   9090   
        let original = http0::Request::builder()
 7301   9091   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 7302   9092   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 7303   9093   
            .body("")
 7304   9094   
            .unwrap()
 7305   9095   
            .into();
 7306   9096   
        let signable = SignableRequest::from(&original);
 7307   9097   
        let out = sign(signable, &params).unwrap();
 7308   9098   
        assert_eq!(
 7309   9099   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 7310   9100   
            out.signature
 7311   9101   
        );
 7312   9102   
 7313   9103   
        let mut signed = original.as_http_request();
 7314   9104   
@@ -1138,31 +1028,236 @@ mod tests {
 7315   9105   
        let mut request = http::Request::builder()
 7316   9106   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 7317   9107   
            .body("")
 7318   9108   
            .unwrap();
 7319   9109   
 7320   9110   
        instructions.apply_to_request_http1x(&mut request);
 7321   9111   
 7322   9112   
        assert_eq!(
 7323   9113   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 7324   9114   
            request.uri().path_and_query().unwrap().to_string()
 7325   9115   
        );
 7326   9116   
    }
 7327   9117   
 7328   9118   
    #[test]
 7329   9119   
    fn test_debug_signable_body() {
 7330   9120   
        let sut = SignableBody::Bytes(b"hello signable body");
 7331   9121   
        assert_eq!(
 7332   9122   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 7333   9123   
            format!("{sut:?}")
 7334   9124   
        );
 7335   9125   
 7336   9126   
        let sut = SignableBody::UnsignedPayload;
 7337   9127   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 7338   9128   
 7339   9129   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 7340   9130   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 7341   9131   
 7342   9132   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 7343   9133   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 7344   9134   
    }
        9135  +
        9136  +
    // v4 test suite
        9137  +
    mod v4_suite {
        9138  +
        use crate::http_request::test::run_test_suite_v4;
        9139  +
        9140  +
        #[test]
        9141  +
        fn test_get_header_key_duplicate() {
        9142  +
            run_test_suite_v4("get-header-key-duplicate");
        9143  +
        }
        9144  +
        9145  +
        #[test]
        9146  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        9147  +
        fn test_get_header_value_multiline() {
        9148  +
            run_test_suite_v4("get-header-value-multiline");
        9149  +
        }
        9150  +
        9151  +
        #[test]
        9152  +
        fn test_get_header_value_order() {
        9153  +
            run_test_suite_v4("get-header-value-order");
        9154  +
        }
        9155  +
        9156  +
        #[test]
        9157  +
        fn test_get_header_value_trim() {
        9158  +
            run_test_suite_v4("get-header-value-trim");
        9159  +
        }
        9160  +
        9161  +
        #[test]
        9162  +
        fn test_get_relative_normalized() {
        9163  +
            run_test_suite_v4("get-relative-normalized");
        9164  +
        }
        9165  +
        9166  +
        #[test]
        9167  +
        fn test_get_relative_relative_normalized() {
        9168  +
            run_test_suite_v4("get-relative-relative-normalized");
        9169  +
        }
        9170  +
        9171  +
        #[test]
        9172  +
        fn test_get_relative_relative_unnormalized() {
        9173  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        9174  +
        }
        9175  +
        9176  +
        #[test]
        9177  +
        fn test_get_relative_unnormalized() {
        9178  +
            run_test_suite_v4("get-relative-unnormalized");
        9179  +
        }
        9180  +
        9181  +
        #[test]
        9182  +
        fn test_get_slash_dot_slash_normalized() {
        9183  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        9184  +
        }
        9185  +
        9186  +
        #[test]
        9187  +
        fn test_get_slash_dot_slash_unnormalized() {
        9188  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        9189  +
        }
        9190  +
        9191  +
        #[test]
        9192  +
        fn test_get_slash_normalized() {
        9193  +
            run_test_suite_v4("get-slash-normalized");
        9194  +
        }
        9195  +
        9196  +
        #[test]
        9197  +
        fn test_get_slash_pointless_dot_normalized() {
        9198  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        9199  +
        }
        9200  +
        9201  +
        #[test]
        9202  +
        fn test_get_slash_pointless_dot_unnormalized() {
        9203  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        9204  +
        }
        9205  +
        9206  +
        #[test]
        9207  +
        fn test_get_slash_unnormalized() {
        9208  +
            run_test_suite_v4("get-slash-unnormalized");
        9209  +
        }
        9210  +
        9211  +
        #[test]
        9212  +
        fn test_get_slashes_normalized() {
        9213  +
            run_test_suite_v4("get-slashes-normalized");
        9214  +
        }
        9215  +
        9216  +
        #[test]
        9217  +
        fn test_get_slashes_unnormalized() {
        9218  +
            run_test_suite_v4("get-slashes-unnormalized");
        9219  +
        }
        9220  +
        9221  +
        #[test]
        9222  +
        #[ignore = "relies on single encode of path segments"]
        9223  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        9224  +
        // skipped until we add control over double_uri_encode in context.json
        9225  +
        fn test_get_space_normalized() {
        9226  +
            run_test_suite_v4("get-space-normalized");
        9227  +
        }
        9228  +
        9229  +
        #[test]
        9230  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        9231  +
        // the input request has unencoded space ' ' in the path which fails to parse
        9232  +
        fn test_get_space_unnormalized() {
        9233  +
            run_test_suite_v4("get-space-unnormalized");
        9234  +
        }
        9235  +
        9236  +
        #[test]
        9237  +
        fn test_get_unreserved() {
        9238  +
            run_test_suite_v4("get-unreserved");
        9239  +
        }
        9240  +
        9241  +
        #[test]
        9242  +
        #[ignore = "httparse fails on invalid uri character"]
        9243  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9244  +
        fn test_get_utf8() {
        9245  +
            run_test_suite_v4("get-utf8");
        9246  +
        }
        9247  +
        9248  +
        #[test]
        9249  +
        fn test_get_vanilla() {
        9250  +
            run_test_suite_v4("get-vanilla");
        9251  +
        }
        9252  +
        9253  +
        #[test]
        9254  +
        fn test_get_vanilla_empty_query_key() {
        9255  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        9256  +
        }
        9257  +
        9258  +
        #[test]
        9259  +
        fn test_get_vanilla_query() {
        9260  +
            run_test_suite_v4("get-vanilla-query");
        9261  +
        }
        9262  +
        9263  +
        #[test]
        9264  +
        fn test_get_vanilla_query_order_encoded() {
        9265  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        9266  +
        }
        9267  +
        9268  +
        #[test]
        9269  +
        fn test_get_vanilla_query_order_key_case() {
        9270  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        9271  +
        }
        9272  +
        9273  +
        #[test]
        9274  +
        fn test_get_vanilla_query_unreserved() {
        9275  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        9276  +
        }
        9277  +
        9278  +
        #[test]
        9279  +
        #[ignore = "httparse fails on invalid uri character"]
        9280  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        9281  +
        fn test_get_vanilla_utf8_query() {
        9282  +
            run_test_suite_v4("get-vanilla-utf8-query");
        9283  +
        }
        9284  +
        9285  +
        #[test]
        9286  +
        fn test_get_vanilla_with_session_token() {
        9287  +
            run_test_suite_v4("get-vanilla-with-session-token");
        9288  +
        }
        9289  +
        9290  +
        #[test]
        9291  +
        fn test_post_header_key_case() {
        9292  +
            run_test_suite_v4("post-header-key-case");
        9293  +
        }
        9294  +
        9295  +
        #[test]
        9296  +
        fn test_post_header_key_sort() {
        9297  +
            run_test_suite_v4("post-header-key-sort");
        9298  +
        }
        9299  +
        9300  +
        #[test]
        9301  +
        fn test_post_header_value_case() {
        9302  +
            run_test_suite_v4("post-header-value-case");
        9303  +
        }
        9304  +
        9305  +
        #[test]
        9306  +
        fn test_post_sts_header_after() {
        9307  +
            run_test_suite_v4("post-sts-header-after");
        9308  +
        }
        9309  +
        9310  +
        #[test]
        9311  +
        fn test_post_sts_header_before() {
        9312  +
            run_test_suite_v4("post-sts-header-before");
        9313  +
        }
        9314  +
        9315  +
        #[test]
        9316  +
        fn test_post_vanilla() {
        9317  +
            run_test_suite_v4("post-vanilla");
        9318  +
        }
        9319  +
        9320  +
        #[test]
        9321  +
        fn test_post_vanilla_empty_query_value() {
        9322  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        9323  +
        }
        9324  +
        9325  +
        #[test]
        9326  +
        fn test_post_vanilla_query() {
        9327  +
            run_test_suite_v4("post-vanilla-query");
        9328  +
        }
        9329  +
        9330  +
        #[test]
        9331  +
        fn test_post_x_www_form_urlencoded() {
        9332  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        9333  +
        }
        9334  +
        9335  +
        #[test]
        9336  +
        fn test_post_x_www_form_urlencoded_parameters() {
        9337  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        9338  +
        }
        9339  +
    }
 7345   9340   
}
 7346   9341   
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
 7347   9342   
index be6c496..86eec20 100644
 7348         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        9343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 7349   9344   
@@ -1,242 +1,453 @@
 7350   9345   
/*
 7351   9346   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 7352   9347   
 * SPDX-License-Identifier: Apache-2.0
 7353   9348   
 */
 7354   9349   
 7355   9350   
//! Functions shared between the tests of several modules.
 7356   9351   
 7357         -
use crate::http_request::{SignableBody, SignableRequest};
        9352  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        9353  +
use crate::http_request::{
        9354  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        9355  +
    SigningSettings,
        9356  +
};
        9357  +
use aws_credential_types::Credentials;
        9358  +
use aws_smithy_runtime_api::client::identity::Identity;
 7358   9359   
use http0::{Method, Uri};
        9360  +
use std::borrow::Cow;
 7359   9361   
use std::error::Error as StdError;
        9362  +
use std::time::{Duration, SystemTime};
        9363  +
use time::format_description::well_known::Rfc3339;
        9364  +
use time::OffsetDateTime;
        9365  +
        9366  +
/// Common test suite collection
        9367  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        9368  +
enum Collection {
        9369  +
    V4,
        9370  +
    V4A,
        9371  +
}
 7360   9372   
 7361         -
pub(crate) mod v4 {
 7362         -
    use super::*;
        9373  +
/// A test from the common CRT test suite
        9374  +
#[derive(Debug, Clone)]
        9375  +
pub(crate) struct SigningSuiteTest {
        9376  +
    test_name: &'static str,
        9377  +
    collection: Collection,
        9378  +
}
 7363   9379   
 7364         -
    fn path(name: &str, ext: &str) -> String {
 7365         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        9380  +
impl SigningSuiteTest {
        9381  +
    /// Create a new test from the V4 test suite
        9382  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        9383  +
        Self {
        9384  +
            test_name,
        9385  +
            collection: Collection::V4,
        9386  +
        }
 7366   9387   
    }
 7367   9388   
 7368         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 7369         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 7370         -
        read(&path(name, "creq")).trim().to_string()
        9389  +
    /// Create a new test from the V4a test suite
        9390  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        9391  +
        Self {
        9392  +
            test_name,
        9393  +
            collection: Collection::V4A,
        9394  +
        }
 7371   9395   
    }
 7372   9396   
 7373         -
    pub(crate) fn test_sts(name: &str) -> String {
 7374         -
        read(&path(name, "sts"))
        9397  +
    /// Get the path to a file in this test suite directory
        9398  +
    fn path(&self, filename: &str) -> String {
        9399  +
        let dir = match self.collection {
        9400  +
            Collection::V4 => "v4",
        9401  +
            Collection::V4A => "v4a",
        9402  +
        };
        9403  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 7375   9404   
    }
 7376   9405   
 7377         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7378         -
        test_parsed_request(name, "req")
        9406  +
    /// Get the HTTP request for the test
        9407  +
    pub(crate) fn request(&self) -> TestRequest {
        9408  +
        test_parsed_request(&self.path("request.txt"))
 7379   9409   
    }
 7380   9410   
 7381         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 7382         -
        test_parsed_request(name, "sreq")
        9411  +
    /// Get the signed HTTP request for the test
        9412  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        9413  +
        match signature_location {
        9414  +
            SignatureLocation::QueryParams => {
        9415  +
                test_parsed_request(&self.path("query-signed-request.txt"))
        9416  +
            }
        9417  +
            SignatureLocation::Headers => {
        9418  +
                test_parsed_request(&self.path("header-signed-request.txt"))
        9419  +
            }
        9420  +
        }
 7383   9421   
    }
 7384   9422   
 7385         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 7386         -
        test_parsed_request(name, "qpsreq")
        9423  +
    /// Get the canonical request for the test
        9424  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        9425  +
        match signature_location {
        9426  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        9427  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
        9428  +
        }
 7387   9429   
    }
 7388   9430   
 7389         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 7390         -
        let path = path(name, ext);
 7391         -
        match parse_request(read(&path).as_bytes()) {
 7392         -
            Ok(parsed) => parsed,
 7393         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        9431  +
    /// Get the string to sign for the test
        9432  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
        9433  +
        match signature_location {
        9434  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        9435  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 7394   9436   
        }
 7395   9437   
    }
 7396   9438   
 7397         -
    #[test]
 7398         -
    fn test_parse() {
 7399         -
        test_request("post-header-key-case");
        9439  +
    /// Get the signature for the test
        9440  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
        9441  +
        match signature_location {
        9442  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        9443  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        9444  +
        }
 7400   9445   
    }
 7401   9446   
 7402         -
    #[test]
 7403         -
    fn test_read_query_params() {
 7404         -
        test_request("get-vanilla-query-order-key-case");
        9447  +
    /// Get the test context for the test
        9448  +
    pub(crate) fn context(&self) -> TestContext {
        9449  +
        let context = read(&self.path("context.json"));
        9450  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        9451  +
        tc_builder.build()
 7405   9452   
    }
 7406   9453   
}
 7407   9454   
 7408         -
#[cfg(feature = "sigv4a")]
 7409         -
pub(crate) mod v4a {
 7410         -
    use super::*;
 7411         -
    use crate::http_request::{
 7412         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 7413         -
    };
 7414         -
    use aws_credential_types::Credentials;
 7415         -
    use aws_smithy_runtime_api::client::identity::Identity;
 7416         -
    use serde_derive::Deserialize;
 7417         -
    use std::time::{Duration, SystemTime};
 7418         -
    use time::format_description::well_known::Rfc3339;
 7419         -
    use time::OffsetDateTime;
 7420         -
 7421         -
    fn path(test_name: &str, definition_name: &str) -> String {
 7422         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        9455  +
fn test_parsed_request(path: &str) -> TestRequest {
        9456  +
    match parse_request(read(path).as_bytes()) {
        9457  +
        Ok(parsed) => parsed,
        9458  +
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 7423   9459   
    }
        9460  +
}
 7424   9461   
 7425         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 7426         -
        test_parsed_request(&path(name, "request"))
 7427         -
    }
        9462  +
fn new_v4_signing_params_from_context(
        9463  +
    test_context: &'_ TestContext,
        9464  +
    signature_location: SignatureLocation,
        9465  +
) -> crate::http_request::SigningParams<'_> {
        9466  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        9467  +
    params.settings.signature_location = signature_location;
        9468  +
    params.into()
        9469  +
}
 7428   9470   
 7429         -
    pub(crate) fn test_canonical_request(
 7430         -
        name: &str,
 7431         -
        signature_location: SignatureLocation,
 7432         -
    ) -> String {
 7433         -
        match signature_location {
 7434         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 7435         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        9471  +
/// Run the given test from the v4 suite for both header and query
        9472  +
/// signature locations
        9473  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        9474  +
    run_v4_test(test_name, SignatureLocation::Headers);
        9475  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        9476  +
}
        9477  +
        9478  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        9479  +
    assert_eq!(expected.scheme(), actual.scheme());
        9480  +
    assert_eq!(expected.authority(), actual.authority());
        9481  +
    assert_eq!(expected.path(), actual.path());
        9482  +
        9483  +
    // query params may be out of order
        9484  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9485  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        9486  +
    expected_params.sort();
        9487  +
        9488  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        9489  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        9490  +
    actual_params.sort();
        9491  +
        9492  +
    assert_eq!(expected_params, actual_params);
        9493  +
}
        9494  +
        9495  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        9496  +
    let expected = expected.as_http_request();
        9497  +
    let actual = actual;
        9498  +
    assert_eq!(expected.method(), actual.method());
        9499  +
    assert_eq!(
        9500  +
        expected.headers().len(),
        9501  +
        actual.headers().len(),
        9502  +
        "extra or missing headers"
        9503  +
    );
        9504  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        9505  +
    assert_uri_eq(expected.uri(), actual.uri());
        9506  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        9507  +
}
        9508  +
        9509  +
/// Run the given test from the v4 suite for the given signature location
        9510  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        9511  +
    let test = SigningSuiteTest::v4(test_name);
        9512  +
    let tc = test.context();
        9513  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        9514  +
        9515  +
    let req = test.request();
        9516  +
    let expected_creq = test.canonical_request(signature_location);
        9517  +
    let signable_req = SignableRequest::from(&req);
        9518  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9519  +
        9520  +
    // check canonical request
        9521  +
    assert_eq!(
        9522  +
        expected_creq,
        9523  +
        actual_creq.to_string(),
        9524  +
        "canonical request didn't match (signature location: {signature_location:?})"
        9525  +
    );
        9526  +
        9527  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        9528  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9529  +
    let actual_string_to_sign = StringToSign::new_v4(
        9530  +
        *params.time(),
        9531  +
        params.region().unwrap(),
        9532  +
        params.name(),
        9533  +
        hashed_creq,
        9534  +
    )
        9535  +
    .to_string();
        9536  +
        9537  +
    // check string to sign
        9538  +
    assert_eq!(
        9539  +
        expected_string_to_sign, actual_string_to_sign,
        9540  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        9541  +
    );
        9542  +
        9543  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        9544  +
    let mut signed = req.as_http_request();
        9545  +
    out.output.apply_to_request_http0x(&mut signed);
        9546  +
        9547  +
    // check signature
        9548  +
    assert_eq!(
        9549  +
        test.signature(signature_location),
        9550  +
        out.signature,
        9551  +
        "signature didn't match (signature location: {signature_location:?})"
        9552  +
    );
        9553  +
        9554  +
    let expected = test.signed_request(signature_location);
        9555  +
    assert_requests_eq(expected, signed);
        9556  +
}
        9557  +
        9558  +
/// Test suite context.json
        9559  +
pub(crate) struct TestContext {
        9560  +
    pub(crate) identity: Identity,
        9561  +
    pub(crate) expiration_in_seconds: u64,
        9562  +
    pub(crate) normalize: bool,
        9563  +
    pub(crate) region: String,
        9564  +
    pub(crate) service: String,
        9565  +
    pub(crate) timestamp: String,
        9566  +
    pub(crate) omit_session_token: bool,
        9567  +
    pub(crate) sign_body: bool,
        9568  +
}
        9569  +
        9570  +
// Serde has limitations requiring this odd workaround.
        9571  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        9572  +
fn return_true() -> bool {
        9573  +
    true
        9574  +
}
        9575  +
        9576  +
#[derive(serde_derive::Deserialize)]
        9577  +
pub(crate) struct TestContextBuilder {
        9578  +
    credentials: TestContextCreds,
        9579  +
    expiration_in_seconds: u64,
        9580  +
    normalize: bool,
        9581  +
    region: String,
        9582  +
    service: String,
        9583  +
    timestamp: String,
        9584  +
    #[serde(default)]
        9585  +
    omit_session_token: bool,
        9586  +
    #[serde(default = "return_true")]
        9587  +
    sign_body: bool,
        9588  +
}
        9589  +
        9590  +
impl TestContextBuilder {
        9591  +
    pub(crate) fn build(self) -> TestContext {
        9592  +
        let identity = Identity::new(
        9593  +
            Credentials::from_keys(
        9594  +
                &self.credentials.access_key_id,
        9595  +
                &self.credentials.secret_access_key,
        9596  +
                self.credentials.token.clone(),
        9597  +
            ),
        9598  +
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
        9599  +
        );
        9600  +
        9601  +
        TestContext {
        9602  +
            identity,
        9603  +
            expiration_in_seconds: self.expiration_in_seconds,
        9604  +
            normalize: self.normalize,
        9605  +
            region: self.region,
        9606  +
            service: self.service,
        9607  +
            timestamp: self.timestamp,
        9608  +
            omit_session_token: self.omit_session_token,
        9609  +
            sign_body: self.sign_body,
 7436   9610   
        }
 7437   9611   
    }
        9612  +
}
 7438   9613   
 7439         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
 7440         -
        match signature_location {
 7441         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 7442         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        9614  +
#[derive(serde_derive::Deserialize)]
        9615  +
pub(crate) struct TestContextCreds {
        9616  +
    access_key_id: String,
        9617  +
    secret_access_key: String,
        9618  +
    token: Option<String>,
        9619  +
}
        9620  +
        9621  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        9622  +
    fn from(tc: &'a TestContext) -> Self {
        9623  +
        crate::sign::v4::SigningParams {
        9624  +
            identity: &tc.identity,
        9625  +
            region: &tc.region,
        9626  +
            name: &tc.service,
        9627  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        9628  +
                .unwrap()
        9629  +
                .into(),
        9630  +
            settings: SigningSettings {
        9631  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        9632  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        9633  +
                uri_path_normalization_mode: tc.normalize.into(),
        9634  +
                session_token_mode: if tc.omit_session_token {
        9635  +
                    SessionTokenMode::Exclude
        9636  +
                } else {
        9637  +
                    SessionTokenMode::Include
        9638  +
                },
        9639  +
                payload_checksum_kind: if tc.sign_body {
        9640  +
                    PayloadChecksumKind::XAmzSha256
        9641  +
                } else {
        9642  +
                    PayloadChecksumKind::NoHeader
        9643  +
                },
        9644  +
                ..Default::default()
        9645  +
            },
 7443   9646   
        }
 7444   9647   
    }
        9648  +
}
 7445   9649   
 7446         -
    fn test_parsed_request(path: &str) -> TestRequest {
 7447         -
        match parse_request(read(path).as_bytes()) {
 7448         -
            Ok(parsed) => parsed,
 7449         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
 7450         -
        }
        9650  +
#[cfg(feature = "sigv4a")]
        9651  +
pub(crate) mod v4a {
        9652  +
    use super::*;
        9653  +
    use crate::http_request::{
        9654  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        9655  +
    };
        9656  +
    use crate::sign::v4a;
        9657  +
    use p256::ecdsa::signature::{Signature, Verifier};
        9658  +
    use p256::ecdsa::{DerSignature, SigningKey};
        9659  +
    use std::time::Duration;
        9660  +
    use time::format_description::well_known::Rfc3339;
        9661  +
    use time::OffsetDateTime;
        9662  +
        9663  +
    fn new_v4a_signing_params_from_context(
        9664  +
        test_context: &'_ TestContext,
        9665  +
        signature_location: SignatureLocation,
        9666  +
    ) -> crate::http_request::SigningParams<'_> {
        9667  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        9668  +
        params.settings.signature_location = signature_location;
        9669  +
        params.into()
 7451   9670   
    }
 7452   9671   
 7453         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 7454         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 7455         -
        let context = read(&path);
 7456         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 7457         -
        tc_builder.build()
        9672  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        9673  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        9674  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
 7458   9675   
    }
 7459   9676   
 7460         -
    pub(crate) struct TestContext {
 7461         -
        pub(crate) identity: Identity,
 7462         -
        pub(crate) expiration_in_seconds: u64,
 7463         -
        pub(crate) normalize: bool,
 7464         -
        pub(crate) region: String,
 7465         -
        pub(crate) service: String,
 7466         -
        pub(crate) timestamp: String,
 7467         -
        pub(crate) omit_session_token: bool,
 7468         -
        pub(crate) sign_body: bool,
        9677  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        9678  +
        let test = SigningSuiteTest::v4a(test_name);
        9679  +
        let tc = test.context();
        9680  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        9681  +
        9682  +
        let req = test.request();
        9683  +
        let expected_creq = test.canonical_request(signature_location);
        9684  +
        let signable_req = SignableRequest::from(&req);
        9685  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        9686  +
        9687  +
        assert_eq!(
        9688  +
            expected_creq,
        9689  +
            actual_creq.to_string(),
        9690  +
            "canonical request didn't match (signature location: {signature_location:?})"
        9691  +
        );
        9692  +
        9693  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        9694  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        9695  +
        let actual_string_to_sign = StringToSign::new_v4a(
        9696  +
            *params.time(),
        9697  +
            params.region_set().unwrap(),
        9698  +
            params.name(),
        9699  +
            hashed_creq,
        9700  +
        )
        9701  +
        .to_string();
        9702  +
        9703  +
        assert_eq!(
        9704  +
            expected_string_to_sign, actual_string_to_sign,
        9705  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        9706  +
        );
        9707  +
        9708  +
        let out = sign(signable_req, &params).unwrap();
        9709  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        9710  +
        out.output
        9711  +
            .apply_to_request_http0x(&mut req.as_http_request());
        9712  +
        9713  +
        let creds = params.credentials().unwrap();
        9714  +
        let signing_key =
        9715  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        9716  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        9717  +
        let sig = sig
        9718  +
            .try_into()
        9719  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        9720  +
        9721  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        9722  +
        let peer_public_key = signing_key.verifying_key();
        9723  +
        let sts = actual_string_to_sign.as_bytes();
        9724  +
        peer_public_key.verify(sts, &sig).unwrap();
        9725  +
        // TODO(sigv4a) - use public.key.json as verifying key?
 7469   9726   
    }
 7470   9727   
 7471   9728   
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 7472   9729   
        fn from(tc: &'a TestContext) -> Self {
 7473   9730   
            crate::sign::v4a::SigningParams {
 7474   9731   
                identity: &tc.identity,
 7475   9732   
                region_set: &tc.region,
 7476   9733   
                name: &tc.service,
 7477   9734   
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 7478   9735   
                    .unwrap()
 7479   9736   
                    .into(),
 7480   9737   
                settings: SigningSettings {
 7481   9738   
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 7482   9739   
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 7483   9740   
                    uri_path_normalization_mode: tc.normalize.into(),
 7484   9741   
                    session_token_mode: if tc.omit_session_token {
 7485   9742   
                        SessionTokenMode::Exclude
 7486   9743   
                    } else {
 7487   9744   
                        SessionTokenMode::Include
 7488   9745   
                    },
 7489   9746   
                    payload_checksum_kind: if tc.sign_body {
 7490   9747   
                        PayloadChecksumKind::XAmzSha256
 7491   9748   
                    } else {
 7492   9749   
                        PayloadChecksumKind::NoHeader
 7493   9750   
                    },
 7494   9751   
                    ..Default::default()
 7495   9752   
                },
 7496   9753   
            }
 7497   9754   
        }
 7498   9755   
    }
 7499   9756   
 7500         -
    // Serde has limitations requiring this odd workaround.
 7501         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 7502         -
    fn return_true() -> bool {
 7503         -
        true
 7504         -
    }
 7505         -
 7506         -
    #[derive(Deserialize)]
 7507         -
    pub(crate) struct TestContextBuilder {
 7508         -
        credentials: TestContextCreds,
 7509         -
        expiration_in_seconds: u64,
 7510         -
        normalize: bool,
 7511         -
        region: String,
 7512         -
        service: String,
 7513         -
        timestamp: String,
 7514         -
        #[serde(default)]
 7515         -
        omit_session_token: bool,
 7516         -
        #[serde(default = "return_true")]
 7517         -
        sign_body: bool,
 7518         -
    }
 7519         -
 7520         -
    impl TestContextBuilder {
 7521         -
        pub(crate) fn build(self) -> TestContext {
 7522         -
            let identity = Identity::new(
 7523         -
                Credentials::from_keys(
 7524         -
                    &self.credentials.access_key_id,
 7525         -
                    &self.credentials.secret_access_key,
 7526         -
                    self.credentials.token.clone(),
 7527         -
                ),
 7528         -
                Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 7529         -
            );
 7530         -
 7531         -
            TestContext {
 7532         -
                identity,
 7533         -
                expiration_in_seconds: self.expiration_in_seconds,
 7534         -
                normalize: self.normalize,
 7535         -
                region: self.region,
 7536         -
                service: self.service,
 7537         -
                timestamp: self.timestamp,
 7538         -
                omit_session_token: self.omit_session_token,
 7539         -
                sign_body: self.sign_body,
 7540         -
            }
 7541         -
        }
 7542         -
    }
 7543         -
 7544         -
    #[derive(Deserialize)]
 7545         -
    pub(crate) struct TestContextCreds {
 7546         -
        access_key_id: String,
 7547         -
        secret_access_key: String,
 7548         -
        token: Option<String>,
 7549         -
    }
 7550         -
 7551   9757   
    #[test]
 7552   9758   
    fn test_parse() {
 7553         -
        let req = test_request("post-header-key-case");
        9759  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 7554   9760   
        assert_eq!(req.method, "POST");
 7555   9761   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7556   9762   
        assert!(req.headers.is_empty());
 7557   9763   
    }
 7558   9764   
 7559   9765   
    #[test]
 7560   9766   
    fn test_read_query_params() {
 7561         -
        let req = test_request("get-header-value-trim");
        9767  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 7562   9768   
        assert_eq!(req.method, "GET");
 7563   9769   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 7564   9770   
        assert!(!req.headers.is_empty());
 7565   9771   
    }
 7566   9772   
}
 7567   9773   
 7568   9774   
fn read(path: &str) -> String {
 7569   9775   
    println!("Loading `{}` for test case...", path);
 7570   9776   
    let v = {
 7571   9777   
        match std::fs::read_to_string(path) {
 7572   9778   
            // This replacement is necessary for tests to pass on Windows, as reading the
 7573   9779   
            // test snapshots from the file system results in CRLF line endings being inserted.
 7574   9780   
            Ok(value) => value.replace("\r\n", "\n"),
 7575   9781   
            Err(err) => {
 7576   9782   
                panic!("failed to load test case `{}`: {}", path, err);
 7577   9783   
            }
 7578   9784   
        }
 7579   9785   
    };
 7580   9786   
 7581   9787   
    v.trim().to_string()
 7582   9788   
}
 7583   9789   
 7584   9790   
pub(crate) struct TestRequest {
 7585   9791   
    pub(crate) uri: String,
 7586   9792   
    pub(crate) method: String,
 7587   9793   
    pub(crate) headers: Vec<(String, String)>,
 7588   9794   
    pub(crate) body: TestSignedBody,
 7589   9795   
}
 7590   9796   
 7591   9797   
pub(crate) enum TestSignedBody {
 7592   9798   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 7593   9799   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 7594   9800   
                    )
 7595   9801   
                })
 7596   9802   
                .collect::<Vec<_>>(),
 7597   9803   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 7598   9804   
        }
 7599   9805   
    }
 7600   9806   
}
 7601   9807   
 7602   9808   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 7603   9809   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 7604   9810   
        SignableRequest::new(
 7605   9811   
            &request.method,
 7606   9812   
            &request.uri,
 7607   9813   
            request
 7608   9814   
                .headers
 7609   9815   
                .iter()
 7610   9816   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 7611   9817   
            request.body.as_signable_body(),
 7612   9818   
        )
 7613   9819   
        .expect("URI MUST be valid")
 7614   9820   
    }
 7615   9821   
}
 7616   9822   
 7617   9823   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 7618   9824   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 7619   9825   
    // httparse 1.5 requires two trailing newlines to head the header section.
 7620   9826   
    let mut with_newline = Vec::from(s);
 7621   9827   
    with_newline.push(b'\n');
 7622   9828   
    let mut req = httparse::Request::new(&mut headers);
 7623         -
    let _ = req.parse(&with_newline).unwrap();
        9829  +
    let status = req.parse(&with_newline).unwrap();
        9830  +
        9831  +
    let body = if status.is_complete() {
        9832  +
        let body_offset = status.unwrap();
        9833  +
        // ignore the newline we added, take from original
        9834  +
        &s[body_offset..]
        9835  +
    } else {
        9836  +
        &[]
        9837  +
    };
 7624   9838   
 7625   9839   
    let mut uri_builder = Uri::builder().scheme("https");
 7626   9840   
    if let Some(path) = req.path {
 7627   9841   
        uri_builder = uri_builder.path_and_query(path);
 7628   9842   
    }
 7629   9843   
 7630   9844   
    let mut headers = vec![];
 7631   9845   
    for header in req.headers {
 7632   9846   
        let name = header.name.to_lowercase();
 7633   9847   
        if name == "host" {
 7634   9848   
            uri_builder = uri_builder.authority(header.value);
 7635   9849   
        } else if !name.is_empty() {
 7636   9850   
            headers.push((
 7637   9851   
                header.name.to_string(),
 7638   9852   
                std::str::from_utf8(header.value)?.to_string(),
 7639   9853   
            ));
 7640   9854   
        }
 7641   9855   
    }
 7642   9856   
 7643   9857   
    Ok(TestRequest {
 7644   9858   
        uri: uri_builder.build()?.to_string(),
 7645   9859   
        method: req.method.unwrap().to_string(),
 7646   9860   
        headers,
 7647         -
        body: TestSignedBody::Bytes(vec![]),
        9861  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 7648   9862   
    })
 7649   9863   
}
 7650   9864   
 7651   9865   
#[test]
 7652   9866   
fn test_parse_headers() {
 7653   9867   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 7654   9868   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 7655   9869   
    assert_eq!(
 7656   9870   
        httparse::parse_headers(buf, &mut headers),
 7657   9871   
        Ok(httparse::Status::Complete((
 7658   9872   
            56,
 7659   9873   
            &[
 7660   9874   
                httparse::Header {
 7661   9875   
                    name: "Host",
 7662   9876   
                    value: b"example.amazonaws.com",
 7663   9877   
                },
 7664   9878   
                httparse::Header {
 7665   9879   
                    name: "X-Amz-Date",
 7666   9880   
                    value: b"20150830T123600Z",
 7667   9881   
                }
 7668   9882   
            ][..]
 7669   9883   
        )))
 7670   9884   
    );
 7671   9885   
}
 7672   9886   
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
 7673   9887   
index a208453..fc00249 100644
 7674         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        9888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 7675   9889   
@@ -168,52 +168,54 @@ pub mod signing_params {
 7676   9890   
        );
 7677   9891   
 7678   9892   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 7679   9893   
        /// a required argument was not given.
 7680   9894   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 7681   9895   
            Ok(SigningParams {
 7682   9896   
                identity: self
 7683   9897   
                    .identity
 7684   9898   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 7685   9899   
                region: self
 7686   9900   
                    .region
 7687   9901   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 7688   9902   
                name: self
 7689   9903   
                    .name
 7690   9904   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 7691   9905   
                time: self
 7692   9906   
                    .time
 7693   9907   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 7694   9908   
                settings: self
 7695   9909   
                    .settings
 7696   9910   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 7697   9911   
            })
 7698   9912   
        }
 7699   9913   
    }
 7700   9914   
}
 7701   9915   
 7702   9916   
#[cfg(test)]
 7703   9917   
mod tests {
 7704   9918   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 7705   9919   
    use crate::date_time::test_parsers::parse_date_time;
 7706         -
    use crate::http_request::test;
 7707   9920   
 7708   9921   
    #[test]
 7709   9922   
    fn test_signature_calculation() {
 7710   9923   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 7711         -
        let creq = test::v4::test_canonical_request("iam");
        9924  +
        let creq = r#"AWS4-HMAC-SHA256
        9925  +
20150830T123600Z
        9926  +
20150830/us-east-1/iam/aws4_request
        9927  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 7712   9928   
        let time = parse_date_time("20150830T123600Z").unwrap();
 7713   9929   
 7714   9930   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 7715   9931   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 7716   9932   
 7717   9933   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 7718   9934   
        assert_eq!(expected, &signature);
 7719   9935   
    }
 7720   9936   
 7721   9937   
    #[test]
 7722   9938   
    fn sign_payload_empty_string() {
 7723   9939   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 7724   9940   
        let actual = sha256_hex_string([]);
 7725   9941   
        assert_eq!(expected, actual);
 7726   9942   
    }
 7727   9943   
}
 7728   9944   
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
 7729   9945   
index ce78c38..8c2f591 100644
 7730         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        9946  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 7731   9947   
@@ -1,43 +1,43 @@
 7732   9948   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7733   9949   
[package]
 7734   9950   
name = "aws-smithy-checksums"
 7735   9951   
version = "0.63.5"
 7736   9952   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 7737   9953   
description = "Checksum calculation and verification callbacks"
 7738   9954   
edition = "2021"
 7739   9955   
license = "Apache-2.0"
 7740   9956   
repository = "https://github.com/smithy-lang/smithy-rs"
 7741   9957   
[package.metadata.docs.rs]
 7742   9958   
all-features = true
 7743   9959   
targets = ["x86_64-unknown-linux-gnu"]
 7744   9960   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7745   9961   
rustdoc-args = ["--cfg", "docsrs"]
 7746   9962   
 7747   9963   
[dependencies]
 7748   9964   
bytes = "1.10.0"
 7749   9965   
crc-fast = "1.3.0"
 7750   9966   
hex = "0.4.3"
 7751   9967   
http = "0.2.9"
 7752   9968   
http-body = "0.4.5"
 7753   9969   
md-5 = "0.10"
 7754   9970   
pin-project-lite = "0.2.14"
 7755   9971   
sha1 = "0.10"
 7756   9972   
sha2 = "0.10"
 7757   9973   
tracing = "0.1.40"
 7758   9974   
 7759   9975   
[dependencies.aws-smithy-http]
 7760   9976   
path = "../aws-smithy-http"
 7761         -
version = "0.62.2"
        9977  +
version = "0.62.3"
 7762   9978   
 7763   9979   
[dependencies.aws-smithy-types]
 7764   9980   
path = "../aws-smithy-types"
 7765   9981   
version = "1.3.2"
 7766   9982   
 7767   9983   
[dev-dependencies]
 7768   9984   
bytes-utils = "0.1.2"
 7769   9985   
pretty_assertions = "1.3"
 7770   9986   
tracing-test = "0.2.1"
 7771   9987   
 7772   9988   
[dev-dependencies.tokio]
 7773   9989   
version = "1.23.1"
 7774   9990   
features = ["macros", "rt"]
 7775   9991   
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
 7776   9992   
index 970c99e..d3c7a49 100644
 7777         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        9993  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 7778   9994   
@@ -1,34 +1,34 @@
 7779   9995   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7780   9996   
[package]
 7781   9997   
name = "aws-smithy-http"
 7782         -
version = "0.62.2"
        9998  +
version = "0.62.3"
 7783   9999   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7784  10000   
description = "Smithy HTTP logic for smithy-rs."
 7785  10001   
edition = "2021"
 7786  10002   
license = "Apache-2.0"
 7787  10003   
repository = "https://github.com/smithy-lang/smithy-rs"
 7788  10004   
[package.metadata.docs.rs]
 7789  10005   
all-features = true
 7790  10006   
targets = ["x86_64-unknown-linux-gnu"]
 7791  10007   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7792  10008   
rustdoc-args = ["--cfg", "docsrs"]
 7793  10009   
 7794  10010   
[features]
 7795  10011   
event-stream = ["aws-smithy-eventstream"]
 7796  10012   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 7797  10013   
 7798  10014   
[dependencies]
 7799  10015   
bytes = "1.10.0"
 7800  10016   
bytes-utils = "0.1"
 7801  10017   
percent-encoding = "2.3.1"
 7802  10018   
pin-project-lite = "0.2.14"
 7803  10019   
pin-utils = "0.1.0"
 7804  10020   
tracing = "0.1.40"
 7805  10021   
futures-core = "0.3.31"
 7806  10022   
 7807  10023   
[dependencies.aws-smithy-eventstream]
 7808  10024   
path = "../aws-smithy-eventstream"
 7809  10025   
optional = true
 7810  10026   
version = "0.60.10"
 7811  10027   
 7812  10028   
[dependencies.aws-smithy-runtime-api]
 7813  10029   
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
 7814  10030   
index 508f7a2..361545e 100644
 7815         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
       10031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 7816  10032   
@@ -1,27 +1,27 @@
 7817  10033   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7818  10034   
[[bin]]
 7819  10035   
name = "read_many_from_str"
 7820  10036   
path = "fuzz_targets/read_many_from_str.rs"
 7821  10037   
test = false
 7822  10038   
doc = false
 7823  10039   
 7824  10040   
[package]
 7825  10041   
name = "aws-smithy-http-fuzz"
 7826  10042   
version = "0.0.0"
 7827  10043   
authors = ["Automatically generated"]
 7828  10044   
publish = false
 7829  10045   
edition = "2021"
 7830  10046   
 7831  10047   
[package.metadata]
 7832  10048   
cargo-fuzz = true
 7833  10049   
 7834  10050   
[dependencies]
 7835  10051   
libfuzzer-sys = "=0.4.7"
 7836  10052   
http = "0.2.3"
 7837  10053   
 7838  10054   
[dependencies.aws-smithy-http]
 7839  10055   
path = ".."
 7840         -
version = "0.62.2"
       10056  +
version = "0.62.3"
 7841  10057   
 7842  10058   
[workspace]
 7843  10059   
members = ["."]
 7844  10060   
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
 7845  10061   
index fef41d0..7694da6 100644
 7846         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
       10062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 7847  10063   
@@ -25,68 +25,73 @@ impl QueryWriter {
 7848  10064   
    pub fn new(uri: &Uri) -> Self {
 7849  10065   
        let new_path_and_query = uri
 7850  10066   
            .path_and_query()
 7851  10067   
            .map(|pq| pq.to_string())
 7852  10068   
            .unwrap_or_default();
 7853  10069   
        let prefix = if uri.query().is_none() {
 7854  10070   
            Some('?')
 7855  10071   
        } else if !uri.query().unwrap_or_default().is_empty() {
 7856  10072   
            Some('&')
 7857  10073   
        } else {
 7858  10074   
            None
 7859  10075   
        };
 7860  10076   
        QueryWriter {
 7861  10077   
            base_uri: uri.clone(),
 7862  10078   
            new_path_and_query,
 7863  10079   
            prefix,
 7864  10080   
        }
 7865  10081   
    }
 7866  10082   
 7867  10083   
    /// Clears all query parameters.
 7868  10084   
    pub fn clear_params(&mut self) {
 7869  10085   
        if let Some(index) = self.new_path_and_query.find('?') {
 7870  10086   
            self.new_path_and_query.truncate(index);
 7871  10087   
            self.prefix = Some('?');
 7872  10088   
        }
 7873  10089   
    }
 7874  10090   
 7875  10091   
    /// Inserts a new query parameter. The key and value are percent encoded
 7876  10092   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 7877  10093   
    pub fn insert(&mut self, k: &str, v: &str) {
       10094  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
       10095  +
    }
       10096  +
       10097  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
       10098  +
    /// as is.
       10099  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 7878  10100   
        if let Some(prefix) = self.prefix {
 7879  10101   
            self.new_path_and_query.push(prefix);
 7880  10102   
        }
 7881  10103   
        self.prefix = Some('&');
 7882         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
       10104  +
        self.new_path_and_query.push_str(encoded_k);
 7883  10105   
        self.new_path_and_query.push('=');
 7884         -
 7885         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
       10106  +
        self.new_path_and_query.push_str(encoded_v)
 7886  10107   
    }
 7887  10108   
 7888  10109   
    /// Returns just the built query string.
 7889  10110   
    pub fn build_query(self) -> String {
 7890  10111   
        self.build_uri().query().unwrap_or_default().to_string()
 7891  10112   
    }
 7892  10113   
 7893  10114   
    /// Returns a full [`Uri`] with the query string updated.
 7894  10115   
    pub fn build_uri(self) -> Uri {
 7895  10116   
        let mut parts = self.base_uri.into_parts();
 7896  10117   
        parts.path_and_query = Some(
 7897  10118   
            self.new_path_and_query
 7898  10119   
                .parse()
 7899  10120   
                .expect("adding query should not invalidate URI"),
 7900  10121   
        );
 7901  10122   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 7902  10123   
    }
 7903  10124   
}
 7904  10125   
 7905  10126   
#[cfg(test)]
 7906  10127   
mod test {
 7907  10128   
    use super::QueryWriter;
 7908  10129   
    use http_02x::Uri;
 7909  10130   
 7910  10131   
    #[test]
 7911  10132   
    fn empty_uri() {
 7912  10133   
        let uri = Uri::from_static("http://www.example.com");
 7913  10134   
        let mut query_writer = QueryWriter::new(&uri);
 7914  10135   
        query_writer.insert("key", "val%ue");
 7915  10136   
        query_writer.insert("another", "value");
 7916  10137   
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
 7917  10138   
index f108978..df7a9fe 100644
 7918         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
       10139  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 7919  10140   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 7920  10141   
 7921  10142   
[package.metadata.smithy-rs-release-tooling]
 7922  10143   
stable = true
 7923  10144   
[package.metadata.cargo-udeps.ignore]
 7924  10145   
normal = ["aws-smithy-http"]
 7925  10146   
 7926  10147   
[features]
 7927  10148   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 7928  10149   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 7929  10150   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 7930  10151   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 7931  10152   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 7932  10153   
rt-tokio = ["tokio/rt"]
 7933  10154   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 7934  10155   
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"]
 7935  10156   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 7936  10157   
 7937  10158   
[dependencies]
 7938  10159   
bytes = "1.10.0"
 7939  10160   
fastrand = "2.3.0"
 7940  10161   
pin-project-lite = "0.2.14"
 7941  10162   
pin-utils = "0.1.0"
 7942  10163   
tracing = "0.1.40"
 7943  10164   
 7944  10165   
[dependencies.aws-smithy-async]
 7945  10166   
path = "../aws-smithy-async"
 7946  10167   
version = "1.2.5"
 7947  10168   
 7948  10169   
[dependencies.aws-smithy-http]
 7949  10170   
path = "../aws-smithy-http"
 7950         -
version = "0.62.2"
       10171  +
version = "0.62.3"
 7951  10172   
 7952  10173   
[dependencies.aws-smithy-observability]
 7953  10174   
path = "../aws-smithy-observability"
 7954  10175   
version = "0.1.3"
 7955  10176   
 7956  10177   
[dependencies.aws-smithy-runtime-api]
 7957  10178   
path = "../aws-smithy-runtime-api"
 7958  10179   
version = "1.8.5"
 7959  10180   
 7960  10181   
[dependencies.aws-smithy-types]
 7961  10182   
path = "../aws-smithy-types"
 7962  10183   
features = ["http-body-0-4-x"]
 7963  10184   
version = "1.3.2"
 7964  10185   
 7965  10186   
[dependencies.aws-smithy-http-client]
 7966  10187   
path = "../aws-smithy-http-client"
 7967  10188   
optional = true
 7968  10189   
version = "1.0.6"
 7969  10190   
 7970  10191   
[dependencies.http-02x]
 7971  10192   
package = "http"
 7972  10193   
version = "0.2.9"
 7973  10194   
 7974  10195   
[dependencies.http-1x]
 7975  10196   
package = "http"
 7976  10197   
version = "1"
 7977  10198   
 7978  10199   
[dependencies.http-body-04x]
 7979  10200   
package = "http-body"
 7980  10201   
version = "0.4.5"
 7981  10202   
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
 7982  10203   
index 4e050c6..f58eb1c 100644
 7983         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
       10204  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 7984  10205   
@@ -1,33 +1,33 @@
 7985  10206   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7986  10207   
[package]
 7987  10208   
name = "aws-smithy-wasm"
 7988  10209   
version = "0.1.4"
 7989  10210   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 7990  10211   
description = "Smithy WebAssembly configuration for smithy-rs."
 7991  10212   
edition = "2021"
 7992  10213   
license = "Apache-2.0"
 7993  10214   
repository = "https://github.com/awslabs/smithy-rs"
 7994  10215   
[package.metadata.docs.rs]
 7995  10216   
all-features = true
 7996  10217   
targets = ["x86_64-unknown-linux-gnu"]
 7997  10218   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 7998  10219   
rustdoc-args = ["--cfg", "docsrs"]
 7999  10220   
 8000  10221   
[dependencies]
 8001  10222   
bytes = "1.10.0"
 8002  10223   
http = "1.0.0"
 8003  10224   
tracing = "0.1.40"
 8004  10225   
wasi = "0.12.1"
 8005  10226   
 8006  10227   
[dependencies.aws-smithy-runtime-api]
 8007  10228   
path = "../aws-smithy-runtime-api"
 8008  10229   
features = ["http-1x"]
 8009  10230   
version = "1.8.5"
 8010  10231   
 8011  10232   
[dependencies.aws-smithy-http]
 8012  10233   
path = "../aws-smithy-http"
 8013         -
version = "0.62.2"
       10234  +
version = "0.62.3"
 8014  10235   
 8015  10236   
[dependencies.aws-smithy-types]
 8016  10237   
path = "../aws-smithy-types"
 8017  10238   
version = "1.3.2"
 8018  10239   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 8019  10240   
index a880648..139e808 100644
 8020         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
       10241  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 8021  10242   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 8022  10243   
edition = "2021"
 8023  10244   
license = "Apache-2.0"
 8024  10245   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8025  10246   
rust-version = "1.86.0"
 8026  10247   
readme = "README.md"
 8027  10248   
[package.metadata.smithy]
 8028  10249   
codegen-version = "ci"
 8029  10250   
[package.metadata.docs.rs]
 8030  10251   
all-features = true
 8031  10252   
targets = ["x86_64-unknown-linux-gnu"]
 8032  10253   
[dependencies.aws-credential-types]
 8033  10254   
path = "../aws-credential-types"
 8034  10255   
version = "1.2.4"
 8035  10256   
 8036  10257   
[dependencies.aws-runtime]
 8037  10258   
path = "../aws-runtime"
 8038  10259   
features = ["event-stream"]
 8039  10260   
version = "1.5.9"
 8040  10261   
 8041  10262   
[dependencies.aws-smithy-async]
 8042  10263   
path = "../aws-smithy-async"
 8043  10264   
version = "1.2.5"
 8044  10265   
 8045  10266   
[dependencies.aws-smithy-eventstream]
 8046  10267   
path = "../aws-smithy-eventstream"
 8047  10268   
version = "0.60.10"
 8048  10269   
 8049  10270   
[dependencies.aws-smithy-http]
 8050  10271   
path = "../aws-smithy-http"
 8051  10272   
features = ["event-stream"]
 8052         -
version = "0.62.2"
       10273  +
version = "0.62.3"
 8053  10274   
 8054  10275   
[dependencies.aws-smithy-json]
 8055  10276   
path = "../aws-smithy-json"
 8056  10277   
version = "0.61.4"
 8057  10278   
 8058  10279   
[dependencies.aws-smithy-runtime]
 8059  10280   
path = "../aws-smithy-runtime"
 8060  10281   
features = ["client"]
 8061  10282   
version = "1.8.5"
 8062  10283   
 8063  10284   
[dependencies.aws-smithy-runtime-api]
 8064  10285   
path = "../aws-smithy-runtime-api"
 8065  10286   
features = ["client", "http-02x"]
 8066  10287   
version = "1.8.5"
 8067  10288   
 8068  10289   
[dependencies.aws-smithy-types]
 8069  10290   
path = "../aws-smithy-types"
 8070  10291   
version = "1.3.2"
 8071  10292   
 8072  10293   
[dependencies.aws-types]
 8073  10294   
path = "../aws-types"
 8074  10295   
version = "1.3.8"
 8075  10296   
 8076  10297   
[dependencies.bytes]
 8077  10298   
version = "1.4.0"
 8078  10299   
 8079  10300   
[dependencies.fastrand]
 8080  10301   
version = "2.0.0"
 8081  10302   
 8082  10303   
[dependencies.http]
 8083  10304   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 8084  10305   
index 415ecc9..667d12b 100644
 8085         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
       10306  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 8086  10307   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 8087  10308   
edition = "2021"
 8088  10309   
license = "Apache-2.0"
 8089  10310   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8090  10311   
rust-version = "1.86.0"
 8091  10312   
readme = "README.md"
 8092  10313   
[package.metadata.smithy]
 8093  10314   
codegen-version = "ci"
 8094  10315   
[package.metadata.docs.rs]
 8095  10316   
all-features = true
 8096  10317   
targets = ["x86_64-unknown-linux-gnu"]
 8097  10318   
[dependencies.aws-credential-types]
 8098  10319   
path = "../aws-credential-types"
 8099  10320   
version = "1.2.4"
 8100  10321   
 8101  10322   
[dependencies.aws-runtime]
 8102  10323   
path = "../aws-runtime"
 8103  10324   
features = ["event-stream"]
 8104  10325   
version = "1.5.9"
 8105  10326   
 8106  10327   
[dependencies.aws-smithy-async]
 8107  10328   
path = "../aws-smithy-async"
 8108  10329   
version = "1.2.5"
 8109  10330   
 8110  10331   
[dependencies.aws-smithy-eventstream]
 8111  10332   
path = "../aws-smithy-eventstream"
 8112  10333   
version = "0.60.10"
 8113  10334   
 8114  10335   
[dependencies.aws-smithy-http]
 8115  10336   
path = "../aws-smithy-http"
 8116  10337   
features = ["event-stream"]
 8117         -
version = "0.62.2"
       10338  +
version = "0.62.3"
 8118  10339   
 8119  10340   
[dependencies.aws-smithy-json]
 8120  10341   
path = "../aws-smithy-json"
 8121  10342   
version = "0.61.4"
 8122  10343   
 8123  10344   
[dependencies.aws-smithy-runtime]
 8124  10345   
path = "../aws-smithy-runtime"
 8125  10346   
features = ["client"]
 8126  10347   
version = "1.8.5"
 8127  10348   
 8128  10349   
[dependencies.aws-smithy-runtime-api]
 8129  10350   
path = "../aws-smithy-runtime-api"
 8130  10351   
features = ["client", "http-02x"]
 8131  10352   
version = "1.8.5"
 8132  10353   
 8133  10354   
[dependencies.aws-smithy-types]
 8134  10355   
path = "../aws-smithy-types"
 8135  10356   
version = "1.3.2"
 8136  10357   
 8137  10358   
[dependencies.aws-types]
 8138  10359   
path = "../aws-types"
 8139  10360   
version = "1.3.8"
 8140  10361   
 8141  10362   
[dependencies.bytes]
 8142  10363   
version = "1.4.0"
 8143  10364   
 8144  10365   
[dependencies.fastrand]
 8145  10366   
version = "2.0.0"
 8146  10367   
 8147  10368   
[dependencies.http]
 8148  10369   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 8149  10370   
index 8871cab..ed88de6 100644
 8150         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
       10371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 8151  10372   
@@ -1,61 +1,61 @@
 8152  10373   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8153  10374   
[package]
 8154  10375   
name = "aws-sdk-codecatalyst"
 8155  10376   
version = "0.0.0-local"
 8156  10377   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8157  10378   
description = "AWS SDK for Amazon CodeCatalyst"
 8158  10379   
edition = "2021"
 8159  10380   
license = "Apache-2.0"
 8160  10381   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8161  10382   
rust-version = "1.86.0"
 8162  10383   
readme = "README.md"
 8163  10384   
[package.metadata.smithy]
 8164  10385   
codegen-version = "ci"
 8165  10386   
[package.metadata.docs.rs]
 8166  10387   
all-features = true
 8167  10388   
targets = ["x86_64-unknown-linux-gnu"]
 8168  10389   
[dependencies.aws-credential-types]
 8169  10390   
path = "../aws-credential-types"
 8170  10391   
version = "1.2.4"
 8171  10392   
 8172  10393   
[dependencies.aws-runtime]
 8173  10394   
path = "../aws-runtime"
 8174  10395   
version = "1.5.9"
 8175  10396   
 8176  10397   
[dependencies.aws-smithy-async]
 8177  10398   
path = "../aws-smithy-async"
 8178  10399   
version = "1.2.5"
 8179  10400   
 8180  10401   
[dependencies.aws-smithy-http]
 8181  10402   
path = "../aws-smithy-http"
 8182         -
version = "0.62.2"
       10403  +
version = "0.62.3"
 8183  10404   
 8184  10405   
[dependencies.aws-smithy-json]
 8185  10406   
path = "../aws-smithy-json"
 8186  10407   
version = "0.61.4"
 8187  10408   
 8188  10409   
[dependencies.aws-smithy-runtime]
 8189  10410   
path = "../aws-smithy-runtime"
 8190  10411   
features = ["client", "http-auth"]
 8191  10412   
version = "1.8.5"
 8192  10413   
 8193  10414   
[dependencies.aws-smithy-runtime-api]
 8194  10415   
path = "../aws-smithy-runtime-api"
 8195  10416   
features = ["client", "http-02x", "http-auth"]
 8196  10417   
version = "1.8.5"
 8197  10418   
 8198  10419   
[dependencies.aws-smithy-types]
 8199  10420   
path = "../aws-smithy-types"
 8200  10421   
version = "1.3.2"
 8201  10422   
 8202  10423   
[dependencies.aws-types]
 8203  10424   
path = "../aws-types"
 8204  10425   
version = "1.3.8"
 8205  10426   
 8206  10427   
[dependencies.bytes]
 8207  10428   
version = "1.4.0"
 8208  10429   
 8209  10430   
[dependencies.fastrand]
 8210  10431   
version = "2.0.0"
 8211  10432   
 8212  10433   
[dependencies.http]
 8213  10434   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 8214  10435   
index 89573ff..05238af 100644
 8215         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
       10436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 8216  10437   
@@ -1,61 +1,61 @@
 8217  10438   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8218  10439   
[package]
 8219  10440   
name = "aws-sdk-config"
 8220  10441   
version = "0.0.0-local"
 8221  10442   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8222  10443   
description = "AWS SDK for AWS Config"
 8223  10444   
edition = "2021"
 8224  10445   
license = "Apache-2.0"
 8225  10446   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8226  10447   
rust-version = "1.86.0"
 8227  10448   
readme = "README.md"
 8228  10449   
[package.metadata.smithy]
 8229  10450   
codegen-version = "ci"
 8230  10451   
[package.metadata.docs.rs]
 8231  10452   
all-features = true
 8232  10453   
targets = ["x86_64-unknown-linux-gnu"]
 8233  10454   
[dependencies.aws-credential-types]
 8234  10455   
path = "../aws-credential-types"
 8235  10456   
version = "1.2.4"
 8236  10457   
 8237  10458   
[dependencies.aws-runtime]
 8238  10459   
path = "../aws-runtime"
 8239  10460   
version = "1.5.9"
 8240  10461   
 8241  10462   
[dependencies.aws-smithy-async]
 8242  10463   
path = "../aws-smithy-async"
 8243  10464   
version = "1.2.5"
 8244  10465   
 8245  10466   
[dependencies.aws-smithy-http]
 8246  10467   
path = "../aws-smithy-http"
 8247         -
version = "0.62.2"
       10468  +
version = "0.62.3"
 8248  10469   
 8249  10470   
[dependencies.aws-smithy-json]
 8250  10471   
path = "../aws-smithy-json"
 8251  10472   
version = "0.61.4"
 8252  10473   
 8253  10474   
[dependencies.aws-smithy-runtime]
 8254  10475   
path = "../aws-smithy-runtime"
 8255  10476   
features = ["client"]
 8256  10477   
version = "1.8.5"
 8257  10478   
 8258  10479   
[dependencies.aws-smithy-runtime-api]
 8259  10480   
path = "../aws-smithy-runtime-api"
 8260  10481   
features = ["client", "http-02x"]
 8261  10482   
version = "1.8.5"
 8262  10483   
 8263  10484   
[dependencies.aws-smithy-types]
 8264  10485   
path = "../aws-smithy-types"
 8265  10486   
version = "1.3.2"
 8266  10487   
 8267  10488   
[dependencies.aws-types]
 8268  10489   
path = "../aws-types"
 8269  10490   
version = "1.3.8"
 8270  10491   
 8271  10492   
[dependencies.bytes]
 8272  10493   
version = "1.4.0"
 8273  10494   
 8274  10495   
[dependencies.fastrand]
 8275  10496   
version = "2.0.0"
 8276  10497   
 8277  10498   
[dependencies.http]
 8278  10499   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8279  10500   
index d397c58..2c1062b 100644
 8280         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
       10501  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 8281  10502   
@@ -1,61 +1,61 @@
 8282  10503   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8283  10504   
[package]
 8284  10505   
name = "aws-sdk-dynamodb"
 8285  10506   
version = "0.0.0-local"
 8286  10507   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8287  10508   
description = "AWS SDK for Amazon DynamoDB"
 8288  10509   
edition = "2021"
 8289  10510   
license = "Apache-2.0"
 8290  10511   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8291  10512   
rust-version = "1.86.0"
 8292  10513   
readme = "README.md"
 8293  10514   
[package.metadata.smithy]
 8294  10515   
codegen-version = "ci"
 8295  10516   
[package.metadata.docs.rs]
 8296  10517   
all-features = true
 8297  10518   
targets = ["x86_64-unknown-linux-gnu"]
 8298  10519   
[dependencies.aws-credential-types]
 8299  10520   
path = "../aws-credential-types"
 8300  10521   
version = "1.2.4"
 8301  10522   
 8302  10523   
[dependencies.aws-runtime]
 8303  10524   
path = "../aws-runtime"
 8304  10525   
version = "1.5.9"
 8305  10526   
 8306  10527   
[dependencies.aws-smithy-async]
 8307  10528   
path = "../aws-smithy-async"
 8308  10529   
version = "1.2.5"
 8309  10530   
 8310  10531   
[dependencies.aws-smithy-http]
 8311  10532   
path = "../aws-smithy-http"
 8312         -
version = "0.62.2"
       10533  +
version = "0.62.3"
 8313  10534   
 8314  10535   
[dependencies.aws-smithy-json]
 8315  10536   
path = "../aws-smithy-json"
 8316  10537   
version = "0.61.4"
 8317  10538   
 8318  10539   
[dependencies.aws-smithy-runtime]
 8319  10540   
path = "../aws-smithy-runtime"
 8320  10541   
features = ["client"]
 8321  10542   
version = "1.8.5"
 8322  10543   
 8323  10544   
[dependencies.aws-smithy-runtime-api]
 8324  10545   
path = "../aws-smithy-runtime-api"
 8325  10546   
features = ["client", "http-02x"]
 8326  10547   
version = "1.8.5"
 8327  10548   
 8328  10549   
[dependencies.aws-smithy-types]
 8329  10550   
path = "../aws-smithy-types"
 8330  10551   
version = "1.3.2"
 8331  10552   
 8332  10553   
[dependencies.aws-types]
 8333  10554   
path = "../aws-types"
 8334  10555   
version = "1.3.8"
 8335  10556   
 8336  10557   
[dependencies.bytes]
 8337  10558   
version = "1.4.0"
 8338  10559   
 8339  10560   
[dependencies.fastrand]
 8340  10561   
version = "2.0.0"
 8341  10562   
 8342  10563   
[dependencies.http]
 8343  10564   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8344  10565   
index c0ba315..46168af 100644
 8345         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
       10566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 8346  10567   
@@ -1,61 +1,61 @@
 8347  10568   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8348  10569   
[package]
 8349  10570   
name = "aws-sdk-ec2"
 8350  10571   
version = "0.0.0-local"
 8351  10572   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8352  10573   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 8353  10574   
edition = "2021"
 8354  10575   
license = "Apache-2.0"
 8355  10576   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8356  10577   
rust-version = "1.86.0"
 8357  10578   
readme = "README.md"
 8358  10579   
[package.metadata.smithy]
 8359  10580   
codegen-version = "ci"
 8360  10581   
[package.metadata.docs.rs]
 8361  10582   
all-features = true
 8362  10583   
targets = ["x86_64-unknown-linux-gnu"]
 8363  10584   
[dependencies.aws-credential-types]
 8364  10585   
path = "../aws-credential-types"
 8365  10586   
version = "1.2.4"
 8366  10587   
 8367  10588   
[dependencies.aws-runtime]
 8368  10589   
path = "../aws-runtime"
 8369  10590   
version = "1.5.9"
 8370  10591   
 8371  10592   
[dependencies.aws-smithy-async]
 8372  10593   
path = "../aws-smithy-async"
 8373  10594   
version = "1.2.5"
 8374  10595   
 8375  10596   
[dependencies.aws-smithy-http]
 8376  10597   
path = "../aws-smithy-http"
 8377         -
version = "0.62.2"
       10598  +
version = "0.62.3"
 8378  10599   
 8379  10600   
[dependencies.aws-smithy-json]
 8380  10601   
path = "../aws-smithy-json"
 8381  10602   
version = "0.61.4"
 8382  10603   
 8383  10604   
[dependencies.aws-smithy-query]
 8384  10605   
path = "../aws-smithy-query"
 8385  10606   
version = "0.60.7"
 8386  10607   
 8387  10608   
[dependencies.aws-smithy-runtime]
 8388  10609   
path = "../aws-smithy-runtime"
 8389  10610   
features = ["client"]
 8390  10611   
version = "1.8.5"
 8391  10612   
 8392  10613   
[dependencies.aws-smithy-runtime-api]
 8393  10614   
path = "../aws-smithy-runtime-api"
 8394  10615   
features = ["client", "http-02x"]
 8395  10616   
version = "1.8.5"
 8396  10617   
 8397  10618   
[dependencies.aws-smithy-types]
 8398  10619   
path = "../aws-smithy-types"
 8399  10620   
version = "1.3.2"
 8400  10621   
 8401  10622   
[dependencies.aws-smithy-xml]
 8402  10623   
path = "../aws-smithy-xml"
 8403  10624   
version = "0.60.10"
 8404  10625   
 8405  10626   
[dependencies.aws-types]
 8406  10627   
path = "../aws-types"
 8407  10628   
version = "1.3.8"
 8408  10629   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8409  10630   
index 4474d17..095d40e 100644
 8410         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
       10631  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 8411  10632   
@@ -1,61 +1,61 @@
 8412  10633   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8413  10634   
[package]
 8414  10635   
name = "aws-sdk-ecs"
 8415  10636   
version = "0.0.0-local"
 8416  10637   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8417  10638   
description = "AWS SDK for Amazon EC2 Container Service"
 8418  10639   
edition = "2021"
 8419  10640   
license = "Apache-2.0"
 8420  10641   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8421  10642   
rust-version = "1.86.0"
 8422  10643   
readme = "README.md"
 8423  10644   
[package.metadata.smithy]
 8424  10645   
codegen-version = "ci"
 8425  10646   
[package.metadata.docs.rs]
 8426  10647   
all-features = true
 8427  10648   
targets = ["x86_64-unknown-linux-gnu"]
 8428  10649   
[dependencies.aws-credential-types]
 8429  10650   
path = "../aws-credential-types"
 8430  10651   
version = "1.2.4"
 8431  10652   
 8432  10653   
[dependencies.aws-runtime]
 8433  10654   
path = "../aws-runtime"
 8434  10655   
version = "1.5.9"
 8435  10656   
 8436  10657   
[dependencies.aws-smithy-async]
 8437  10658   
path = "../aws-smithy-async"
 8438  10659   
version = "1.2.5"
 8439  10660   
 8440  10661   
[dependencies.aws-smithy-http]
 8441  10662   
path = "../aws-smithy-http"
 8442         -
version = "0.62.2"
       10663  +
version = "0.62.3"
 8443  10664   
 8444  10665   
[dependencies.aws-smithy-json]
 8445  10666   
path = "../aws-smithy-json"
 8446  10667   
version = "0.61.4"
 8447  10668   
 8448  10669   
[dependencies.aws-smithy-runtime]
 8449  10670   
path = "../aws-smithy-runtime"
 8450  10671   
features = ["client"]
 8451  10672   
version = "1.8.5"
 8452  10673   
 8453  10674   
[dependencies.aws-smithy-runtime-api]
 8454  10675   
path = "../aws-smithy-runtime-api"
 8455  10676   
features = ["client", "http-02x"]
 8456  10677   
version = "1.8.5"
 8457  10678   
 8458  10679   
[dependencies.aws-smithy-types]
 8459  10680   
path = "../aws-smithy-types"
 8460  10681   
version = "1.3.2"
 8461  10682   
 8462  10683   
[dependencies.aws-types]
 8463  10684   
path = "../aws-types"
 8464  10685   
version = "1.3.8"
 8465  10686   
 8466  10687   
[dependencies.bytes]
 8467  10688   
version = "1.4.0"
 8468  10689   
 8469  10690   
[dependencies.fastrand]
 8470  10691   
version = "2.0.0"
 8471  10692   
 8472  10693   
[dependencies.http]
 8473  10694   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8474  10695   
index 15b1d77..16d7d89 100644
 8475         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
       10696  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 8476  10697   
@@ -1,65 +1,65 @@
 8477  10698   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8478  10699   
[package]
 8479  10700   
name = "aws-sdk-glacier"
 8480  10701   
version = "0.0.0-local"
 8481  10702   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8482  10703   
description = "AWS SDK for Amazon Glacier"
 8483  10704   
edition = "2021"
 8484  10705   
license = "Apache-2.0"
 8485  10706   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8486  10707   
rust-version = "1.86.0"
 8487  10708   
readme = "README.md"
 8488  10709   
[package.metadata.smithy]
 8489  10710   
codegen-version = "ci"
 8490  10711   
[package.metadata.docs.rs]
 8491  10712   
all-features = true
 8492  10713   
targets = ["x86_64-unknown-linux-gnu"]
 8493  10714   
[dependencies.aws-credential-types]
 8494  10715   
path = "../aws-credential-types"
 8495  10716   
version = "1.2.4"
 8496  10717   
 8497  10718   
[dependencies.aws-runtime]
 8498  10719   
path = "../aws-runtime"
 8499  10720   
version = "1.5.9"
 8500  10721   
 8501  10722   
[dependencies.aws-sigv4]
 8502  10723   
path = "../aws-sigv4"
 8503         -
version = "1.3.3"
       10724  +
version = "1.3.4"
 8504  10725   
 8505  10726   
[dependencies.aws-smithy-async]
 8506  10727   
path = "../aws-smithy-async"
 8507  10728   
version = "1.2.5"
 8508  10729   
 8509  10730   
[dependencies.aws-smithy-http]
 8510  10731   
path = "../aws-smithy-http"
 8511         -
version = "0.62.2"
       10732  +
version = "0.62.3"
 8512  10733   
 8513  10734   
[dependencies.aws-smithy-json]
 8514  10735   
path = "../aws-smithy-json"
 8515  10736   
version = "0.61.4"
 8516  10737   
 8517  10738   
[dependencies.aws-smithy-runtime]
 8518  10739   
path = "../aws-smithy-runtime"
 8519  10740   
features = ["client"]
 8520  10741   
version = "1.8.5"
 8521  10742   
 8522  10743   
[dependencies.aws-smithy-runtime-api]
 8523  10744   
path = "../aws-smithy-runtime-api"
 8524  10745   
features = ["client", "http-02x"]
 8525  10746   
version = "1.8.5"
 8526  10747   
 8527  10748   
[dependencies.aws-smithy-types]
 8528  10749   
path = "../aws-smithy-types"
 8529  10750   
version = "1.3.2"
 8530  10751   
 8531  10752   
[dependencies.aws-types]
 8532  10753   
path = "../aws-types"
 8533  10754   
version = "1.3.8"
 8534  10755   
 8535  10756   
[dependencies.bytes]
 8536  10757   
version = "1.4.0"
 8537  10758   
 8538  10759   
[dependencies.fastrand]
 8539  10760   
version = "2.0.0"
 8540  10761   
 8541  10762   
[dependencies.hex]
 8542  10763   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8543  10764   
index d718a3a..65e6f24 100644
 8544         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
       10765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 8545  10766   
@@ -1,61 +1,61 @@
 8546  10767   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8547  10768   
[package]
 8548  10769   
name = "aws-sdk-iam"
 8549  10770   
version = "0.0.0-local"
 8550  10771   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8551  10772   
description = "AWS SDK for AWS Identity and Access Management"
 8552  10773   
edition = "2021"
 8553  10774   
license = "Apache-2.0"
 8554  10775   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8555  10776   
rust-version = "1.86.0"
 8556  10777   
readme = "README.md"
 8557  10778   
[package.metadata.smithy]
 8558  10779   
codegen-version = "ci"
 8559  10780   
[package.metadata.docs.rs]
 8560  10781   
all-features = true
 8561  10782   
targets = ["x86_64-unknown-linux-gnu"]
 8562  10783   
[dependencies.aws-credential-types]
 8563  10784   
path = "../aws-credential-types"
 8564  10785   
version = "1.2.4"
 8565  10786   
 8566  10787   
[dependencies.aws-runtime]
 8567  10788   
path = "../aws-runtime"
 8568  10789   
version = "1.5.9"
 8569  10790   
 8570  10791   
[dependencies.aws-smithy-async]
 8571  10792   
path = "../aws-smithy-async"
 8572  10793   
version = "1.2.5"
 8573  10794   
 8574  10795   
[dependencies.aws-smithy-http]
 8575  10796   
path = "../aws-smithy-http"
 8576         -
version = "0.62.2"
       10797  +
version = "0.62.3"
 8577  10798   
 8578  10799   
[dependencies.aws-smithy-json]
 8579  10800   
path = "../aws-smithy-json"
 8580  10801   
version = "0.61.4"
 8581  10802   
 8582  10803   
[dependencies.aws-smithy-query]
 8583  10804   
path = "../aws-smithy-query"
 8584  10805   
version = "0.60.7"
 8585  10806   
 8586  10807   
[dependencies.aws-smithy-runtime]
 8587  10808   
path = "../aws-smithy-runtime"
 8588  10809   
features = ["client"]
 8589  10810   
version = "1.8.5"
 8590  10811   
 8591  10812   
[dependencies.aws-smithy-runtime-api]
 8592  10813   
path = "../aws-smithy-runtime-api"
 8593  10814   
features = ["client", "http-02x"]
 8594  10815   
version = "1.8.5"
 8595  10816   
 8596  10817   
[dependencies.aws-smithy-types]
 8597  10818   
path = "../aws-smithy-types"
 8598  10819   
version = "1.3.2"
 8599  10820   
 8600  10821   
[dependencies.aws-smithy-xml]
 8601  10822   
path = "../aws-smithy-xml"
 8602  10823   
version = "0.60.10"
 8603  10824   
 8604  10825   
[dependencies.aws-types]
 8605  10826   
path = "../aws-types"
 8606  10827   
version = "1.3.8"
 8607  10828   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8608  10829   
index 0ed4302..3d828a5 100644
 8609         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
       10830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 8610  10831   
@@ -1,61 +1,61 @@
 8611  10832   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8612  10833   
[package]
 8613  10834   
name = "aws-sdk-kms"
 8614  10835   
version = "0.0.0-local"
 8615  10836   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8616  10837   
description = "AWS SDK for AWS Key Management Service"
 8617  10838   
edition = "2021"
 8618  10839   
license = "Apache-2.0"
 8619  10840   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8620  10841   
rust-version = "1.86.0"
 8621  10842   
readme = "README.md"
 8622  10843   
[package.metadata.smithy]
 8623  10844   
codegen-version = "ci"
 8624  10845   
[package.metadata.docs.rs]
 8625  10846   
all-features = true
 8626  10847   
targets = ["x86_64-unknown-linux-gnu"]
 8627  10848   
[dependencies.aws-credential-types]
 8628  10849   
path = "../aws-credential-types"
 8629  10850   
version = "1.2.4"
 8630  10851   
 8631  10852   
[dependencies.aws-runtime]
 8632  10853   
path = "../aws-runtime"
 8633  10854   
version = "1.5.9"
 8634  10855   
 8635  10856   
[dependencies.aws-smithy-async]
 8636  10857   
path = "../aws-smithy-async"
 8637  10858   
version = "1.2.5"
 8638  10859   
 8639  10860   
[dependencies.aws-smithy-http]
 8640  10861   
path = "../aws-smithy-http"
 8641         -
version = "0.62.2"
       10862  +
version = "0.62.3"
 8642  10863   
 8643  10864   
[dependencies.aws-smithy-json]
 8644  10865   
path = "../aws-smithy-json"
 8645  10866   
version = "0.61.4"
 8646  10867   
 8647  10868   
[dependencies.aws-smithy-runtime]
 8648  10869   
path = "../aws-smithy-runtime"
 8649  10870   
features = ["client"]
 8650  10871   
version = "1.8.5"
 8651  10872   
 8652  10873   
[dependencies.aws-smithy-runtime-api]
 8653  10874   
path = "../aws-smithy-runtime-api"
 8654  10875   
features = ["client", "http-02x"]
 8655  10876   
version = "1.8.5"
 8656  10877   
 8657  10878   
[dependencies.aws-smithy-types]
 8658  10879   
path = "../aws-smithy-types"
 8659  10880   
version = "1.3.2"
 8660  10881   
 8661  10882   
[dependencies.aws-types]
 8662  10883   
path = "../aws-types"
 8663  10884   
version = "1.3.8"
 8664  10885   
 8665  10886   
[dependencies.bytes]
 8666  10887   
version = "1.4.0"
 8667  10888   
 8668  10889   
[dependencies.fastrand]
 8669  10890   
version = "2.0.0"
 8670  10891   
 8671  10892   
[dependencies.http]
 8672  10893   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8673  10894   
index 6518dfc..6b94752 100644
 8674         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
       10895  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 8675  10896   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 8676  10897   
edition = "2021"
 8677  10898   
license = "Apache-2.0"
 8678  10899   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8679  10900   
rust-version = "1.86.0"
 8680  10901   
readme = "README.md"
 8681  10902   
[package.metadata.smithy]
 8682  10903   
codegen-version = "ci"
 8683  10904   
[package.metadata.docs.rs]
 8684  10905   
all-features = true
 8685  10906   
targets = ["x86_64-unknown-linux-gnu"]
 8686  10907   
[dependencies.aws-credential-types]
 8687  10908   
path = "../aws-credential-types"
 8688  10909   
version = "1.2.4"
 8689  10910   
 8690  10911   
[dependencies.aws-runtime]
 8691  10912   
path = "../aws-runtime"
 8692  10913   
features = ["event-stream"]
 8693  10914   
version = "1.5.9"
 8694  10915   
 8695  10916   
[dependencies.aws-smithy-async]
 8696  10917   
path = "../aws-smithy-async"
 8697  10918   
version = "1.2.5"
 8698  10919   
 8699  10920   
[dependencies.aws-smithy-eventstream]
 8700  10921   
path = "../aws-smithy-eventstream"
 8701  10922   
version = "0.60.10"
 8702  10923   
 8703  10924   
[dependencies.aws-smithy-http]
 8704  10925   
path = "../aws-smithy-http"
 8705  10926   
features = ["event-stream"]
 8706         -
version = "0.62.2"
       10927  +
version = "0.62.3"
 8707  10928   
 8708  10929   
[dependencies.aws-smithy-json]
 8709  10930   
path = "../aws-smithy-json"
 8710  10931   
version = "0.61.4"
 8711  10932   
 8712  10933   
[dependencies.aws-smithy-runtime]
 8713  10934   
path = "../aws-smithy-runtime"
 8714  10935   
features = ["client"]
 8715  10936   
version = "1.8.5"
 8716  10937   
 8717  10938   
[dependencies.aws-smithy-runtime-api]
 8718  10939   
path = "../aws-smithy-runtime-api"
 8719  10940   
features = ["client", "http-02x"]
 8720  10941   
version = "1.8.5"
 8721  10942   
 8722  10943   
[dependencies.aws-smithy-types]
 8723  10944   
path = "../aws-smithy-types"
 8724  10945   
version = "1.3.2"
 8725  10946   
 8726  10947   
[dependencies.aws-types]
 8727  10948   
path = "../aws-types"
 8728  10949   
version = "1.3.8"
 8729  10950   
 8730  10951   
[dependencies.bytes]
 8731  10952   
version = "1.4.0"
 8732  10953   
 8733  10954   
[dependencies.fastrand]
 8734  10955   
version = "2.0.0"
 8735  10956   
 8736  10957   
[dependencies.http]
 8737  10958   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8738  10959   
index dabb0e0..34cbc15 100644
 8739         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
       10960  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 8740  10961   
@@ -1,65 +1,65 @@
 8741  10962   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8742  10963   
[package]
 8743  10964   
name = "aws-sdk-polly"
 8744  10965   
version = "0.0.0-local"
 8745  10966   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8746  10967   
description = "AWS SDK for Amazon Polly"
 8747  10968   
edition = "2021"
 8748  10969   
license = "Apache-2.0"
 8749  10970   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8750  10971   
rust-version = "1.86.0"
 8751  10972   
readme = "README.md"
 8752  10973   
[package.metadata.smithy]
 8753  10974   
codegen-version = "ci"
 8754  10975   
[package.metadata.docs.rs]
 8755  10976   
all-features = true
 8756  10977   
targets = ["x86_64-unknown-linux-gnu"]
 8757  10978   
[dependencies.aws-credential-types]
 8758  10979   
path = "../aws-credential-types"
 8759  10980   
version = "1.2.4"
 8760  10981   
 8761  10982   
[dependencies.aws-runtime]
 8762  10983   
path = "../aws-runtime"
 8763  10984   
version = "1.5.9"
 8764  10985   
 8765  10986   
[dependencies.aws-sigv4]
 8766  10987   
path = "../aws-sigv4"
 8767         -
version = "1.3.3"
       10988  +
version = "1.3.4"
 8768  10989   
 8769  10990   
[dependencies.aws-smithy-async]
 8770  10991   
path = "../aws-smithy-async"
 8771  10992   
version = "1.2.5"
 8772  10993   
 8773  10994   
[dependencies.aws-smithy-http]
 8774  10995   
path = "../aws-smithy-http"
 8775         -
version = "0.62.2"
       10996  +
version = "0.62.3"
 8776  10997   
 8777  10998   
[dependencies.aws-smithy-json]
 8778  10999   
path = "../aws-smithy-json"
 8779  11000   
version = "0.61.4"
 8780  11001   
 8781  11002   
[dependencies.aws-smithy-runtime]
 8782  11003   
path = "../aws-smithy-runtime"
 8783  11004   
features = ["client"]
 8784  11005   
version = "1.8.5"
 8785  11006   
 8786  11007   
[dependencies.aws-smithy-runtime-api]
 8787  11008   
path = "../aws-smithy-runtime-api"
 8788  11009   
features = ["client", "http-02x"]
 8789  11010   
version = "1.8.5"
 8790  11011   
 8791  11012   
[dependencies.aws-smithy-types]
 8792  11013   
path = "../aws-smithy-types"
 8793  11014   
version = "1.3.2"
 8794  11015   
 8795  11016   
[dependencies.aws-types]
 8796  11017   
path = "../aws-types"
 8797  11018   
version = "1.3.8"
 8798  11019   
 8799  11020   
[dependencies.bytes]
 8800  11021   
version = "1.4.0"
 8801  11022   
 8802  11023   
[dependencies.fastrand]
 8803  11024   
version = "2.0.0"
 8804  11025   
 8805  11026   
[dependencies.http]
 8806  11027   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8807  11028   
index a884716..f3d8713 100644
 8808         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
       11029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 8809  11030   
@@ -1,61 +1,61 @@
 8810  11031   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8811  11032   
[package]
 8812  11033   
name = "aws-sdk-qldbsession"
 8813  11034   
version = "0.0.0-local"
 8814  11035   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8815  11036   
description = "AWS SDK for Amazon QLDB Session"
 8816  11037   
edition = "2021"
 8817  11038   
license = "Apache-2.0"
 8818  11039   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8819  11040   
rust-version = "1.86.0"
 8820  11041   
readme = "README.md"
 8821  11042   
[package.metadata.smithy]
 8822  11043   
codegen-version = "ci"
 8823  11044   
[package.metadata.docs.rs]
 8824  11045   
all-features = true
 8825  11046   
targets = ["x86_64-unknown-linux-gnu"]
 8826  11047   
[dependencies.aws-credential-types]
 8827  11048   
path = "../aws-credential-types"
 8828  11049   
version = "1.2.4"
 8829  11050   
 8830  11051   
[dependencies.aws-runtime]
 8831  11052   
path = "../aws-runtime"
 8832  11053   
version = "1.5.9"
 8833  11054   
 8834  11055   
[dependencies.aws-smithy-async]
 8835  11056   
path = "../aws-smithy-async"
 8836  11057   
version = "1.2.5"
 8837  11058   
 8838  11059   
[dependencies.aws-smithy-http]
 8839  11060   
path = "../aws-smithy-http"
 8840         -
version = "0.62.2"
       11061  +
version = "0.62.3"
 8841  11062   
 8842  11063   
[dependencies.aws-smithy-json]
 8843  11064   
path = "../aws-smithy-json"
 8844  11065   
version = "0.61.4"
 8845  11066   
 8846  11067   
[dependencies.aws-smithy-runtime]
 8847  11068   
path = "../aws-smithy-runtime"
 8848  11069   
features = ["client"]
 8849  11070   
version = "1.8.5"
 8850  11071   
 8851  11072   
[dependencies.aws-smithy-runtime-api]
 8852  11073   
path = "../aws-smithy-runtime-api"
 8853  11074   
features = ["client", "http-02x"]
 8854  11075   
version = "1.8.5"
 8855  11076   
 8856  11077   
[dependencies.aws-smithy-types]
 8857  11078   
path = "../aws-smithy-types"
 8858  11079   
version = "1.3.2"
 8859  11080   
 8860  11081   
[dependencies.aws-types]
 8861  11082   
path = "../aws-types"
 8862  11083   
version = "1.3.8"
 8863  11084   
 8864  11085   
[dependencies.bytes]
 8865  11086   
version = "1.4.0"
 8866  11087   
 8867  11088   
[dependencies.fastrand]
 8868  11089   
version = "2.0.0"
 8869  11090   
 8870  11091   
[dependencies.http]
 8871  11092   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8872  11093   
index 32a7dc9..a2c752d 100644
 8873         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
       11094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 8874  11095   
@@ -1,61 +1,61 @@
 8875  11096   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8876  11097   
[package]
 8877  11098   
name = "aws-sdk-route53"
 8878  11099   
version = "0.0.0-local"
 8879  11100   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8880  11101   
description = "AWS SDK for Amazon Route 53"
 8881  11102   
edition = "2021"
 8882  11103   
license = "Apache-2.0"
 8883  11104   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8884  11105   
rust-version = "1.86.0"
 8885  11106   
readme = "README.md"
 8886  11107   
[package.metadata.smithy]
 8887  11108   
codegen-version = "ci"
 8888  11109   
[package.metadata.docs.rs]
 8889  11110   
all-features = true
 8890  11111   
targets = ["x86_64-unknown-linux-gnu"]
 8891  11112   
[dependencies.aws-credential-types]
 8892  11113   
path = "../aws-credential-types"
 8893  11114   
version = "1.2.4"
 8894  11115   
 8895  11116   
[dependencies.aws-runtime]
 8896  11117   
path = "../aws-runtime"
 8897  11118   
version = "1.5.9"
 8898  11119   
 8899  11120   
[dependencies.aws-smithy-async]
 8900  11121   
path = "../aws-smithy-async"
 8901  11122   
version = "1.2.5"
 8902  11123   
 8903  11124   
[dependencies.aws-smithy-http]
 8904  11125   
path = "../aws-smithy-http"
 8905         -
version = "0.62.2"
       11126  +
version = "0.62.3"
 8906  11127   
 8907  11128   
[dependencies.aws-smithy-json]
 8908  11129   
path = "../aws-smithy-json"
 8909  11130   
version = "0.61.4"
 8910  11131   
 8911  11132   
[dependencies.aws-smithy-runtime]
 8912  11133   
path = "../aws-smithy-runtime"
 8913  11134   
features = ["client"]
 8914  11135   
version = "1.8.5"
 8915  11136   
 8916  11137   
[dependencies.aws-smithy-runtime-api]
 8917  11138   
path = "../aws-smithy-runtime-api"
 8918  11139   
features = ["client", "http-02x"]
 8919  11140   
version = "1.8.5"
 8920  11141   
 8921  11142   
[dependencies.aws-smithy-types]
 8922  11143   
path = "../aws-smithy-types"
 8923  11144   
version = "1.3.2"
 8924  11145   
 8925  11146   
[dependencies.aws-smithy-xml]
 8926  11147   
path = "../aws-smithy-xml"
 8927  11148   
version = "0.60.10"
 8928  11149   
 8929  11150   
[dependencies.aws-types]
 8930  11151   
path = "../aws-types"
 8931  11152   
version = "1.3.8"
 8932  11153   
 8933  11154   
[dependencies.fastrand]
 8934  11155   
version = "2.0.0"
 8935  11156   
 8936  11157   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8937  11158   
index f65e261..2f6bec0 100644
 8938         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       11159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 8939  11160   
@@ -1,75 +1,75 @@
 8940  11161   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8941  11162   
[package]
 8942  11163   
name = "aws-sdk-s3"
 8943  11164   
version = "0.0.0-local"
 8944  11165   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8945  11166   
description = "AWS SDK for Amazon Simple Storage Service"
 8946  11167   
edition = "2021"
 8947  11168   
license = "Apache-2.0"
 8948  11169   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8949  11170   
rust-version = "1.86.0"
 8950  11171   
readme = "README.md"
 8951  11172   
[package.metadata.smithy]
 8952  11173   
codegen-version = "ci"
 8953  11174   
[package.metadata.docs.rs]
 8954  11175   
all-features = true
 8955  11176   
targets = ["x86_64-unknown-linux-gnu"]
 8956  11177   
[dependencies.aws-credential-types]
 8957  11178   
path = "../aws-credential-types"
 8958  11179   
version = "1.2.4"
 8959  11180   
 8960  11181   
[dependencies.aws-runtime]
 8961  11182   
path = "../aws-runtime"
 8962  11183   
features = ["event-stream", "http-02x"]
 8963  11184   
version = "1.5.9"
 8964  11185   
 8965  11186   
[dependencies.aws-sigv4]
 8966  11187   
path = "../aws-sigv4"
 8967         -
version = "1.3.3"
       11188  +
version = "1.3.4"
 8968  11189   
 8969  11190   
[dependencies.aws-smithy-async]
 8970  11191   
path = "../aws-smithy-async"
 8971  11192   
version = "1.2.5"
 8972  11193   
 8973  11194   
[dependencies.aws-smithy-checksums]
 8974  11195   
path = "../aws-smithy-checksums"
 8975  11196   
version = "0.63.5"
 8976  11197   
 8977  11198   
[dependencies.aws-smithy-eventstream]
 8978  11199   
path = "../aws-smithy-eventstream"
 8979  11200   
version = "0.60.10"
 8980  11201   
 8981  11202   
[dependencies.aws-smithy-http]
 8982  11203   
path = "../aws-smithy-http"
 8983  11204   
features = ["event-stream"]
 8984         -
version = "0.62.2"
       11205  +
version = "0.62.3"
 8985  11206   
 8986  11207   
[dependencies.aws-smithy-json]
 8987  11208   
path = "../aws-smithy-json"
 8988  11209   
version = "0.61.4"
 8989  11210   
 8990  11211   
[dependencies.aws-smithy-runtime]
 8991  11212   
path = "../aws-smithy-runtime"
 8992  11213   
features = ["client"]
 8993  11214   
version = "1.8.5"
 8994  11215   
 8995  11216   
[dependencies.aws-smithy-runtime-api]
 8996  11217   
path = "../aws-smithy-runtime-api"
 8997  11218   
features = ["client", "http-02x"]
 8998  11219   
version = "1.8.5"
 8999  11220   
 9000  11221   
[dependencies.aws-smithy-types]
 9001  11222   
path = "../aws-smithy-types"
 9002  11223   
version = "1.3.2"
 9003  11224   
 9004  11225   
[dependencies.aws-smithy-xml]
 9005  11226   
path = "../aws-smithy-xml"
 9006  11227   
version = "0.60.10"
 9007  11228   
 9008  11229   
[dependencies.aws-types]
 9009  11230   
path = "../aws-types"
 9010  11231   
version = "1.3.8"
 9011  11232   
 9012  11233   
[dependencies.bytes]
 9013  11234   
version = "1.4.0"
 9014  11235   
 9015  11236   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 9016  11237   
index b4d1cdd..861c0cc 100644
 9017         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       11238  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 9018  11239   
@@ -1,61 +1,61 @@
 9019  11240   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9020  11241   
[package]
 9021  11242   
name = "aws-sdk-s3control"
 9022  11243   
version = "0.0.0-local"
 9023  11244   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9024  11245   
description = "AWS SDK for AWS S3 Control"
 9025  11246   
edition = "2021"
 9026  11247   
license = "Apache-2.0"
 9027  11248   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9028  11249   
rust-version = "1.86.0"
 9029  11250   
readme = "README.md"
 9030  11251   
[package.metadata.smithy]
 9031  11252   
codegen-version = "ci"
 9032  11253   
[package.metadata.docs.rs]
 9033  11254   
all-features = true
 9034  11255   
targets = ["x86_64-unknown-linux-gnu"]
 9035  11256   
[dependencies.aws-credential-types]
 9036  11257   
path = "../aws-credential-types"
 9037  11258   
version = "1.2.4"
 9038  11259   
 9039  11260   
[dependencies.aws-runtime]
 9040  11261   
path = "../aws-runtime"
 9041  11262   
version = "1.5.9"
 9042  11263   
 9043  11264   
[dependencies.aws-smithy-async]
 9044  11265   
path = "../aws-smithy-async"
 9045  11266   
version = "1.2.5"
 9046  11267   
 9047  11268   
[dependencies.aws-smithy-http]
 9048  11269   
path = "../aws-smithy-http"
 9049         -
version = "0.62.2"
       11270  +
version = "0.62.3"
 9050  11271   
 9051  11272   
[dependencies.aws-smithy-json]
 9052  11273   
path = "../aws-smithy-json"
 9053  11274   
version = "0.61.4"
 9054  11275   
 9055  11276   
[dependencies.aws-smithy-runtime]
 9056  11277   
path = "../aws-smithy-runtime"
 9057  11278   
features = ["client"]
 9058  11279   
version = "1.8.5"
 9059  11280   
 9060  11281   
[dependencies.aws-smithy-runtime-api]
 9061  11282   
path = "../aws-smithy-runtime-api"
 9062  11283   
features = ["client", "http-02x"]
 9063  11284   
version = "1.8.5"
 9064  11285   
 9065  11286   
[dependencies.aws-smithy-types]
 9066  11287   
path = "../aws-smithy-types"
 9067  11288   
version = "1.3.2"
 9068  11289   
 9069  11290   
[dependencies.aws-smithy-xml]
 9070  11291   
path = "../aws-smithy-xml"
 9071  11292   
version = "0.60.10"
 9072  11293   
 9073  11294   
[dependencies.aws-types]
 9074  11295   
path = "../aws-types"
 9075  11296   
version = "1.3.8"
 9076  11297   
 9077  11298   
[dependencies.fastrand]
 9078  11299   
version = "2.0.0"
 9079  11300   
 9080  11301   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 9081  11302   
index 2cde182..fc367f4 100644
 9082         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       11303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 9083  11304   
@@ -1,61 +1,61 @@
 9084  11305   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9085  11306   
[package]
 9086  11307   
name = "aws-sdk-sso"
 9087  11308   
version = "0.0.0-local"
 9088  11309   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9089  11310   
description = "AWS SDK for AWS Single Sign-On"
 9090  11311   
edition = "2021"
 9091  11312   
license = "Apache-2.0"
 9092  11313   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9093  11314   
rust-version = "1.86.0"
 9094  11315   
readme = "README.md"
 9095  11316   
[package.metadata.smithy]
 9096  11317   
codegen-version = "ci"
 9097  11318   
[package.metadata.docs.rs]
 9098  11319   
all-features = true
 9099  11320   
targets = ["x86_64-unknown-linux-gnu"]
 9100  11321   
[dependencies.aws-credential-types]
 9101  11322   
path = "../aws-credential-types"
 9102  11323   
version = "1.2.4"
 9103  11324   
 9104  11325   
[dependencies.aws-runtime]
 9105  11326   
path = "../aws-runtime"
 9106  11327   
version = "1.5.9"
 9107  11328   
 9108  11329   
[dependencies.aws-smithy-async]
 9109  11330   
path = "../aws-smithy-async"
 9110  11331   
version = "1.2.5"
 9111  11332   
 9112  11333   
[dependencies.aws-smithy-http]
 9113  11334   
path = "../aws-smithy-http"
 9114         -
version = "0.62.2"
       11335  +
version = "0.62.3"
 9115  11336   
 9116  11337   
[dependencies.aws-smithy-json]
 9117  11338   
path = "../aws-smithy-json"
 9118  11339   
version = "0.61.4"
 9119  11340   
 9120  11341   
[dependencies.aws-smithy-runtime]
 9121  11342   
path = "../aws-smithy-runtime"
 9122  11343   
features = ["client"]
 9123  11344   
version = "1.8.5"
 9124  11345   
 9125  11346   
[dependencies.aws-smithy-runtime-api]
 9126  11347   
path = "../aws-smithy-runtime-api"
 9127  11348   
features = ["client", "http-02x"]
 9128  11349   
version = "1.8.5"
 9129  11350   
 9130  11351   
[dependencies.aws-smithy-types]
 9131  11352   
path = "../aws-smithy-types"
 9132  11353   
version = "1.3.2"
 9133  11354   
 9134  11355   
[dependencies.aws-types]
 9135  11356   
path = "../aws-types"
 9136  11357   
version = "1.3.8"
 9137  11358   
 9138  11359   
[dependencies.bytes]
 9139  11360   
version = "1.4.0"
 9140  11361   
 9141  11362   
[dependencies.fastrand]
 9142  11363   
version = "2.0.0"
 9143  11364   
 9144  11365   
[dependencies.http]
 9145  11366   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 9146  11367   
index 7a34c16..588d0bd 100644
 9147         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       11368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 9148  11369   
@@ -1,61 +1,61 @@
 9149  11370   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9150  11371   
[package]
 9151  11372   
name = "aws-sdk-ssooidc"
 9152  11373   
version = "0.0.0-local"
 9153  11374   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9154  11375   
description = "AWS SDK for AWS SSO OIDC"
 9155  11376   
edition = "2021"
 9156  11377   
license = "Apache-2.0"
 9157  11378   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9158  11379   
rust-version = "1.86.0"
 9159  11380   
readme = "README.md"
 9160  11381   
[package.metadata.smithy]
 9161  11382   
codegen-version = "ci"
 9162  11383   
[package.metadata.docs.rs]
 9163  11384   
all-features = true
 9164  11385   
targets = ["x86_64-unknown-linux-gnu"]
 9165  11386   
[dependencies.aws-credential-types]
 9166  11387   
path = "../aws-credential-types"
 9167  11388   
version = "1.2.4"
 9168  11389   
 9169  11390   
[dependencies.aws-runtime]
 9170  11391   
path = "../aws-runtime"
 9171  11392   
version = "1.5.9"
 9172  11393   
 9173  11394   
[dependencies.aws-smithy-async]
 9174  11395   
path = "../aws-smithy-async"
 9175  11396   
version = "1.2.5"
 9176  11397   
 9177  11398   
[dependencies.aws-smithy-http]
 9178  11399   
path = "../aws-smithy-http"
 9179         -
version = "0.62.2"
       11400  +
version = "0.62.3"
 9180  11401   
 9181  11402   
[dependencies.aws-smithy-json]
 9182  11403   
path = "../aws-smithy-json"
 9183  11404   
version = "0.61.4"
 9184  11405   
 9185  11406   
[dependencies.aws-smithy-runtime]
 9186  11407   
path = "../aws-smithy-runtime"
 9187  11408   
features = ["client"]
 9188  11409   
version = "1.8.5"
 9189  11410   
 9190  11411   
[dependencies.aws-smithy-runtime-api]
 9191  11412   
path = "../aws-smithy-runtime-api"
 9192  11413   
features = ["client", "http-02x"]
 9193  11414   
version = "1.8.5"
 9194  11415   
 9195  11416   
[dependencies.aws-smithy-types]
 9196  11417   
path = "../aws-smithy-types"
 9197  11418   
version = "1.3.2"
 9198  11419   
 9199  11420   
[dependencies.aws-types]
 9200  11421   
path = "../aws-types"
 9201  11422   
version = "1.3.8"
 9202  11423   
 9203  11424   
[dependencies.bytes]
 9204  11425   
version = "1.4.0"
 9205  11426   
 9206  11427   
[dependencies.fastrand]
 9207  11428   
version = "2.0.0"
 9208  11429   
 9209  11430   
[dependencies.http]
 9210  11431   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 9211  11432   
index 895dfb3..f2ce34e 100644
 9212         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       11433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 9213  11434   
@@ -1,61 +1,61 @@
 9214  11435   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9215  11436   
[package]
 9216  11437   
name = "aws-sdk-sts"
 9217  11438   
version = "0.0.0-local"
 9218  11439   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9219  11440   
description = "AWS SDK for AWS Security Token Service"
 9220  11441   
edition = "2021"
 9221  11442   
license = "Apache-2.0"
 9222  11443   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9223  11444   
rust-version = "1.86.0"
 9224  11445   
readme = "README.md"
 9225  11446   
[package.metadata.smithy]
 9226  11447   
codegen-version = "ci"
 9227  11448   
[package.metadata.docs.rs]
 9228  11449   
all-features = true
 9229  11450   
targets = ["x86_64-unknown-linux-gnu"]
 9230  11451   
[dependencies.aws-credential-types]
 9231  11452   
path = "../aws-credential-types"
 9232  11453   
version = "1.2.4"
 9233  11454   
 9234  11455   
[dependencies.aws-runtime]
 9235  11456   
path = "../aws-runtime"
 9236  11457   
version = "1.5.9"
 9237  11458   
 9238  11459   
[dependencies.aws-smithy-async]
 9239  11460   
path = "../aws-smithy-async"
 9240  11461   
version = "1.2.5"
 9241  11462   
 9242  11463   
[dependencies.aws-smithy-http]
 9243  11464   
path = "../aws-smithy-http"
 9244         -
version = "0.62.2"
       11465  +
version = "0.62.3"
 9245  11466   
 9246  11467   
[dependencies.aws-smithy-json]
 9247  11468   
path = "../aws-smithy-json"
 9248  11469   
version = "0.61.4"
 9249  11470   
 9250  11471   
[dependencies.aws-smithy-query]
 9251  11472   
path = "../aws-smithy-query"
 9252  11473   
version = "0.60.7"
 9253  11474   
 9254  11475   
[dependencies.aws-smithy-runtime]
 9255  11476   
path = "../aws-smithy-runtime"
 9256  11477   
features = ["client"]
 9257  11478   
version = "1.8.5"
 9258  11479   
 9259  11480   
[dependencies.aws-smithy-runtime-api]
 9260  11481   
path = "../aws-smithy-runtime-api"
 9261  11482   
features = ["client", "http-02x"]
 9262  11483   
version = "1.8.5"
 9263  11484   
 9264  11485   
[dependencies.aws-smithy-types]
 9265  11486   
path = "../aws-smithy-types"
 9266  11487   
version = "1.3.2"
 9267  11488   
 9268  11489   
[dependencies.aws-smithy-xml]
 9269  11490   
path = "../aws-smithy-xml"
 9270  11491   
version = "0.60.10"
 9271  11492   
 9272  11493   
[dependencies.aws-types]
 9273  11494   
path = "../aws-types"
 9274  11495   
version = "1.3.8"
 9275  11496   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9276  11497   
index d556561..91178b6 100644
 9277         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       11498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 9278  11499   
@@ -1,61 +1,61 @@
 9279  11500   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9280  11501   
[package]
 9281  11502   
name = "aws-sdk-timestreamquery"
 9282  11503   
version = "0.0.0-local"
 9283  11504   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9284  11505   
description = "AWS SDK for Amazon Timestream Query"
 9285  11506   
edition = "2021"
 9286  11507   
license = "Apache-2.0"
 9287  11508   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9288  11509   
rust-version = "1.86.0"
 9289  11510   
readme = "README.md"
 9290  11511   
[package.metadata.smithy]
 9291  11512   
codegen-version = "ci"
 9292  11513   
[package.metadata.docs.rs]
 9293  11514   
all-features = true
 9294  11515   
targets = ["x86_64-unknown-linux-gnu"]
 9295  11516   
[dependencies.aws-credential-types]
 9296  11517   
path = "../aws-credential-types"
 9297  11518   
version = "1.2.4"
 9298  11519   
 9299  11520   
[dependencies.aws-runtime]
 9300  11521   
path = "../aws-runtime"
 9301  11522   
version = "1.5.9"
 9302  11523   
 9303  11524   
[dependencies.aws-smithy-async]
 9304  11525   
path = "../aws-smithy-async"
 9305  11526   
version = "1.2.5"
 9306  11527   
 9307  11528   
[dependencies.aws-smithy-http]
 9308  11529   
path = "../aws-smithy-http"
 9309         -
version = "0.62.2"
       11530  +
version = "0.62.3"
 9310  11531   
 9311  11532   
[dependencies.aws-smithy-json]
 9312  11533   
path = "../aws-smithy-json"
 9313  11534   
version = "0.61.4"
 9314  11535   
 9315  11536   
[dependencies.aws-smithy-runtime]
 9316  11537   
path = "../aws-smithy-runtime"
 9317  11538   
features = ["client"]
 9318  11539   
version = "1.8.5"
 9319  11540   
 9320  11541   
[dependencies.aws-smithy-runtime-api]
 9321  11542   
path = "../aws-smithy-runtime-api"
 9322  11543   
features = ["client", "http-02x"]
 9323  11544   
version = "1.8.5"
 9324  11545   
 9325  11546   
[dependencies.aws-smithy-types]
 9326  11547   
path = "../aws-smithy-types"
 9327  11548   
version = "1.3.2"
 9328  11549   
 9329  11550   
[dependencies.aws-types]
 9330  11551   
path = "../aws-types"
 9331  11552   
version = "1.3.8"
 9332  11553   
 9333  11554   
[dependencies.bytes]
 9334  11555   
version = "1.4.0"
 9335  11556   
 9336  11557   
[dependencies.fastrand]
 9337  11558   
version = "2.0.0"
 9338  11559   
 9339  11560   
[dependencies.http]
 9340  11561   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9341  11562   
index 0c56e4c..95731e3 100644
 9342         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       11563  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 9343  11564   
@@ -1,61 +1,61 @@
 9344  11565   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9345  11566   
[package]
 9346  11567   
name = "aws-sdk-timestreamwrite"
 9347  11568   
version = "0.0.0-local"
 9348  11569   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9349  11570   
description = "AWS SDK for Amazon Timestream Write"
 9350  11571   
edition = "2021"
 9351  11572   
license = "Apache-2.0"
 9352  11573   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9353  11574   
rust-version = "1.86.0"
 9354  11575   
readme = "README.md"
 9355  11576   
[package.metadata.smithy]
 9356  11577   
codegen-version = "ci"
 9357  11578   
[package.metadata.docs.rs]
 9358  11579   
all-features = true
 9359  11580   
targets = ["x86_64-unknown-linux-gnu"]
 9360  11581   
[dependencies.aws-credential-types]
 9361  11582   
path = "../aws-credential-types"
 9362  11583   
version = "1.2.4"
 9363  11584   
 9364  11585   
[dependencies.aws-runtime]
 9365  11586   
path = "../aws-runtime"
 9366  11587   
version = "1.5.9"
 9367  11588   
 9368  11589   
[dependencies.aws-smithy-async]
 9369  11590   
path = "../aws-smithy-async"
 9370  11591   
version = "1.2.5"
 9371  11592   
 9372  11593   
[dependencies.aws-smithy-http]
 9373  11594   
path = "../aws-smithy-http"
 9374         -
version = "0.62.2"
       11595  +
version = "0.62.3"
 9375  11596   
 9376  11597   
[dependencies.aws-smithy-json]
 9377  11598   
path = "../aws-smithy-json"
 9378  11599   
version = "0.61.4"
 9379  11600   
 9380  11601   
[dependencies.aws-smithy-runtime]
 9381  11602   
path = "../aws-smithy-runtime"
 9382  11603   
features = ["client"]
 9383  11604   
version = "1.8.5"
 9384  11605   
 9385  11606   
[dependencies.aws-smithy-runtime-api]
 9386  11607   
path = "../aws-smithy-runtime-api"
 9387  11608   
features = ["client", "http-02x"]
 9388  11609   
version = "1.8.5"
 9389  11610   
 9390  11611   
[dependencies.aws-smithy-types]
 9391  11612   
path = "../aws-smithy-types"
 9392  11613   
version = "1.3.2"
 9393  11614   
 9394  11615   
[dependencies.aws-types]
 9395  11616   
path = "../aws-types"
 9396  11617   
version = "1.3.8"
 9397  11618   
 9398  11619   
[dependencies.bytes]
 9399  11620   
version = "1.4.0"
 9400  11621   
 9401  11622   
[dependencies.fastrand]
 9402  11623   
version = "2.0.0"
 9403  11624   
 9404  11625   
[dependencies.http]
 9405  11626   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9406  11627   
index 5b35037..9fb220a 100644
 9407         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       11628  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 9408  11629   
@@ -1,71 +1,71 @@
 9409  11630   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 9410  11631   
[package]
 9411  11632   
name = "aws-sdk-transcribestreaming"
 9412  11633   
version = "0.0.0-local"
 9413  11634   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 9414  11635   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 9415  11636   
edition = "2021"
 9416  11637   
license = "Apache-2.0"
 9417  11638   
repository = "https://github.com/awslabs/aws-sdk-rust"
 9418  11639   
rust-version = "1.86.0"
 9419  11640   
readme = "README.md"
 9420  11641   
[package.metadata.smithy]
 9421  11642   
codegen-version = "ci"
 9422  11643   
[package.metadata.docs.rs]
 9423  11644   
all-features = true
 9424  11645   
targets = ["x86_64-unknown-linux-gnu"]
 9425  11646   
[dependencies.aws-credential-types]
 9426  11647   
path = "../aws-credential-types"
 9427  11648   
version = "1.2.4"
 9428  11649   
 9429  11650   
[dependencies.aws-runtime]
 9430  11651   
path = "../aws-runtime"
 9431  11652   
features = ["event-stream"]
 9432  11653   
version = "1.5.9"
 9433  11654   
 9434  11655   
[dependencies.aws-sigv4]
 9435  11656   
path = "../aws-sigv4"
 9436         -
version = "1.3.3"
       11657  +
version = "1.3.4"
 9437  11658   
 9438  11659   
[dependencies.aws-smithy-async]
 9439  11660   
path = "../aws-smithy-async"
 9440  11661   
version = "1.2.5"
 9441  11662   
 9442  11663   
[dependencies.aws-smithy-eventstream]
 9443  11664   
path = "../aws-smithy-eventstream"
 9444  11665   
version = "0.60.10"
 9445  11666   
 9446  11667   
[dependencies.aws-smithy-http]
 9447  11668   
path = "../aws-smithy-http"
 9448  11669   
features = ["event-stream"]
 9449         -
version = "0.62.2"
       11670  +
version = "0.62.3"
 9450  11671   
 9451  11672   
[dependencies.aws-smithy-json]
 9452  11673   
path = "../aws-smithy-json"
 9453  11674   
version = "0.61.4"
 9454  11675   
 9455  11676   
[dependencies.aws-smithy-runtime]
 9456  11677   
path = "../aws-smithy-runtime"
 9457  11678   
features = ["client"]
 9458  11679   
version = "1.8.5"
 9459  11680