AWS SDK

AWS SDK

rev. 628eeeeeed390f5efdbfe607c18848c033debd3e (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sreq

@@ -1,0 +8,0 @@
    1         -
GET / HTTP/1.1
    2         -
Host:example.amazonaws.com
    3         -
My-Header1:value4
    4         -
My-Header1:value1
    5         -
My-Header1:value3
    6         -
My-Header1:value2
    7         -
X-Amz-Date:20150830T123600Z
    8         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01

tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.authz

@@ -1,0 +8444,10643 @@
    1         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 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-header-value-trim/get-header-value-trim.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sreq
    3      1   
deleted file mode 100644
    4      2   
index 98224c9..0000000
    5         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sreq
           3  +
++ /dev/null
    6      4   
@@ -1,6 +0,0 @@
    7         -
GET / HTTP/1.1
    8         -
Host:example.amazonaws.com
    9         -
My-Header1: value1
   10         -
My-Header2: "a   b   c"
   11         -
X-Amz-Date:20150830T123600Z
   12         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
   13      5   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.authz
   14      6   
deleted file mode 100644
   15      7   
index 2943ec8..0000000
   16         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.authz
           8  +
++ /dev/null
   17      9   
@@ -1 +0,0 @@
   18         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
   19     10   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sreq
   20     11   
deleted file mode 100644
   21     12   
index 8001b3d..0000000
   22         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sreq
          13  +
++ /dev/null
   23     14   
@@ -1,4 +0,0 @@
   24         -
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
   25         -
Host:example.amazonaws.com
   26         -
X-Amz-Date:20150830T123600Z
   27         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
   28     15   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.authz
   29     16   
deleted file mode 100644
   30     17   
index 738b3fb..0000000
   31         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.authz
          18  +
++ /dev/null
   32     19   
@@ -1 +0,0 @@
   33         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
   34     20   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sreq
   35     21   
deleted file mode 100644
   36     22   
index 94eadb6..0000000
   37         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sreq
          23  +
++ /dev/null
   38     24   
@@ -1,4 +0,0 @@
   39         -
GET /ሴ HTTP/1.1
   40         -
Host:example.amazonaws.com
   41         -
X-Amz-Date:20150830T123600Z
   42         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
   43     25   
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.authz b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.authz
   44     26   
deleted file mode 100644
   45     27   
index 65b5c7c..0000000
   46         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.authz
          28  +
++ /dev/null
   47     29   
@@ -1 +0,0 @@
   48         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
   49     30   
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.sreq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.sreq
   50     31   
deleted file mode 100644
   51     32   
index f081591..0000000
   52         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-empty-query-key/get-vanilla-empty-query-key.sreq
          33  +
++ /dev/null
   53     34   
@@ -1,4 +0,0 @@
   54         -
GET /?Param1=value1 HTTP/1.1
   55         -
Host:example.amazonaws.com
   56         -
X-Amz-Date:20150830T123600Z
   57         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
   58     35   
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.authz 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.authz
   59     36   
deleted file mode 100644
   60     37   
index c781fe6..0000000
   61         -
-- 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.authz
          38  +
++ /dev/null
   62     39   
@@ -1 +0,0 @@
   63         -
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
   64     40   
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
   65     41   
deleted file mode 100644
   66     42   
index b29c1e0..0000000
   67         -
-- 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
          43  +
++ /dev/null
   68     44   
@@ -1,2 +0,0 @@
   69         -
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
   70         -
Host:example.amazonaws.com
   71     45   
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
   72     46   
deleted file mode 100644
   73     47   
index e55b6b8..0000000
   74         -
-- 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
          48  +
++ /dev/null
   75     49   
@@ -1,4 +0,0 @@
   76         -
GET /?Param2=value2&Param1=value1 HTTP/1.1
   77         -
Host:example.amazonaws.com
   78         -
X-Amz-Date:20150830T123600Z
   79         -
Authorization: AWS4-HMAC-SHA256 Credential=ANOTREAL/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947
   80     50   
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
   81     51   
deleted file mode 100644
   82     52   
index 812cd3f..0000000
   83         -
-- 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
          53  +
++ /dev/null
   84     54   
@@ -1 +0,0 @@
   85         -
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
   86     55   
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
   87     56   
deleted file mode 100644
   88     57   
index 375a496..0000000
   89         -
-- 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
          58  +
++ /dev/null
   90     59   
@@ -1,3 +0,0 @@
   91         -
GET /?Param1=value2&Param1=Value1 HTTP/1.1
   92         -
Host:example.amazonaws.com
   93         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
   94     60   
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
   95     61   
deleted file mode 100644
   96     62   
index bc8e652..0000000
   97         -
-- 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
          63  +
++ /dev/null
   98     64   
@@ -1,4 +0,0 @@
   99         -
GET /?Param1=value2&Param1=Value1 HTTP/1.1
  100         -
Host:example.amazonaws.com
  101         -
X-Amz-Date:20150830T123600Z
  102         -
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
  103     65   
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
  104     66   
deleted file mode 100644
  105     67   
index b8ad91f..0000000
  106         -
-- 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
          68  +
++ /dev/null
  107     69   
@@ -1 +0,0 @@
  108         -
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
  109     70   
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
  110     71   
deleted file mode 100644
  111     72   
index 9255bee..0000000
  112         -
-- 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
          73  +
++ /dev/null
  113     74   
@@ -1,3 +0,0 @@
  114         -
GET /?Param1=value2&Param1=value1 HTTP/1.1
  115         -
Host:example.amazonaws.com
  116         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  117     75   
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
  118     76   
deleted file mode 100644
  119     77   
index 4793e21..0000000
  120         -
-- 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
          78  +
++ /dev/null
  121     79   
@@ -1,4 +0,0 @@
  122         -
GET /?Param1=value2&Param1=value1 HTTP/1.1
  123         -
Host:example.amazonaws.com
  124         -
X-Amz-Date:20150830T123600Z
  125         -
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
  126     80   
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
  127     81   
deleted file mode 100644
  128     82   
index a44ca5b..0000000
  129         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.authz
          83  +
++ /dev/null
  130     84   
@@ -1 +0,0 @@
  131         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
  132     85   
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
  133     86   
deleted file mode 100644
  134     87   
index 551c027..0000000
  135         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.authz
          88  +
++ /dev/null
  136     89   
@@ -1 +0,0 @@
  137         -
AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
  138     90   
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
  139     91   
deleted file mode 100644
  140     92   
index d739b01..0000000
  141         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sreq
          93  +
++ /dev/null
  142     94   
@@ -1,4 +0,0 @@
  143         -
GET / HTTP/1.1
  144         -
Host:example.amazonaws.com
  145         -
X-Amz-Date:20150830T123600Z
  146         -
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
  147     95   
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
  148     96   
deleted file mode 100644
  149     97   
index e016c3d..0000000
  150         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.authz
          98  +
++ /dev/null
  151     99   
@@ -1 +0,0 @@
  152         -
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
  153    100   
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
  154    101   
deleted file mode 100644
  155    102   
index 7baf4c8..0000000
  156         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sreq
         103  +
++ /dev/null
  157    104   
@@ -1,4 +0,0 @@
  158         -
GET /?ሴ=bar HTTP/1.1
  159         -
Host:example.amazonaws.com
  160         -
X-Amz-Date:20150830T123600Z
  161         -
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
  162    105   
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
  163    106   
deleted file mode 100644
  164    107   
index 551c027..0000000
  165         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.authz
         108  +
++ /dev/null
  166    109   
@@ -1 +0,0 @@
  167         -
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
  168    110   
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
  169    111   
deleted file mode 100644
  170    112   
index d739b01..0000000
  171         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sreq
         113  +
++ /dev/null
  172    114   
@@ -1,4 +0,0 @@
  173         -
GET / HTTP/1.1
  174         -
Host:example.amazonaws.com
  175         -
X-Amz-Date:20150830T123600Z
  176         -
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
  177    115   
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
  178    116   
deleted file mode 100644
  179    117   
index 1336241..0000000
  180         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/iam/iam.creq
         118  +
++ /dev/null
  181    119   
@@ -1,4 +0,0 @@
  182         -
AWS4-HMAC-SHA256
  183         -
20150830T123600Z
  184         -
20150830/us-east-1/iam/aws4_request
  185         -
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59
  186    120   
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
  187    121   
deleted file mode 100644
  188    122   
index 551c027..0000000
  189         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.authz
         123  +
++ /dev/null
  190    124   
@@ -1 +0,0 @@
  191         -
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
  192    125   
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
  193    126   
deleted file mode 100644
  194    127   
index cbdebe2..0000000
  195         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sreq
         128  +
++ /dev/null
  196    129   
@@ -1,4 +0,0 @@
  197         -
GET /example1/example2/../.. HTTP/1.1
  198         -
Host:example.amazonaws.com
  199         -
X-Amz-Date:20150830T123600Z
  200         -
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
  201    130   
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
  202    131   
deleted file mode 100644
  203    132   
index 551c027..0000000
  204         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.authz
         133  +
++ /dev/null
  205    134   
@@ -1 +0,0 @@
  206         -
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
  207    135   
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
  208    136   
deleted file mode 100644
  209    137   
index 4f59e7d..0000000
  210         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sreq
         138  +
++ /dev/null
  211    139   
@@ -1,4 +0,0 @@
  212         -
GET /example/.. HTTP/1.1
  213         -
Host:example.amazonaws.com
  214         -
X-Amz-Date:20150830T123600Z
  215         -
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
  216    140   
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
  217    141   
deleted file mode 100644
  218    142   
index 551c027..0000000
  219         -
-- 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
         143  +
++ /dev/null
  220    144   
@@ -1 +0,0 @@
  221         -
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
  222    145   
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
  223    146   
deleted file mode 100644
  224    147   
index 23a2b41..0000000
  225         -
-- 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
         148  +
++ /dev/null
  226    149   
@@ -1,4 +0,0 @@
  227         -
GET /./ HTTP/1.1
  228         -
Host:example.amazonaws.com
  229         -
X-Amz-Date:20150830T123600Z
  230         -
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
  231    150   
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
  232    151   
deleted file mode 100644
  233    152   
index b76ca1e..0000000
  234         -
-- 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
         153  +
++ /dev/null
  235    154   
@@ -1 +0,0 @@
  236         -
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
  237    155   
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
  238    156   
deleted file mode 100644
  239    157   
index 8096609..0000000
  240         -
-- 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
         158  +
++ /dev/null
  241    159   
@@ -1,4 +0,0 @@
  242         -
GET /./example HTTP/1.1
  243         -
Host:example.amazonaws.com
  244         -
X-Amz-Date:20150830T123600Z
  245         -
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
  246    160   
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
  247    161   
deleted file mode 100644
  248    162   
index 551c027..0000000
  249         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.authz
         163  +
++ /dev/null
  250    164   
@@ -1 +0,0 @@
  251         -
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
  252    165   
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
  253    166   
deleted file mode 100644
  254    167   
index cde31b4..0000000
  255         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sreq
         168  +
++ /dev/null
  256    169   
@@ -1,4 +0,0 @@
  257         -
GET // HTTP/1.1
  258         -
Host:example.amazonaws.com
  259         -
X-Amz-Date:20150830T123600Z
  260         -
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
  261    170   
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
  262    171   
deleted file mode 100644
  263    172   
index 307c105..0000000
  264         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.authz
         173  +
++ /dev/null
  265    174   
@@ -1 +0,0 @@
  266         -
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
  267    175   
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
  268    176   
deleted file mode 100644
  269    177   
index c84a80d..0000000
  270         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sreq
         178  +
++ /dev/null
  271    179   
@@ -1,4 +0,0 @@
  272         -
GET //example// HTTP/1.1
  273         -
Host:example.amazonaws.com
  274         -
X-Amz-Date:20150830T123600Z
  275         -
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
  276    180   
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
  277    181   
deleted file mode 100644
  278    182   
index 832d8a5..0000000
  279         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.authz
         183  +
++ /dev/null
  280    184   
@@ -1 +0,0 @@
  281         -
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
  282    185   
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
  283    186   
deleted file mode 100644
  284    187   
index eefa20c..0000000
  285         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sreq
         188  +
++ /dev/null
  286    189   
@@ -1,4 +0,0 @@
  287         -
GET /example space/ HTTP/1.1
  288         -
Host:example.amazonaws.com
  289         -
X-Amz-Date:20150830T123600Z
  290         -
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
  291    190   
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
  292    191   
deleted file mode 100644
  293    192   
index c2fcb27..0000000
  294         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/normalize-path.txt
         193  +
++ /dev/null
  295    194   
@@ -1,3 +0,0 @@
  296         -
A note about signing requests to Amazon S3:
  297         -

  298         -
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
  299    195   
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
  300    196   
deleted file mode 100644
  301    197   
index 89e572e..0000000
  302         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
         198  +
++ /dev/null
  303    199   
@@ -1 +0,0 @@
  304         -
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
  305    200   
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
  306    201   
deleted file mode 100644
  307    202   
index fcf23ce..0000000
  308         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
         203  +
++ /dev/null
  309    204   
@@ -1,4 +0,0 @@
  310         -
POST / HTTP/1.1
  311         -
Host:example.amazonaws.com
  312         -
X-Amz-Date:20150830T123600Z
  313         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
  314    205   
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
  315    206   
deleted file mode 100644
  316    207   
index a62589f..0000000
  317         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
         208  +
++ /dev/null
  318    209   
@@ -1 +0,0 @@
  319         -
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
  320    210   
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
  321    211   
deleted file mode 100644
  322    212   
index b4b78a1..0000000
  323         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
         213  +
++ /dev/null
  324    214   
@@ -1,5 +0,0 @@
  325         -
POST / HTTP/1.1
  326         -
Host:example.amazonaws.com
  327         -
My-Header1:value1
  328         -
X-Amz-Date:20150830T123600Z
  329         -
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
  330    215   
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
  331    216   
deleted file mode 100644
  332    217   
index d9e52a3..0000000
  333         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
         218  +
++ /dev/null
  334    219   
@@ -1 +0,0 @@
  335         -
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
  336    220   
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
  337    221   
deleted file mode 100644
  338    222   
index 99c3210..0000000
  339         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
         223  +
++ /dev/null
  340    224   
@@ -1,5 +0,0 @@
  341         -
POST / HTTP/1.1
  342         -
Host:example.amazonaws.com
  343         -
My-Header1:VALUE1
  344         -
X-Amz-Date:20150830T123600Z
  345         -
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
  346    225   
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
  347    226   
deleted file mode 100644
  348    227   
index 89e572e..0000000
  349         -
-- 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
         228  +
++ /dev/null
  350    229   
@@ -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    230   
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
  353    231   
deleted file mode 100644
  354    232   
index 64aa046..0000000
  355         -
-- 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
         233  +
++ /dev/null
  356    234   
@@ -1 +0,0 @@
  357         -
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
  358    235   
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
  359    236   
deleted file mode 100644
  360    237   
index cc34282..0000000
  361         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
         238  +
++ /dev/null
  362    239   
@@ -1,15 +0,0 @@
  363         -
A note about using temporary security credentials:
  364         -

  365         -
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).
  366         -

  367         -
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.
  368         -

  369         -
The test suite has 2 examples:
  370         -

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

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

  375         -
The test suite uses this example value for X-Amz-Security-Token:
  376         -

  377         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
  378    240   
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
  379    241   
deleted file mode 100644
  380    242   
index 44280cd..0000000
  381         -
-- 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
         243  +
++ /dev/null
  382    244   
@@ -1 +0,0 @@
  383         -
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
  384    245   
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
  385    246   
deleted file mode 100644
  386    247   
index 82af150..0000000
  387         -
-- 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
         248  +
++ /dev/null
  388    249   
@@ -1,4 +0,0 @@
  389         -
POST /?Param1=value1 HTTP/1.1
  390         -
Host:example.amazonaws.com
  391         -
X-Amz-Date:20150830T123600Z
  392         -
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
  393    250   
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
  394    251   
deleted file mode 100644
  395    252   
index 44280cd..0000000
  396         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
         253  +
++ /dev/null
  397    254   
@@ -1 +0,0 @@
  398         -
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
  399    255   
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
  400    256   
deleted file mode 100644
  401    257   
index 82af150..0000000
  402         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
         258  +
++ /dev/null
  403    259   
@@ -1,4 +0,0 @@
  404         -
POST /?Param1=value1 HTTP/1.1
  405         -
Host:example.amazonaws.com
  406         -
X-Amz-Date:20150830T123600Z
  407         -
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
  408    260   
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
  409    261   
deleted file mode 100644
  410    262   
index 89e572e..0000000
  411         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
         263  +
++ /dev/null
  412    264   
@@ -1 +0,0 @@
  413         -
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
  414    265   
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
  415    266   
deleted file mode 100644
  416    267   
index a5ada0d..0000000
  417         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
         268  +
++ /dev/null
  418    269   
@@ -1,4 +0,0 @@
  419         -
POST / HTTP/1.1
  420         -
Host:example.amazonaws.com
  421         -
X-Amz-Date:20150830T123600Z
  422         -
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
  423    270   
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
  424    271   
deleted file mode 100644
  425    272   
index df90ca3..0000000
  426         -
-- 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
         273  +
++ /dev/null
  427    274   
@@ -1 +0,0 @@
  428         -
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
  429    275   
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
  430    276   
deleted file mode 100644
  431    277   
index 457b0d5..0000000
  432         -
-- 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
         278  +
++ /dev/null
  433    279   
@@ -1,9 +0,0 @@
  434         -
POST
  435         -
/
  436         -
Param1=value1
  437         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  438         -
host:example.amazonaws.com
  439         -
x-amz-date:20150830T123600Z
  440         -
  441         -
content-type;host;x-amz-date
  442         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  443    280   
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
  444    281   
deleted file mode 100644
  445    282   
index b8ecb89..0000000
  446         -
-- 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
         283  +
++ /dev/null
  447    284   
@@ -1,7 +0,0 @@
  448         -
POST / HTTP/1.1
  449         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  450         -
Host:example.amazonaws.com
  451         -
X-Amz-Date:20150830T123600Z
  452         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  453         -
  454         -
Param1=value1
              \
 No newline at end of file
  455    285   
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
  456    286   
deleted file mode 100644
  457    287   
index 79077d2..0000000
  458         -
-- 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
         288  +
++ /dev/null
  459    289   
@@ -1 +0,0 @@
  460         -
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
  461    290   
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
  462    291   
deleted file mode 100644
  463    292   
index 7852617..0000000
  464         -
-- 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
         293  +
++ /dev/null
  465    294   
@@ -1,4 +0,0 @@
  466         -
POST / HTTP/1.1
  467         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  468         -
Host:example.amazonaws.com
  469         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  470    295   
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
  471    296   
deleted file mode 100644
  472    297   
index 3e2e571..0000000
  473         -
-- 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
         298  +
++ /dev/null
  474    299   
@@ -1,4 +0,0 @@
  475         -
POST / HTTP/1.1
  476         -
Host:example.amazonaws.com
  477         -
X-Amz-Date:20150830T123600Z
  478         -
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
  479    300   
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
  480    301   
deleted file mode 100644
  481    302   
index 89ceae8..0000000
  482         -
-- 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
         303  +
++ /dev/null
  483    304   
@@ -1,4 +0,0 @@
  484         -
AWS4-HMAC-SHA256
  485         -
20150830T123600Z
  486         -
20150830/us-east-1/service/aws4_request
  487         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  488    305   
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
  489    306   
deleted file mode 100755
  490    307   
index d645695..0000000
  491         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
         308  +
++ /dev/null
  492    309   
@@ -1,202 +0,0 @@
  493         -
  494         -
                                 Apache License
  495         -
                           Version 2.0, January 2004
  496         -
                        http://www.apache.org/licenses/
  497         -
  498         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  499         -
  500         -
   1. Definitions.
  501         -
  502         -
      "License" shall mean the terms and conditions for use, reproduction,
  503         -
      and distribution as defined by Sections 1 through 9 of this document.
  504         -
  505         -
      "Licensor" shall mean the copyright owner or entity authorized by
  506         -
      the copyright owner that is granting the License.
  507         -
  508         -
      "Legal Entity" shall mean the union of the acting entity and all
  509         -
      other entities that control, are controlled by, or are under common
  510         -
      control with that entity. For the purposes of this definition,
  511         -
      "control" means (i) the power, direct or indirect, to cause the
  512         -
      direction or management of such entity, whether by contract or
  513         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  514         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  515         -
  516         -
      "You" (or "Your") shall mean an individual or Legal Entity
  517         -
      exercising permissions granted by this License.
  518         -
  519         -
      "Source" form shall mean the preferred form for making modifications,
  520         -
      including but not limited to software source code, documentation
  521         -
      source, and configuration files.
  522         -
  523         -
      "Object" form shall mean any form resulting from mechanical
  524         -
      transformation or translation of a Source form, including but
  525         -
      not limited to compiled object code, generated documentation,
  526         -
      and conversions to other media types.
  527         -
  528         -
      "Work" shall mean the work of authorship, whether in Source or
  529         -
      Object form, made available under the License, as indicated by a
  530         -
      copyright notice that is included in or attached to the work
  531         -
      (an example is provided in the Appendix below).
  532         -
  533         -
      "Derivative Works" shall mean any work, whether in Source or Object
  534         -
      form, that is based on (or derived from) the Work and for which the
  535         -
      editorial revisions, annotations, elaborations, or other modifications
  536         -
      represent, as a whole, an original work of authorship. For the purposes
  537         -
      of this License, Derivative Works shall not include works that remain
  538         -
      separable from, or merely link (or bind by name) to the interfaces of,
  539         -
      the Work and Derivative Works thereof.
  540         -
  541         -
      "Contribution" shall mean any work of authorship, including
  542         -
      the original version of the Work and any modifications or additions
  543         -
      to that Work or Derivative Works thereof, that is intentionally
  544         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  545         -
      or by an individual or Legal Entity authorized to submit on behalf of
  546         -
      the copyright owner. For the purposes of this definition, "submitted"
  547         -
      means any form of electronic, verbal, or written communication sent
  548         -
      to the Licensor or its representatives, including but not limited to
  549         -
      communication on electronic mailing lists, source code control systems,
  550         -
      and issue tracking systems that are managed by, or on behalf of, the
  551         -
      Licensor for the purpose of discussing and improving the Work, but
  552         -
      excluding communication that is conspicuously marked or otherwise
  553         -
      designated in writing by the copyright owner as "Not a Contribution."
  554         -
  555         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  556         -
      on behalf of whom a Contribution has been received by Licensor and
  557         -
      subsequently incorporated within the Work.
  558         -
  559         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  560         -
      this License, each Contributor hereby grants to You a perpetual,
  561         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  562         -
      copyright license to reproduce, prepare Derivative Works of,
  563         -
      publicly display, publicly perform, sublicense, and distribute the
  564         -
      Work and such Derivative Works in Source or Object form.
  565         -
  566         -
   3. Grant of Patent License. Subject to the terms and conditions of
  567         -
      this License, each Contributor hereby grants to You a perpetual,
  568         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  569         -
      (except as stated in this section) patent license to make, have made,
  570         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  571         -
      where such license applies only to those patent claims licensable
  572         -
      by such Contributor that are necessarily infringed by their
  573         -
      Contribution(s) alone or by combination of their Contribution(s)
  574         -
      with the Work to which such Contribution(s) was submitted. If You
  575         -
      institute patent litigation against any entity (including a
  576         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  577         -
      or a Contribution incorporated within the Work constitutes direct
  578         -
      or contributory patent infringement, then any patent licenses
  579         -
      granted to You under this License for that Work shall terminate
  580         -
      as of the date such litigation is filed.
  581         -
  582         -
   4. Redistribution. You may reproduce and distribute copies of the
  583         -
      Work or Derivative Works thereof in any medium, with or without
  584         -
      modifications, and in Source or Object form, provided that You
  585         -
      meet the following conditions:
  586         -
  587         -
      (a) You must give any other recipients of the Work or
  588         -
          Derivative Works a copy of this License; and
  589         -
  590         -
      (b) You must cause any modified files to carry prominent notices
  591         -
          stating that You changed the files; and
  592         -
  593         -
      (c) You must retain, in the Source form of any Derivative Works
  594         -
          that You distribute, all copyright, patent, trademark, and
  595         -
          attribution notices from the Source form of the Work,
  596         -
          excluding those notices that do not pertain to any part of
  597         -
          the Derivative Works; and
  598         -
  599         -
      (d) If the Work includes a "NOTICE" text file as part of its
  600         -
          distribution, then any Derivative Works that You distribute must
  601         -
          include a readable copy of the attribution notices contained
  602         -
          within such NOTICE file, excluding those notices that do not
  603         -
          pertain to any part of the Derivative Works, in at least one
  604         -
          of the following places: within a NOTICE text file distributed
  605         -
          as part of the Derivative Works; within the Source form or
  606         -
          documentation, if provided along with the Derivative Works; or,
  607         -
          within a display generated by the Derivative Works, if and
  608         -
          wherever such third-party notices normally appear. The contents
  609         -
          of the NOTICE file are for informational purposes only and
  610         -
          do not modify the License. You may add Your own attribution
  611         -
          notices within Derivative Works that You distribute, alongside
  612         -
          or as an addendum to the NOTICE text from the Work, provided
  613         -
          that such additional attribution notices cannot be construed
  614         -
          as modifying the License.
  615         -
  616         -
      You may add Your own copyright statement to Your modifications and
  617         -
      may provide additional or different license terms and conditions
  618         -
      for use, reproduction, or distribution of Your modifications, or
  619         -
      for any such Derivative Works as a whole, provided Your use,
  620         -
      reproduction, and distribution of the Work otherwise complies with
  621         -
      the conditions stated in this License.
  622         -
  623         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  624         -
      any Contribution intentionally submitted for inclusion in the Work
  625         -
      by You to the Licensor shall be under the terms and conditions of
  626         -
      this License, without any additional terms or conditions.
  627         -
      Notwithstanding the above, nothing herein shall supersede or modify
  628         -
      the terms of any separate license agreement you may have executed
  629         -
      with Licensor regarding such Contributions.
  630         -
  631         -
   6. Trademarks. This License does not grant permission to use the trade
  632         -
      names, trademarks, service marks, or product names of the Licensor,
  633         -
      except as required for reasonable and customary use in describing the
  634         -
      origin of the Work and reproducing the content of the NOTICE file.
  635         -
  636         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  637         -
      agreed to in writing, Licensor provides the Work (and each
  638         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  639         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  640         -
      implied, including, without limitation, any warranties or conditions
  641         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  642         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  643         -
      appropriateness of using or redistributing the Work and assume any
  644         -
      risks associated with Your exercise of permissions under this License.
  645         -
  646         -
   8. Limitation of Liability. In no event and under no legal theory,
  647         -
      whether in tort (including negligence), contract, or otherwise,
  648         -
      unless required by applicable law (such as deliberate and grossly
  649         -
      negligent acts) or agreed to in writing, shall any Contributor be
  650         -
      liable to You for damages, including any direct, indirect, special,
  651         -
      incidental, or consequential damages of any character arising as a
  652         -
      result of this License or out of the use or inability to use the
  653         -
      Work (including but not limited to damages for loss of goodwill,
  654         -
      work stoppage, computer failure or malfunction, or any and all
  655         -
      other commercial damages or losses), even if such Contributor
  656         -
      has been advised of the possibility of such damages.
  657         -
  658         -
   9. Accepting Warranty or Additional Liability. While redistributing
  659         -
      the Work or Derivative Works thereof, You may choose to offer,
  660         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  661         -
      or other liability obligations and/or rights consistent with this
  662         -
      License. However, in accepting such obligations, You may act only
  663         -
      on Your own behalf and on Your sole responsibility, not on behalf
  664         -
      of any other Contributor, and only if You agree to indemnify,
  665         -
      defend, and hold each Contributor harmless for any liability
  666         -
      incurred by, or claims asserted against, such Contributor by reason
  667         -
      of your accepting any such warranty or additional liability.
  668         -
  669         -
   END OF TERMS AND CONDITIONS
  670         -
  671         -
   APPENDIX: How to apply the Apache License to your work.
  672         -
  673         -
      To apply the Apache License to your work, attach the following
  674         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  675         -
      replaced with your own identifying information. (Don't include
  676         -
      the brackets!)  The text should be enclosed in the appropriate
  677         -
      comment syntax for the file format. We also recommend that a
  678         -
      file or class name and description of purpose be included on the
  679         -
      same "printed page" as the copyright notice for easier
  680         -
      identification within third-party archives.
  681         -
  682         -
   Copyright [yyyy] [name of copyright owner]
  683         -
  684         -
   Licensed under the Apache License, Version 2.0 (the "License");
  685         -
   you may not use this file except in compliance with the License.
  686         -
   You may obtain a copy of the License at
  687         -
  688         -
       http://www.apache.org/licenses/LICENSE-2.0
  689         -
  690         -
   Unless required by applicable law or agreed to in writing, software
  691         -
   distributed under the License is distributed on an "AS IS" BASIS,
  692         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  693         -
   See the License for the specific language governing permissions and
  694         -
   limitations under the License.
  695    310   
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
  696    311   
deleted file mode 100755
  697    312   
index d85f69e..0000000
  698         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         313  +
++ /dev/null
  699    314   
@@ -1,2 +0,0 @@
  700         -
AWS Signature Version 4a Test Suite
  701         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  702    315   
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
  703    316   
deleted file mode 100644
  704    317   
index c716622..0000000
  705         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         318  +
++ /dev/null
  706    319   
@@ -1,24 +0,0 @@
  707         -
Where did the files in this directory come from?
  708         -
================================================
  709         -
  710         -
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.
  711         -
  712         -
Signature Version 4A Test Suite
  713         -
------------------------------
  714         -
  715         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  716         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  717         -
  718         -
Each test group contains several files that you can use to validate most of the tasks described in
  719         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  720         -
  721         -
- context.json - Credentials and signer options to use when signing test requests
  722         -
- request.txt - The web request to be signed.
  723         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  724         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  725         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  726         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  727         -
  728         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  729         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  730         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  731    320   
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
  732    321   
deleted file mode 100644
  733    322   
index 45771c7..0000000
  734         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         323  +
++ /dev/null
  735    324   
@@ -1,12 +0,0 @@
  736         -
{
  737         -
    "credentials": {
  738         -
        "access_key_id": "AKIDEXAMPLE",
  739         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  740         -
    },
  741         -
    "expiration_in_seconds": 3600,
  742         -
    "normalize": true,
  743         -
    "region": "us-east-1",
  744         -
    "service": "service",
  745         -
    "sign_body": false,
  746         -
    "timestamp": "2015-08-30T12:36:00Z"
  747         -
}
  748    325   
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
  749    326   
deleted file mode 100644
  750    327   
index 45771c7..0000000
  751         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         328  +
++ /dev/null
  752    329   
@@ -1,12 +0,0 @@
  753         -
{
  754         -
    "credentials": {
  755         -
        "access_key_id": "AKIDEXAMPLE",
  756         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  757         -
    },
  758         -
    "expiration_in_seconds": 3600,
  759         -
    "normalize": true,
  760         -
    "region": "us-east-1",
  761         -
    "service": "service",
  762         -
    "sign_body": false,
  763         -
    "timestamp": "2015-08-30T12:36:00Z"
  764         -
}
  765    330   
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
  766    331   
deleted file mode 100644
  767    332   
index 45771c7..0000000
  768         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         333  +
++ /dev/null
  769    334   
@@ -1,12 +0,0 @@
  770         -
{
  771         -
    "credentials": {
  772         -
        "access_key_id": "AKIDEXAMPLE",
  773         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  774         -
    },
  775         -
    "expiration_in_seconds": 3600,
  776         -
    "normalize": true,
  777         -
    "region": "us-east-1",
  778         -
    "service": "service",
  779         -
    "sign_body": false,
  780         -
    "timestamp": "2015-08-30T12:36:00Z"
  781         -
}
  782    335   
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
  783    336   
deleted file mode 100644
  784    337   
index 45771c7..0000000
  785         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         338  +
++ /dev/null
  786    339   
@@ -1,12 +0,0 @@
  787         -
{
  788         -
    "credentials": {
  789         -
        "access_key_id": "AKIDEXAMPLE",
  790         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  791         -
    },
  792         -
    "expiration_in_seconds": 3600,
  793         -
    "normalize": true,
  794         -
    "region": "us-east-1",
  795         -
    "service": "service",
  796         -
    "sign_body": false,
  797         -
    "timestamp": "2015-08-30T12:36:00Z"
  798         -
}
  799    340   
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
  800    341   
deleted file mode 100644
  801    342   
index afe367b..0000000
  802         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         343  +
++ /dev/null
  803    344   
@@ -1,12 +0,0 @@
  804         -
{
  805         -
    "credentials": {
  806         -
        "access_key_id": "AKIDEXAMPLE",
  807         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  808         -
    },
  809         -
    "expiration_in_seconds": 3600,
  810         -
    "normalize": false,
  811         -
    "region": "us-east-1",
  812         -
    "service": "service",
  813         -
    "sign_body": false,
  814         -
    "timestamp": "2015-08-30T12:36:00Z"
  815         -
}
  816    345   
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
  817    346   
deleted file mode 100644
  818    347   
index 45771c7..0000000
  819         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         348  +
++ /dev/null
  820    349   
@@ -1,12 +0,0 @@
  821         -
{
  822         -
    "credentials": {
  823         -
        "access_key_id": "AKIDEXAMPLE",
  824         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  825         -
    },
  826         -
    "expiration_in_seconds": 3600,
  827         -
    "normalize": true,
  828         -
    "region": "us-east-1",
  829         -
    "service": "service",
  830         -
    "sign_body": false,
  831         -
    "timestamp": "2015-08-30T12:36:00Z"
  832         -
}
  833    350   
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
  834    351   
deleted file mode 100644
  835    352   
index afe367b..0000000
  836         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         353  +
++ /dev/null
  837    354   
@@ -1,12 +0,0 @@
  838         -
{
  839         -
    "credentials": {
  840         -
        "access_key_id": "AKIDEXAMPLE",
  841         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  842         -
    },
  843         -
    "expiration_in_seconds": 3600,
  844         -
    "normalize": false,
  845         -
    "region": "us-east-1",
  846         -
    "service": "service",
  847         -
    "sign_body": false,
  848         -
    "timestamp": "2015-08-30T12:36:00Z"
  849         -
}
  850    355   
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
  851    356   
deleted file mode 100644
  852    357   
index 45771c7..0000000
  853         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         358  +
++ /dev/null
  854    359   
@@ -1,12 +0,0 @@
  855         -
{
  856         -
    "credentials": {
  857         -
        "access_key_id": "AKIDEXAMPLE",
  858         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  859         -
    },
  860         -
    "expiration_in_seconds": 3600,
  861         -
    "normalize": true,
  862         -
    "region": "us-east-1",
  863         -
    "service": "service",
  864         -
    "sign_body": false,
  865         -
    "timestamp": "2015-08-30T12:36:00Z"
  866         -
}
  867    360   
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
  868    361   
deleted file mode 100644
  869    362   
index 45771c7..0000000
  870         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         363  +
++ /dev/null
  871    364   
@@ -1,12 +0,0 @@
  872         -
{
  873         -
    "credentials": {
  874         -
        "access_key_id": "AKIDEXAMPLE",
  875         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  876         -
    },
  877         -
    "expiration_in_seconds": 3600,
  878         -
    "normalize": true,
  879         -
    "region": "us-east-1",
  880         -
    "service": "service",
  881         -
    "sign_body": false,
  882         -
    "timestamp": "2015-08-30T12:36:00Z"
  883         -
}
  884    365   
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
  885    366   
deleted file mode 100644
  886    367   
index 45771c7..0000000
  887         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         368  +
++ /dev/null
  888    369   
@@ -1,12 +0,0 @@
  889         -
{
  890         -
    "credentials": {
  891         -
        "access_key_id": "AKIDEXAMPLE",
  892         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  893         -
    },
  894         -
    "expiration_in_seconds": 3600,
  895         -
    "normalize": true,
  896         -
    "region": "us-east-1",
  897         -
    "service": "service",
  898         -
    "sign_body": false,
  899         -
    "timestamp": "2015-08-30T12:36:00Z"
  900         -
}
  901    370   
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
  902    371   
deleted file mode 100644
  903    372   
index 45771c7..0000000
  904         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         373  +
++ /dev/null
  905    374   
@@ -1,12 +0,0 @@
  906         -
{
  907         -
    "credentials": {
  908         -
        "access_key_id": "AKIDEXAMPLE",
  909         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  910         -
    },
  911         -
    "expiration_in_seconds": 3600,
  912         -
    "normalize": true,
  913         -
    "region": "us-east-1",
  914         -
    "service": "service",
  915         -
    "sign_body": false,
  916         -
    "timestamp": "2015-08-30T12:36:00Z"
  917         -
}
  918    375   
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
  919    376   
deleted file mode 100644
  920    377   
index 45771c7..0000000
  921         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         378  +
++ /dev/null
  922    379   
@@ -1,12 +0,0 @@
  923         -
{
  924         -
    "credentials": {
  925         -
        "access_key_id": "AKIDEXAMPLE",
  926         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  927         -
    },
  928         -
    "expiration_in_seconds": 3600,
  929         -
    "normalize": true,
  930         -
    "region": "us-east-1",
  931         -
    "service": "service",
  932         -
    "sign_body": false,
  933         -
    "timestamp": "2015-08-30T12:36:00Z"
  934         -
}
  935    380   
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
  936    381   
deleted file mode 100644
  937    382   
index 47e7128..0000000
  938         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         383  +
++ /dev/null
  939    384   
@@ -1,9 +0,0 @@
  940         -
GET
  941         -
/
  942         -
  943         -
host:example.amazonaws.com
  944         -
x-amz-date:20150830T123600Z
  945         -
x-amz-region-set:us-east-1
  946         -
  947         -
host;x-amz-date;x-amz-region-set
  948         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  949    385   
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
  950    386   
deleted file mode 100644
  951    387   
index 95d7219..0000000
  952         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         388  +
++ /dev/null
  953    389   
@@ -1,4 +0,0 @@
  954         -
AWS4-ECDSA-P256-SHA256
  955         -
20150830T123600Z
  956         -
20150830/service/aws4_request
  957         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  958    390   
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
  959    391   
deleted file mode 100644
  960    392   
index a34ea26..0000000
  961         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         393  +
++ /dev/null
  962    394   
@@ -1,7 +0,0 @@
  963         -
GET
  964         -
/
  965         -
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
  966         -
host:example.amazonaws.com
  967         -
  968         -
host
  969         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  970    395   
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
  971    396   
deleted file mode 100644
  972    397   
index 48f855c..0000000
  973         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         398  +
++ /dev/null
  974    399   
@@ -1,4 +0,0 @@
  975         -
AWS4-ECDSA-P256-SHA256
  976         -
20150830T123600Z
  977         -
20150830/service/aws4_request
  978         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  979    400   
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
  980    401   
deleted file mode 100644
  981    402   
index 45771c7..0000000
  982         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         403  +
++ /dev/null
  983    404   
@@ -1,12 +0,0 @@
  984         -
{
  985         -
    "credentials": {
  986         -
        "access_key_id": "AKIDEXAMPLE",
  987         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  988         -
    },
  989         -
    "expiration_in_seconds": 3600,
  990         -
    "normalize": true,
  991         -
    "region": "us-east-1",
  992         -
    "service": "service",
  993         -
    "sign_body": false,
  994         -
    "timestamp": "2015-08-30T12:36:00Z"
  995         -
}
  996    405   
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
  997    406   
deleted file mode 100644
  998    407   
index 47e7128..0000000
  999         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         408  +
++ /dev/null
 1000    409   
@@ -1,9 +0,0 @@
 1001         -
GET
 1002         -
/
 1003         -
 1004         -
host:example.amazonaws.com
 1005         -
x-amz-date:20150830T123600Z
 1006         -
x-amz-region-set:us-east-1
 1007         -
 1008         -
host;x-amz-date;x-amz-region-set
 1009         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
 1010    410   
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
 1011    411   
deleted file mode 100644
 1012    412   
index 95d7219..0000000
 1013         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         413  +
++ /dev/null
 1014    414   
@@ -1,4 +0,0 @@
 1015         -
AWS4-ECDSA-P256-SHA256
 1016         -
20150830T123600Z
 1017         -
20150830/service/aws4_request
 1018         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
 1019    415   
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
 1020    416   
deleted file mode 100644
 1021    417   
index a34ea26..0000000
 1022         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         418  +
++ /dev/null
 1023    419   
@@ -1,7 +0,0 @@
 1024         -
GET
 1025         -
/
 1026         -
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
 1027         -
host:example.amazonaws.com
 1028         -
 1029         -
host
 1030         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
 1031    420   
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
 1032    421   
deleted file mode 100644
 1033    422   
index 48f855c..0000000
 1034         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         423  +
++ /dev/null
 1035    424   
@@ -1,4 +0,0 @@
 1036         -
AWS4-ECDSA-P256-SHA256
 1037         -
20150830T123600Z
 1038         -
20150830/service/aws4_request
 1039         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
 1040    425   
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
 1041    426   
deleted file mode 100644
 1042    427   
index 45771c7..0000000
 1043         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         428  +
++ /dev/null
 1044    429   
@@ -1,12 +0,0 @@
 1045         -
{
 1046         -
    "credentials": {
 1047         -
        "access_key_id": "AKIDEXAMPLE",
 1048         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1049         -
    },
 1050         -
    "expiration_in_seconds": 3600,
 1051         -
    "normalize": true,
 1052         -
    "region": "us-east-1",
 1053         -
    "service": "service",
 1054         -
    "sign_body": false,
 1055         -
    "timestamp": "2015-08-30T12:36:00Z"
 1056         -
}
 1057    430   
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
 1058    431   
deleted file mode 100644
 1059    432   
index 45771c7..0000000
 1060         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         433  +
++ /dev/null
 1061    434   
@@ -1,12 +0,0 @@
 1062         -
{
 1063         -
    "credentials": {
 1064         -
        "access_key_id": "AKIDEXAMPLE",
 1065         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1066         -
    },
 1067         -
    "expiration_in_seconds": 3600,
 1068         -
    "normalize": true,
 1069         -
    "region": "us-east-1",
 1070         -
    "service": "service",
 1071         -
    "sign_body": false,
 1072         -
    "timestamp": "2015-08-30T12:36:00Z"
 1073         -
}
 1074    435   
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
 1075    436   
deleted file mode 100644
 1076    437   
index 45771c7..0000000
 1077         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         438  +
++ /dev/null
 1078    439   
@@ -1,12 +0,0 @@
 1079         -
{
 1080         -
    "credentials": {
 1081         -
        "access_key_id": "AKIDEXAMPLE",
 1082         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1083         -
    },
 1084         -
    "expiration_in_seconds": 3600,
 1085         -
    "normalize": true,
 1086         -
    "region": "us-east-1",
 1087         -
    "service": "service",
 1088         -
    "sign_body": false,
 1089         -
    "timestamp": "2015-08-30T12:36:00Z"
 1090         -
}
 1091    440   
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
 1092    441   
deleted file mode 100644
 1093    442   
index 45771c7..0000000
 1094         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         443  +
++ /dev/null
 1095    444   
@@ -1,12 +0,0 @@
 1096         -
{
 1097         -
    "credentials": {
 1098         -
        "access_key_id": "AKIDEXAMPLE",
 1099         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1100         -
    },
 1101         -
    "expiration_in_seconds": 3600,
 1102         -
    "normalize": true,
 1103         -
    "region": "us-east-1",
 1104         -
    "service": "service",
 1105         -
    "sign_body": false,
 1106         -
    "timestamp": "2015-08-30T12:36:00Z"
 1107         -
}
 1108    445   
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
 1109    446   
deleted file mode 100644
 1110    447   
index 45771c7..0000000
 1111         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         448  +
++ /dev/null
 1112    449   
@@ -1,12 +0,0 @@
 1113         -
{
 1114         -
    "credentials": {
 1115         -
        "access_key_id": "AKIDEXAMPLE",
 1116         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1117         -
    },
 1118         -
    "expiration_in_seconds": 3600,
 1119         -
    "normalize": true,
 1120         -
    "region": "us-east-1",
 1121         -
    "service": "service",
 1122         -
    "sign_body": false,
 1123         -
    "timestamp": "2015-08-30T12:36:00Z"
 1124         -
}
 1125    450   
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
 1126    451   
deleted file mode 100644
 1127    452   
index 45771c7..0000000
 1128         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         453  +
++ /dev/null
 1129    454   
@@ -1,12 +0,0 @@
 1130         -
{
 1131         -
    "credentials": {
 1132         -
        "access_key_id": "AKIDEXAMPLE",
 1133         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1134         -
    },
 1135         -
    "expiration_in_seconds": 3600,
 1136         -
    "normalize": true,
 1137         -
    "region": "us-east-1",
 1138         -
    "service": "service",
 1139         -
    "sign_body": false,
 1140         -
    "timestamp": "2015-08-30T12:36:00Z"
 1141         -
}
 1142    455   
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
 1143    456   
deleted file mode 100644
 1144    457   
index b6fdecf..0000000
 1145         -
-- 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
         458  +
++ /dev/null
 1146    459   
@@ -1,4 +0,0 @@
 1147         -
AWS4-ECDSA-P256-SHA256
 1148         -
20150830T123600Z
 1149         -
20150830/service/aws4_request
 1150         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1151    460   
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
 1152    461   
deleted file mode 100644
 1153    462   
index a300bea..0000000
 1154         -
-- 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
         463  +
++ /dev/null
 1155    464   
@@ -1,4 +0,0 @@
 1156         -
AWS4-ECDSA-P256-SHA256
 1157         -
20150830T123600Z
 1158         -
20150830/service/aws4_request
 1159         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
 1160    465   
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
 1161    466   
deleted file mode 100644
 1162    467   
index b6fdecf..0000000
 1163         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         468  +
++ /dev/null
 1164    469   
@@ -1,4 +0,0 @@
 1165         -
AWS4-ECDSA-P256-SHA256
 1166         -
20150830T123600Z
 1167         -
20150830/service/aws4_request
 1168         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1169    470   
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
 1170    471   
new file mode 100644
 1171    472   
index 0000000..a674243
 1172         -
-- /dev/null
         473  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
 1173    474   
@@ -0,0 +1,7 @@
         475  +
# AWS SigV4 and SigV4A Signing Test Suite
         476  +
         477  +
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).
         478  +
         479  +
We added the following changes:
         480  +
         481  +
* 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
 1174    482   
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
 1175    483   
similarity index 100%
 1176    484   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
 1177    485   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
 1178    486   
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
 1179    487   
similarity index 100%
 1180    488   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
 1181    489   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
 1182    490   
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
 1183    491   
similarity index 100%
 1184    492   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
 1185    493   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
 1186    494   
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
 1187    495   
similarity index 100%
 1188    496   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
 1189    497   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
 1190    498   
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
 1191    499   
similarity index 100%
 1192    500   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
 1193    501   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
 1194    502   
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
 1195    503   
similarity index 100%
 1196    504   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
 1197    505   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
 1198    506   
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
 1199    507   
similarity index 100%
 1200    508   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
 1201    509   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
 1202    510   
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
 1203    511   
similarity index 99%
 1204    512   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
 1205    513   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1206    514   
index 45771c7..0468d80 100644
 1207    515   
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
 1208    516   
similarity index 100%
 1209    517   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
 1210    518   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1211    519   
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
 1212    520   
new file mode 100644
 1213    521   
index 0000000..7fc5d7a
 1214         -
-- /dev/null
         522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1215    523   
@@ -0,0 +1 @@
         524  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
 1216    525   
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
 1217    526   
new file mode 100644
 1218    527   
index 0000000..36a1205
 1219         -
-- /dev/null
         528  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1220    529   
@@ -0,0 +1,8 @@
         530  +
GET / HTTP/1.1
         531  +
Host:example.amazonaws.com
         532  +
My-Header1:value2
         533  +
My-Header1:value2
         534  +
My-Header1:value1
         535  +
X-Amz-Date:20150830T123600Z
         536  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         537  +
 1221    538   
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
 1222    539   
similarity index 100%
 1223    540   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
 1224    541   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1225    542   
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
 1226    543   
new file mode 100644
 1227    544   
index 0000000..f9f4190
 1228         -
-- /dev/null
         545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1229    546   
@@ -0,0 +1,8 @@
         547  +
GET
         548  +
/
         549  +
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
         550  +
host:example.amazonaws.com
         551  +
my-header1:value2,value2,value1
         552  +
         553  +
host;my-header1
         554  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1230    555   
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
 1231    556   
new file mode 100644
 1232    557   
index 0000000..5d0d87f
 1233         -
-- /dev/null
         558  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1234    559   
@@ -0,0 +1 @@
         560  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1235    561   
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
 1236    562   
new file mode 100644
 1237    563   
index 0000000..c1dfcf4
 1238         -
-- /dev/null
         564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1239    565   
@@ -0,0 +1,6 @@
         566  +
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
         567  +
Host:example.amazonaws.com
         568  +
My-Header1:value2
         569  +
My-Header1:value2
         570  +
My-Header1:value1
         571  +
 1240    572   
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
 1241    573   
similarity index 53%
 1242    574   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1243    575   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1244    576   
index 0a3350a..077c1bb 100644
 1245         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         577  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1246    578   
@@ -1,4 +1,4 @@
 1247    579   
AWS4-HMAC-SHA256
 1248    580   
20150830T123600Z
 1249    581   
20150830/us-east-1/service/aws4_request
 1250         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         582  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1251    583   
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
 1252    584   
similarity index 100%
 1253    585   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1254    586   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1255    587   
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
 1256    588   
similarity index 99%
 1257    589   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1258    590   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1259    591   
index 45771c7..0468d80 100644
 1260    592   
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
 1261    593   
similarity index 82%
 1262    594   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1263    595   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1264    596   
index 721a39f..8cb5476 100644
 1265         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1266    598   
@@ -1,9 +1,9 @@
 1267    599   
GET
 1268    600   
/
 1269    601   
 1270    602   
host:example.amazonaws.com
 1271         -
my-header1:value1,value2,value3
         603  +
my-header1:value1 value2 value3
 1272    604   
x-amz-date:20150830T123600Z
 1273    605   
 1274    606   
host;my-header1;x-amz-date
 1275    607   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1276    608   
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
 1277    609   
new file mode 100644
 1278    610   
index 0000000..e6ff7a9
 1279         -
-- /dev/null
         611  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1280    612   
@@ -0,0 +1 @@
         613  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1281    614   
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
 1282    615   
new file mode 100644
 1283    616   
index 0000000..b5ef6a0
 1284         -
-- /dev/null
         617  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1285    618   
@@ -0,0 +1,8 @@
         619  +
GET / HTTP/1.1
         620  +
Host:example.amazonaws.com
         621  +
My-Header1:value1
         622  +
  value2
         623  +
     value3
         624  +
X-Amz-Date:20150830T123600Z
         625  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         626  +
 1286    627   
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
 1287    628   
similarity index 53%
 1288    629   
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
 1289    630   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1290    631   
index fd43a41..97c7430 100644
 1291         -
-- 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
         632  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1292    633   
@@ -1,4 +1,4 @@
 1293    634   
AWS4-HMAC-SHA256
 1294    635   
20150830T123600Z
 1295    636   
20150830/us-east-1/service/aws4_request
 1296         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         637  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1297    638   
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
 1298    639   
new file mode 100644
 1299    640   
index 0000000..aac46de
 1300         -
-- /dev/null
         641  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1301    642   
@@ -0,0 +1,8 @@
         643  +
GET
         644  +
/
         645  +
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
         646  +
host:example.amazonaws.com
         647  +
my-header1:value1 value2 value3
         648  +
         649  +
host;my-header1
         650  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1302    651   
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
 1303    652   
new file mode 100644
 1304    653   
index 0000000..205732d
 1305         -
-- /dev/null
         654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1306    655   
@@ -0,0 +1 @@
         656  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1307    657   
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
 1308    658   
new file mode 100644
 1309    659   
index 0000000..a891b87
 1310         -
-- /dev/null
         660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1311    661   
@@ -0,0 +1,6 @@
         662  +
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
         663  +
Host:example.amazonaws.com
         664  +
My-Header1:value1
         665  +
  value2
         666  +
     value3
         667  +
 1312    668   
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
 1313    669   
similarity index 53%
 1314    670   
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
 1315    671   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1316    672   
index 90e66b8..ec3fe45 100644
 1317         -
-- 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
         673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1318    674   
@@ -1,4 +1,4 @@
 1319    675   
AWS4-HMAC-SHA256
 1320    676   
20150830T123600Z
 1321    677   
20150830/us-east-1/service/aws4_request
 1322         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         678  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1323    679   
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
 1324    680   
similarity index 75%
 1325    681   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1326    682   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1327    683   
index 7caa6ac..b5026cd 100644
 1328         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1329    685   
@@ -1,6 +1,5 @@
 1330    686   
GET / HTTP/1.1
 1331    687   
Host:example.amazonaws.com
 1332    688   
My-Header1:value1
 1333    689   
  value2
 1334    690   
     value3
 1335         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1336    691   
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
 1337    692   
similarity index 99%
 1338    693   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1339    694   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1340    695   
index 45771c7..0468d80 100644
 1341    696   
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
 1342    697   
similarity index 100%
 1343    698   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1344    699   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1345    700   
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
 1346    701   
new file mode 100644
 1347    702   
index 0000000..8ef0494
 1348         -
-- /dev/null
         703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1349    704   
@@ -0,0 +1 @@
         705  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1350    706   
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
 1351    707   
new file mode 100644
 1352    708   
index 0000000..b786dc9
 1353         -
-- /dev/null
         709  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1354    710   
@@ -0,0 +1,9 @@
         711  +
GET / HTTP/1.1
         712  +
Host:example.amazonaws.com
         713  +
My-Header1:value4
         714  +
My-Header1:value1
         715  +
My-Header1:value3
         716  +
My-Header1:value2
         717  +
X-Amz-Date:20150830T123600Z
         718  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         719  +
 1355    720   
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
 1356    721   
similarity index 100%
 1357    722   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1358    723   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1359    724   
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
 1360    725   
new file mode 100644
 1361    726   
index 0000000..a211cc5
 1362         -
-- /dev/null
         727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1363    728   
@@ -0,0 +1,8 @@
         729  +
GET
         730  +
/
         731  +
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
         732  +
host:example.amazonaws.com
         733  +
my-header1:value4,value1,value3,value2
         734  +
         735  +
host;my-header1
         736  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1364    737   
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
 1365    738   
new file mode 100644
 1366    739   
index 0000000..417b0fa
 1367         -
-- /dev/null
         740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1368    741   
@@ -0,0 +1 @@
         742  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1369    743   
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
 1370    744   
new file mode 100644
 1371    745   
index 0000000..b615e5d
 1372         -
-- /dev/null
         746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1373    747   
@@ -0,0 +1,7 @@
         748  +
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
         749  +
Host:example.amazonaws.com
         750  +
My-Header1:value4
         751  +
My-Header1:value1
         752  +
My-Header1:value3
         753  +
My-Header1:value2
         754  +
 1374    755   
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
 1375    756   
similarity index 53%
 1376    757   
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
 1377    758   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1378    759   
index f7e615e..dcaaa1b 100644
 1379         -
-- 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
         760  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1380    761   
@@ -1,4 +1,4 @@
 1381    762   
AWS4-HMAC-SHA256
 1382    763   
20150830T123600Z
 1383    764   
20150830/us-east-1/service/aws4_request
 1384         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         765  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1385    766   
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
 1386    767   
similarity index 100%
 1387    768   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1388    769   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1389    770   
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
 1390    771   
similarity index 99%
 1391    772   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1392    773   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1393    774   
index 45771c7..0468d80 100644
 1394    775   
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
 1395    776   
similarity index 100%
 1396    777   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1397    778   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1398    779   
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
 1399    780   
new file mode 100644
 1400    781   
index 0000000..36081a9
 1401         -
-- /dev/null
         782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1402    783   
@@ -0,0 +1 @@
         784  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1403    785   
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
 1404    786   
new file mode 100644
 1405    787   
index 0000000..6331d16
 1406         -
-- /dev/null
         788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1407    789   
@@ -0,0 +1,7 @@
         790  +
GET / HTTP/1.1
         791  +
Host:example.amazonaws.com
         792  +
My-Header1: value1
         793  +
My-Header2: "a   b   c"
         794  +
X-Amz-Date:20150830T123600Z
         795  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         796  +
 1408    797   
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
 1409    798   
similarity index 100%
 1410    799   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1411    800   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1412    801   
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
 1413    802   
new file mode 100644
 1414    803   
index 0000000..125c1f9
 1415         -
-- /dev/null
         804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1416    805   
@@ -0,0 +1,9 @@
         806  +
GET
         807  +
/
         808  +
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
         809  +
host:example.amazonaws.com
         810  +
my-header1:value1
         811  +
my-header2:"a b c"
         812  +
         813  +
host;my-header1;my-header2
         814  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1417    815   
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
 1418    816   
new file mode 100644
 1419    817   
index 0000000..17007a8
 1420         -
-- /dev/null
         818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1421    819   
@@ -0,0 +1 @@
         820  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1422    821   
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
 1423    822   
new file mode 100644
 1424    823   
index 0000000..e519fd9
 1425         -
-- /dev/null
         824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1426    825   
@@ -0,0 +1,5 @@
         826  +
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
         827  +
Host:example.amazonaws.com
         828  +
My-Header1: value1
         829  +
My-Header2: "a   b   c"
         830  +
 1427    831   
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
 1428    832   
new file mode 100644
 1429    833   
index 0000000..6b4b781
 1430         -
-- /dev/null
         834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1431    835   
@@ -0,0 +1,4 @@
         836  +
AWS4-HMAC-SHA256
         837  +
20150830T123600Z
         838  +
20150830/us-east-1/service/aws4_request
         839  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1432    840   
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
 1433    841   
similarity index 100%
 1434    842   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1435    843   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1436    844   
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
 1437    845   
new file mode 100644
 1438    846   
index 0000000..0468d80
 1439         -
-- /dev/null
         847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1440    848   
@@ -0,0 +1,12 @@
         849  +
{
         850  +
    "credentials": {
         851  +
        "access_key_id": "AKIDEXAMPLE",
         852  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         853  +
    },
         854  +
    "expiration_in_seconds": 3600,
         855  +
    "normalize": true,
         856  +
    "region": "us-east-1",
         857  +
    "service": "service",
         858  +
    "sign_body": false,
         859  +
    "timestamp": "2015-08-30T12:36:00Z"
         860  +
}
              \
 No newline at end of file
 1441    861   
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
 1442    862   
similarity index 100%
 1443    863   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1444    864   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1445    865   
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
 1446    866   
new file mode 100644
 1447    867   
index 0000000..87f295f
 1448         -
-- /dev/null
         868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1449    869   
@@ -0,0 +1 @@
         870  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1450    871   
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
 1451    872   
new file mode 100644
 1452    873   
index 0000000..0de8327
 1453         -
-- /dev/null
         874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1454    875   
@@ -0,0 +1,5 @@
         876  +
GET /example/.. HTTP/1.1
         877  +
Host:example.amazonaws.com
         878  +
X-Amz-Date:20150830T123600Z
         879  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         880  +
 1455    881   
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
 1456    882   
similarity index 100%
 1457    883   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1458    884   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1459    885   
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
 1460    886   
new file mode 100644
 1461    887   
index 0000000..fb2420d
 1462         -
-- /dev/null
         888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1463    889   
@@ -0,0 +1,7 @@
         890  +
GET
         891  +
/
         892  +
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
         893  +
host:example.amazonaws.com
         894  +
         895  +
host
         896  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1464    897   
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
 1465    898   
new file mode 100644
 1466    899   
index 0000000..da5c905
 1467         -
-- /dev/null
         900  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1468    901   
@@ -0,0 +1 @@
         902  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1469    903   
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
 1470    904   
new file mode 100644
 1471    905   
index 0000000..4329c98
 1472         -
-- /dev/null
         906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1473    907   
@@ -0,0 +1,3 @@
         908  +
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
         909  +
Host:example.amazonaws.com
         910  +
 1474    911   
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
 1475    912   
new file mode 100644
 1476    913   
index 0000000..d837e67
 1477         -
-- /dev/null
         914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1478    915   
@@ -0,0 +1,4 @@
         916  +
AWS4-HMAC-SHA256
         917  +
20150830T123600Z
         918  +
20150830/us-east-1/service/aws4_request
         919  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1479    920   
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
 1480    921   
similarity index 100%
 1481    922   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1482    923   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1483    924   
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
 1484    925   
new file mode 100644
 1485    926   
index 0000000..0468d80
 1486         -
-- /dev/null
         927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1487    928   
@@ -0,0 +1,12 @@
         929  +
{
         930  +
    "credentials": {
         931  +
        "access_key_id": "AKIDEXAMPLE",
         932  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         933  +
    },
         934  +
    "expiration_in_seconds": 3600,
         935  +
    "normalize": true,
         936  +
    "region": "us-east-1",
         937  +
    "service": "service",
         938  +
    "sign_body": false,
         939  +
    "timestamp": "2015-08-30T12:36:00Z"
         940  +
}
              \
 No newline at end of file
 1488    941   
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
 1489    942   
similarity index 100%
 1490    943   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1491    944   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1492    945   
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
 1493    946   
new file mode 100644
 1494    947   
index 0000000..87f295f
 1495         -
-- /dev/null
         948  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1496    949   
@@ -0,0 +1 @@
         950  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1497    951   
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
 1498    952   
new file mode 100644
 1499    953   
index 0000000..f9b3815
 1500         -
-- /dev/null
         954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1501    955   
@@ -0,0 +1,5 @@
         956  +
GET /example1/example2/../.. HTTP/1.1
         957  +
Host:example.amazonaws.com
         958  +
X-Amz-Date:20150830T123600Z
         959  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         960  +
 1502    961   
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
 1503    962   
similarity index 100%
 1504    963   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1505    964   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1506    965   
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
 1507    966   
new file mode 100644
 1508    967   
index 0000000..fb2420d
 1509         -
-- /dev/null
         968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1510    969   
@@ -0,0 +1,7 @@
         970  +
GET
         971  +
/
         972  +
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
         973  +
host:example.amazonaws.com
         974  +
         975  +
host
         976  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1511    977   
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
 1512    978   
new file mode 100644
 1513    979   
index 0000000..da5c905
 1514         -
-- /dev/null
         980  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1515    981   
@@ -0,0 +1 @@
         982  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1516    983   
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
 1517    984   
new file mode 100644
 1518    985   
index 0000000..b2988b7
 1519         -
-- /dev/null
         986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1520    987   
@@ -0,0 +1,3 @@
         988  +
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
         989  +
Host:example.amazonaws.com
         990  +
 1521    991   
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
 1522    992   
new file mode 100644
 1523    993   
index 0000000..d837e67
 1524         -
-- /dev/null
         994  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1525    995   
@@ -0,0 +1,4 @@
         996  +
AWS4-HMAC-SHA256
         997  +
20150830T123600Z
         998  +
20150830/us-east-1/service/aws4_request
         999  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1526   1000   
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
 1527   1001   
similarity index 100%
 1528   1002   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1529   1003   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1530   1004   
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
 1531   1005   
similarity index 99%
 1532   1006   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1533   1007   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1534   1008   
index afe367b..7bee5c7 100644
 1535   1009   
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
 1536   1010   
similarity index 82%
 1537   1011   
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
 1538   1012   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1539   1013   
index 36c3cdf..6919c44 100644
 1540         -
-- 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
        1014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1541   1015   
@@ -1,8 +1,8 @@
 1542   1016   
GET
 1543         -
/
 1544         -
Param1=Value1&Param1=value2
        1017  +
/example1/example2/../..
        1018  +
 1545   1019   
host:example.amazonaws.com
 1546   1020   
x-amz-date:20150830T123600Z
 1547   1021   
 1548   1022   
host;x-amz-date
 1549   1023   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1550   1024   
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
 1551   1025   
new file mode 100644
 1552   1026   
index 0000000..4092d83
 1553         -
-- /dev/null
        1027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1554   1028   
@@ -0,0 +1 @@
        1029  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1555   1030   
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
 1556   1031   
new file mode 100644
 1557   1032   
index 0000000..e731b35
 1558         -
-- /dev/null
        1033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1559   1034   
@@ -0,0 +1,5 @@
        1035  +
GET /example1/example2/../.. HTTP/1.1
        1036  +
Host:example.amazonaws.com
        1037  +
X-Amz-Date:20150830T123600Z
        1038  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
        1039  +
 1560   1040   
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
 1561   1041   
new file mode 100644
 1562   1042   
index 0000000..4f45752
 1563         -
-- /dev/null
        1043  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1564   1044   
@@ -0,0 +1,4 @@
        1045  +
AWS4-HMAC-SHA256
        1046  +
20150830T123600Z
        1047  +
20150830/us-east-1/service/aws4_request
        1048  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1565   1049   
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
 1566   1050   
new file mode 100644
 1567   1051   
index 0000000..e1fb07d
 1568         -
-- /dev/null
        1052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1569   1053   
@@ -0,0 +1,7 @@
        1054  +
GET
        1055  +
/example1/example2/../..
        1056  +
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
        1057  +
host:example.amazonaws.com
        1058  +
        1059  +
host
        1060  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1570   1061   
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
 1571   1062   
new file mode 100644
 1572   1063   
index 0000000..8ac31d7
 1573         -
-- /dev/null
        1064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1574   1065   
@@ -0,0 +1 @@
        1066  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1575   1067   
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
 1576   1068   
new file mode 100644
 1577   1069   
index 0000000..ac074f9
 1578         -
-- /dev/null
        1070  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1579   1071   
@@ -0,0 +1,3 @@
        1072  +
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
        1073  +
Host:example.amazonaws.com
        1074  +
 1580   1075   
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
 1581   1076   
new file mode 100644
 1582   1077   
index 0000000..8dcb6ff
 1583         -
-- /dev/null
        1078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1584   1079   
@@ -0,0 +1,4 @@
        1080  +
AWS4-HMAC-SHA256
        1081  +
20150830T123600Z
        1082  +
20150830/us-east-1/service/aws4_request
        1083  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1585   1084   
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
 1586   1085   
similarity index 100%
 1587   1086   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1588   1087   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1589   1088   
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
 1590   1089   
similarity index 99%
 1591   1090   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1592   1091   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1593   1092   
index afe367b..7bee5c7 100644
 1594   1093   
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
 1595   1094   
similarity index 82%
 1596   1095   
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
 1597   1096   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1598   1097   
index 26898eb..f640bc2 100644
 1599         -
-- 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
        1098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1600   1099   
@@ -1,8 +1,8 @@
 1601   1100   
GET
 1602         -
/
 1603         -
Param1=value1&Param1=value2
        1101  +
/example/..
        1102  +
 1604   1103   
host:example.amazonaws.com
 1605   1104   
x-amz-date:20150830T123600Z
 1606   1105   
 1607   1106   
host;x-amz-date
 1608   1107   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1609   1108   
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
 1610   1109   
new file mode 100644
 1611   1110   
index 0000000..d957303
 1612         -
-- /dev/null
        1111  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1613   1112   
@@ -0,0 +1 @@
        1113  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1614   1114   
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
 1615   1115   
new file mode 100644
 1616   1116   
index 0000000..4f42ffc
 1617         -
-- /dev/null
        1117  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1618   1118   
@@ -0,0 +1,5 @@
        1119  +
GET /example/.. HTTP/1.1
        1120  +
Host:example.amazonaws.com
        1121  +
X-Amz-Date:20150830T123600Z
        1122  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
        1123  +
 1619   1124   
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
 1620   1125   
new file mode 100644
 1621   1126   
index 0000000..ca54bda
 1622         -
-- /dev/null
        1127  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1623   1128   
@@ -0,0 +1,4 @@
        1129  +
AWS4-HMAC-SHA256
        1130  +
20150830T123600Z
        1131  +
20150830/us-east-1/service/aws4_request
        1132  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1624   1133   
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
 1625   1134   
new file mode 100644
 1626   1135   
index 0000000..dc80036
 1627         -
-- /dev/null
        1136  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1628   1137   
@@ -0,0 +1,7 @@
        1138  +
GET
        1139  +
/example/..
        1140  +
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
        1141  +
host:example.amazonaws.com
        1142  +
        1143  +
host
        1144  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1629   1145   
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
 1630   1146   
new file mode 100644
 1631   1147   
index 0000000..dfa0437
 1632         -
-- /dev/null
        1148  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1633   1149   
@@ -0,0 +1 @@
        1150  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1634   1151   
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
 1635   1152   
new file mode 100644
 1636   1153   
index 0000000..98367b1
 1637         -
-- /dev/null
        1154  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1638   1155   
@@ -0,0 +1,3 @@
        1156  +
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
        1157  +
Host:example.amazonaws.com
        1158  +
 1639   1159   
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
 1640   1160   
new file mode 100644
 1641   1161   
index 0000000..f65dd66
 1642         -
-- /dev/null
        1162  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1643   1163   
@@ -0,0 +1,4 @@
        1164  +
AWS4-HMAC-SHA256
        1165  +
20150830T123600Z
        1166  +
20150830/us-east-1/service/aws4_request
        1167  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1644   1168   
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
 1645   1169   
similarity index 100%
 1646   1170   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1647   1171   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1648   1172   
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
 1649   1173   
new file mode 100644
 1650   1174   
index 0000000..0468d80
 1651         -
-- /dev/null
        1175  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1652   1176   
@@ -0,0 +1,12 @@
        1177  +
{
        1178  +
    "credentials": {
        1179  +
        "access_key_id": "AKIDEXAMPLE",
        1180  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1181  +
    },
        1182  +
    "expiration_in_seconds": 3600,
        1183  +
    "normalize": true,
        1184  +
    "region": "us-east-1",
        1185  +
    "service": "service",
        1186  +
    "sign_body": false,
        1187  +
    "timestamp": "2015-08-30T12:36:00Z"
        1188  +
}
              \
 No newline at end of file
 1653   1189   
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
 1654   1190   
similarity index 100%
 1655   1191   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1656   1192   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1657   1193   
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
 1658   1194   
new file mode 100644
 1659   1195   
index 0000000..87f295f
 1660         -
-- /dev/null
        1196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1661   1197   
@@ -0,0 +1 @@
        1198  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1662   1199   
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
 1663   1200   
new file mode 100644
 1664   1201   
index 0000000..99c8eeb
 1665         -
-- /dev/null
        1202  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1666   1203   
@@ -0,0 +1,5 @@
        1204  +
GET /./ HTTP/1.1
        1205  +
Host:example.amazonaws.com
        1206  +
X-Amz-Date:20150830T123600Z
        1207  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1208  +
 1667   1209   
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
 1668   1210   
similarity index 100%
 1669   1211   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1670   1212   
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
 1671   1213   
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
 1672   1214   
new file mode 100644
 1673   1215   
index 0000000..fb2420d
 1674         -
-- /dev/null
        1216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1675   1217   
@@ -0,0 +1,7 @@
        1218  +
GET
        1219  +
/
        1220  +
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
        1221  +
host:example.amazonaws.com
        1222  +
        1223  +
host
        1224  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1676   1225   
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
 1677   1226   
new file mode 100644
 1678   1227   
index 0000000..da5c905
 1679         -
-- /dev/null
        1228  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1680   1229   
@@ -0,0 +1 @@
        1230  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1681   1231   
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
 1682   1232   
new file mode 100644
 1683   1233   
index 0000000..2e47f69
 1684         -
-- /dev/null
        1234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1685   1235   
@@ -0,0 +1,3 @@
        1236  +
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
        1237  +
Host:example.amazonaws.com
        1238  +
 1686   1239   
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
 1687   1240   
new file mode 100644
 1688   1241   
index 0000000..d837e67
 1689         -
-- /dev/null
        1242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1690   1243   
@@ -0,0 +1,4 @@
        1244  +
AWS4-HMAC-SHA256
        1245  +
20150830T123600Z
        1246  +
20150830/us-east-1/service/aws4_request
        1247  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1691   1248   
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
 1692   1249   
similarity index 100%
 1693   1250   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1694   1251   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1695   1252   
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
 1696   1253   
similarity index 99%
 1697   1254   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1698   1255   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1699   1256   
index afe367b..7bee5c7 100644
 1700   1257   
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
 1701   1258   
new file mode 100644
 1702   1259   
index 0000000..5159048
 1703         -
-- /dev/null
        1260  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1704   1261   
@@ -0,0 +1,8 @@
        1262  +
GET
        1263  +
/./
        1264  +
        1265  +
host:example.amazonaws.com
        1266  +
x-amz-date:20150830T123600Z
        1267  +
        1268  +
host;x-amz-date
        1269  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1705   1270   
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
 1706   1271   
new file mode 100644
 1707   1272   
index 0000000..b49ff0e
 1708         -
-- /dev/null
        1273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1709   1274   
@@ -0,0 +1 @@
        1275  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1710   1276   
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
 1711   1277   
new file mode 100644
 1712   1278   
index 0000000..aeb1ffa
 1713         -
-- /dev/null
        1279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1714   1280   
@@ -0,0 +1,5 @@
        1281  +
GET /./ HTTP/1.1
        1282  +
Host:example.amazonaws.com
        1283  +
X-Amz-Date:20150830T123600Z
        1284  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1285  +
 1715   1286   
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
 1716   1287   
new file mode 100644
 1717   1288   
index 0000000..b7d8caf
 1718         -
-- /dev/null
        1289  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1719   1290   
@@ -0,0 +1,4 @@
        1291  +
AWS4-HMAC-SHA256
        1292  +
20150830T123600Z
        1293  +
20150830/us-east-1/service/aws4_request
        1294  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1720   1295   
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
 1721   1296   
new file mode 100644
 1722   1297   
index 0000000..d4e029e
 1723         -
-- /dev/null
        1298  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1724   1299   
@@ -0,0 +1,7 @@
        1300  +
GET
        1301  +
/./
        1302  +
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
        1303  +
host:example.amazonaws.com
        1304  +
        1305  +
host
        1306  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1725   1307   
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
 1726   1308   
new file mode 100644
 1727   1309   
index 0000000..fe8f4cc
 1728         -
-- /dev/null
        1310  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1729   1311   
@@ -0,0 +1 @@
        1312  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1730   1313   
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
 1731   1314   
new file mode 100644
 1732   1315   
index 0000000..dcc4fc4
 1733         -
-- /dev/null
        1316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1734   1317   
@@ -0,0 +1,3 @@
        1318  +
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
        1319  +
Host:example.amazonaws.com
        1320  +
 1735   1321   
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
 1736   1322   
new file mode 100644
 1737   1323   
index 0000000..5fb3ada
 1738         -
-- /dev/null
        1324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1739   1325   
@@ -0,0 +1,4 @@
        1326  +
AWS4-HMAC-SHA256
        1327  +
20150830T123600Z
        1328  +
20150830/us-east-1/service/aws4_request
        1329  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1740   1330   
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
 1741   1331   
similarity index 100%
 1742   1332   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1743   1333   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1744   1334   
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
 1745   1335   
new file mode 100644
 1746   1336   
index 0000000..0468d80
 1747         -
-- /dev/null
        1337  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1748   1338   
@@ -0,0 +1,12 @@
        1339  +
{
        1340  +
    "credentials": {
        1341  +
        "access_key_id": "AKIDEXAMPLE",
        1342  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1343  +
    },
        1344  +
    "expiration_in_seconds": 3600,
        1345  +
    "normalize": true,
        1346  +
    "region": "us-east-1",
        1347  +
    "service": "service",
        1348  +
    "sign_body": false,
        1349  +
    "timestamp": "2015-08-30T12:36:00Z"
        1350  +
}
              \
 No newline at end of file
 1749   1351   
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
 1750   1352   
similarity index 100%
 1751   1353   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1752   1354   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1753   1355   
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
 1754   1356   
new file mode 100644
 1755   1357   
index 0000000..87f295f
 1756         -
-- /dev/null
        1358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1757   1359   
@@ -0,0 +1 @@
        1360  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1758   1361   
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
 1759   1362   
new file mode 100644
 1760   1363   
index 0000000..b91087b
 1761         -
-- /dev/null
        1364  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1762   1365   
@@ -0,0 +1,5 @@
        1366  +
GET // HTTP/1.1
        1367  +
Host:example.amazonaws.com
        1368  +
X-Amz-Date:20150830T123600Z
        1369  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1370  +
 1763   1371   
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
 1764   1372   
similarity index 100%
 1765   1373   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1766   1374   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1767   1375   
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
 1768   1376   
new file mode 100644
 1769   1377   
index 0000000..fb2420d
 1770         -
-- /dev/null
        1378  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1771   1379   
@@ -0,0 +1,7 @@
        1380  +
GET
        1381  +
/
        1382  +
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
        1383  +
host:example.amazonaws.com
        1384  +
        1385  +
host
        1386  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1772   1387   
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
 1773   1388   
new file mode 100644
 1774   1389   
index 0000000..da5c905
 1775         -
-- /dev/null
        1390  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1776   1391   
@@ -0,0 +1 @@
        1392  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1777   1393   
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
 1778   1394   
new file mode 100644
 1779   1395   
index 0000000..0290ba4
 1780         -
-- /dev/null
        1396  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1781   1397   
@@ -0,0 +1,3 @@
        1398  +
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
        1399  +
Host:example.amazonaws.com
        1400  +
 1782   1401   
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
 1783   1402   
new file mode 100644
 1784   1403   
index 0000000..d837e67
 1785         -
-- /dev/null
        1404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1786   1405   
@@ -0,0 +1,4 @@
        1406  +
AWS4-HMAC-SHA256
        1407  +
20150830T123600Z
        1408  +
20150830/us-east-1/service/aws4_request
        1409  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1787   1410   
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
 1788   1411   
similarity index 100%
 1789   1412   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1790   1413   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1791   1414   
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
 1792   1415   
new file mode 100644
 1793   1416   
index 0000000..0468d80
 1794         -
-- /dev/null
        1417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1795   1418   
@@ -0,0 +1,12 @@
        1419  +
{
        1420  +
    "credentials": {
        1421  +
        "access_key_id": "AKIDEXAMPLE",
        1422  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1423  +
    },
        1424  +
    "expiration_in_seconds": 3600,
        1425  +
    "normalize": true,
        1426  +
    "region": "us-east-1",
        1427  +
    "service": "service",
        1428  +
    "sign_body": false,
        1429  +
    "timestamp": "2015-08-30T12:36:00Z"
        1430  +
}
              \
 No newline at end of file
 1796   1431   
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
 1797   1432   
similarity index 100%
 1798   1433   
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
 1799   1434   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1800   1435   
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
 1801   1436   
new file mode 100644
 1802   1437   
index 0000000..8f892bf
 1803         -
-- /dev/null
        1438  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1804   1439   
@@ -0,0 +1 @@
        1440  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1805   1441   
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
 1806   1442   
new file mode 100644
 1807   1443   
index 0000000..2a1895c
 1808         -
-- /dev/null
        1444  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1809   1445   
@@ -0,0 +1,5 @@
        1446  +
GET /./example HTTP/1.1
        1447  +
Host:example.amazonaws.com
        1448  +
X-Amz-Date:20150830T123600Z
        1449  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1450  +
 1810   1451   
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
 1811   1452   
similarity index 100%
 1812   1453   
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
 1813   1454   
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
 1814   1455   
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
 1815   1456   
new file mode 100644
 1816   1457   
index 0000000..99dfc2a
 1817         -
-- /dev/null
        1458  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1818   1459   
@@ -0,0 +1,7 @@
        1460  +
GET
        1461  +
/example
        1462  +
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
        1463  +
host:example.amazonaws.com
        1464  +
        1465  +
host
        1466  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1819   1467   
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
 1820   1468   
new file mode 100644
 1821   1469   
index 0000000..fcd7a17
 1822         -
-- /dev/null
        1470  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1823   1471   
@@ -0,0 +1 @@
        1472  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1824   1473   
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
 1825   1474   
new file mode 100644
 1826   1475   
index 0000000..f671de2
 1827         -
-- /dev/null
        1476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1828   1477   
@@ -0,0 +1,3 @@
        1478  +
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
        1479  +
Host:example.amazonaws.com
        1480  +
 1829   1481   
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
 1830   1482   
new file mode 100644
 1831   1483   
index 0000000..f8456dc
 1832         -
-- /dev/null
        1484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1833   1485   
@@ -0,0 +1,4 @@
        1486  +
AWS4-HMAC-SHA256
        1487  +
20150830T123600Z
        1488  +
20150830/us-east-1/service/aws4_request
        1489  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1834   1490   
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
 1835   1491   
similarity index 100%
 1836   1492   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1837   1493   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1838   1494   
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
 1839   1495   
similarity index 99%
 1840   1496   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1841   1497   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1842   1498   
index afe367b..7bee5c7 100644
 1843   1499   
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
 1844   1500   
new file mode 100644
 1845   1501   
index 0000000..36698c7
 1846         -
-- /dev/null
        1502  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1847   1503   
@@ -0,0 +1,8 @@
        1504  +
GET
        1505  +
/./example
        1506  +
        1507  +
host:example.amazonaws.com
        1508  +
x-amz-date:20150830T123600Z
        1509  +
        1510  +
host;x-amz-date
        1511  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1848   1512   
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
 1849   1513   
new file mode 100644
 1850   1514   
index 0000000..4a4b8f2
 1851         -
-- /dev/null
        1515  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1852   1516   
@@ -0,0 +1 @@
        1517  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1853   1518   
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
 1854   1519   
new file mode 100644
 1855   1520   
index 0000000..d462bcd
 1856         -
-- /dev/null
        1521  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1857   1522   
@@ -0,0 +1,5 @@
        1523  +
GET /./example HTTP/1.1
        1524  +
Host:example.amazonaws.com
        1525  +
X-Amz-Date:20150830T123600Z
        1526  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1527  +
 1858   1528   
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
 1859   1529   
new file mode 100644
 1860   1530   
index 0000000..8be78c9
 1861         -
-- /dev/null
        1531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1862   1532   
@@ -0,0 +1,4 @@
        1533  +
AWS4-HMAC-SHA256
        1534  +
20150830T123600Z
        1535  +
20150830/us-east-1/service/aws4_request
        1536  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1863   1537   
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
 1864   1538   
new file mode 100644
 1865   1539   
index 0000000..fe1103c
 1866         -
-- /dev/null
        1540  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1867   1541   
@@ -0,0 +1,7 @@
        1542  +
GET
        1543  +
/./example
        1544  +
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
        1545  +
host:example.amazonaws.com
        1546  +
        1547  +
host
        1548  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1868   1549   
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
 1869   1550   
new file mode 100644
 1870   1551   
index 0000000..ce80762
 1871         -
-- /dev/null
        1552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1872   1553   
@@ -0,0 +1 @@
        1554  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1873   1555   
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
 1874   1556   
new file mode 100644
 1875   1557   
index 0000000..30841a6
 1876         -
-- /dev/null
        1558  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1877   1559   
@@ -0,0 +1,3 @@
        1560  +
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
        1561  +
Host:example.amazonaws.com
        1562  +
 1878   1563   
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
 1879   1564   
new file mode 100644
 1880   1565   
index 0000000..5c66509
 1881         -
-- /dev/null
        1566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1882   1567   
@@ -0,0 +1,4 @@
        1568  +
AWS4-HMAC-SHA256
        1569  +
20150830T123600Z
        1570  +
20150830/us-east-1/service/aws4_request
        1571  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1883   1572   
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
 1884   1573   
similarity index 100%
 1885   1574   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1886   1575   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1887   1576   
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
 1888   1577   
new file mode 100644
 1889   1578   
index 0000000..7bee5c7
 1890         -
-- /dev/null
        1579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1891   1580   
@@ -0,0 +1,12 @@
        1581  +
{
        1582  +
    "credentials": {
        1583  +
        "access_key_id": "AKIDEXAMPLE",
        1584  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1585  +
    },
        1586  +
    "expiration_in_seconds": 3600,
        1587  +
    "normalize": false,
        1588  +
    "region": "us-east-1",
        1589  +
    "service": "service",
        1590  +
    "sign_body": false,
        1591  +
    "timestamp": "2015-08-30T12:36:00Z"
        1592  +
}
              \
 No newline at end of file
 1892   1593   
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
 1893   1594   
new file mode 100644
 1894   1595   
index 0000000..5860c8a
 1895         -
-- /dev/null
        1596  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1896   1597   
@@ -0,0 +1,8 @@
        1598  +
GET
        1599  +
//
        1600  +
        1601  +
host:example.amazonaws.com
        1602  +
x-amz-date:20150830T123600Z
        1603  +
        1604  +
host;x-amz-date
        1605  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1897   1606   
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
 1898   1607   
new file mode 100644
 1899   1608   
index 0000000..8310471
 1900         -
-- /dev/null
        1609  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1901   1610   
@@ -0,0 +1 @@
        1611  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1902   1612   
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
 1903   1613   
new file mode 100644
 1904   1614   
index 0000000..2a7afef
 1905         -
-- /dev/null
        1615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1906   1616   
@@ -0,0 +1,5 @@
        1617  +
GET // HTTP/1.1
        1618  +
Host:example.amazonaws.com
        1619  +
X-Amz-Date:20150830T123600Z
        1620  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1621  +
 1907   1622   
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
 1908   1623   
new file mode 100644
 1909   1624   
index 0000000..06059dd
 1910         -
-- /dev/null
        1625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1911   1626   
@@ -0,0 +1,4 @@
        1627  +
AWS4-HMAC-SHA256
        1628  +
20150830T123600Z
        1629  +
20150830/us-east-1/service/aws4_request
        1630  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1912   1631   
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
 1913   1632   
new file mode 100644
 1914   1633   
index 0000000..6d63aef
 1915         -
-- /dev/null
        1634  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1916   1635   
@@ -0,0 +1,7 @@
        1636  +
GET
        1637  +
//
        1638  +
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
        1639  +
host:example.amazonaws.com
        1640  +
        1641  +
host
        1642  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1917   1643   
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
 1918   1644   
new file mode 100644
 1919   1645   
index 0000000..e5b7b6c
 1920         -
-- /dev/null
        1646  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1921   1647   
@@ -0,0 +1 @@
        1648  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1922   1649   
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
 1923   1650   
new file mode 100644
 1924   1651   
index 0000000..46fe3fd
 1925         -
-- /dev/null
        1652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1926   1653   
@@ -0,0 +1,3 @@
        1654  +
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
        1655  +
Host:example.amazonaws.com
        1656  +
 1927   1657   
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
 1928   1658   
new file mode 100644
 1929   1659   
index 0000000..ea79940
 1930         -
-- /dev/null
        1660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1931   1661   
@@ -0,0 +1,4 @@
        1662  +
AWS4-HMAC-SHA256
        1663  +
20150830T123600Z
        1664  +
20150830/us-east-1/service/aws4_request
        1665  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1932   1666   
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
 1933   1667   
similarity index 100%
 1934   1668   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1935   1669   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1936   1670   
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
 1937   1671   
new file mode 100644
 1938   1672   
index 0000000..0468d80
 1939         -
-- /dev/null
        1673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1940   1674   
@@ -0,0 +1,12 @@
        1675  +
{
        1676  +
    "credentials": {
        1677  +
        "access_key_id": "AKIDEXAMPLE",
        1678  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1679  +
    },
        1680  +
    "expiration_in_seconds": 3600,
        1681  +
    "normalize": true,
        1682  +
    "region": "us-east-1",
        1683  +
    "service": "service",
        1684  +
    "sign_body": false,
        1685  +
    "timestamp": "2015-08-30T12:36:00Z"
        1686  +
}
              \
 No newline at end of file
 1941   1687   
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
 1942   1688   
similarity index 100%
 1943   1689   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1944   1690   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1945   1691   
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
 1946   1692   
new file mode 100644
 1947   1693   
index 0000000..71c7bac
 1948         -
-- /dev/null
        1694  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1949   1695   
@@ -0,0 +1 @@
        1696  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1950   1697   
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
 1951   1698   
new file mode 100644
 1952   1699   
index 0000000..0add1f1
 1953         -
-- /dev/null
        1700  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1954   1701   
@@ -0,0 +1,5 @@
        1702  +
GET //example// HTTP/1.1
        1703  +
Host:example.amazonaws.com
        1704  +
X-Amz-Date:20150830T123600Z
        1705  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1706  +
 1955   1707   
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
 1956   1708   
similarity index 100%
 1957   1709   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1958   1710   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1959   1711   
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
 1960   1712   
new file mode 100644
 1961   1713   
index 0000000..ce72510
 1962         -
-- /dev/null
        1714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1963   1715   
@@ -0,0 +1,7 @@
        1716  +
GET
        1717  +
/example/
        1718  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1719  +
host:example.amazonaws.com
        1720  +
        1721  +
host
        1722  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1964   1723   
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
 1965   1724   
new file mode 100644
 1966   1725   
index 0000000..265f387
 1967         -
-- /dev/null
        1726  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1968   1727   
@@ -0,0 +1 @@
        1728  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1969   1729   
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
 1970   1730   
new file mode 100644
 1971   1731   
index 0000000..e1fcb2e
 1972         -
-- /dev/null
        1732  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1973   1733   
@@ -0,0 +1,3 @@
        1734  +
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
        1735  +
Host:example.amazonaws.com
        1736  +
 1974   1737   
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
 1975   1738   
new file mode 100644
 1976   1739   
index 0000000..a14de61
 1977         -
-- /dev/null
        1740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1978   1741   
@@ -0,0 +1,4 @@
        1742  +
AWS4-HMAC-SHA256
        1743  +
20150830T123600Z
        1744  +
20150830/us-east-1/service/aws4_request
        1745  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1979   1746   
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
 1980   1747   
similarity index 100%
 1981   1748   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1982   1749   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1983   1750   
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
 1984   1751   
new file mode 100644
 1985   1752   
index 0000000..7bee5c7
 1986         -
-- /dev/null
        1753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1987   1754   
@@ -0,0 +1,12 @@
        1755  +
{
        1756  +
    "credentials": {
        1757  +
        "access_key_id": "AKIDEXAMPLE",
        1758  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1759  +
    },
        1760  +
    "expiration_in_seconds": 3600,
        1761  +
    "normalize": false,
        1762  +
    "region": "us-east-1",
        1763  +
    "service": "service",
        1764  +
    "sign_body": false,
        1765  +
    "timestamp": "2015-08-30T12:36:00Z"
        1766  +
}
              \
 No newline at end of file
 1988   1767   
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
 1989   1768   
new file mode 100644
 1990   1769   
index 0000000..dfffaaf
 1991         -
-- /dev/null
        1770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1992   1771   
@@ -0,0 +1,8 @@
        1772  +
GET
        1773  +
//example//
        1774  +
        1775  +
host:example.amazonaws.com
        1776  +
x-amz-date:20150830T123600Z
        1777  +
        1778  +
host;x-amz-date
        1779  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1993   1780   
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
 1994   1781   
new file mode 100644
 1995   1782   
index 0000000..edbcc0d
 1996         -
-- /dev/null
        1783  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1997   1784   
@@ -0,0 +1 @@
        1785  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1998   1786   
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
 1999   1787   
new file mode 100644
 2000   1788   
index 0000000..4cc12dd
 2001         -
-- /dev/null
        1789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 2002   1790   
@@ -0,0 +1,5 @@
        1791  +
GET //example// HTTP/1.1
        1792  +
Host:example.amazonaws.com
        1793  +
X-Amz-Date:20150830T123600Z
        1794  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1795  +
 2003   1796   
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
 2004   1797   
new file mode 100644
 2005   1798   
index 0000000..3eba390
 2006         -
-- /dev/null
        1799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 2007   1800   
@@ -0,0 +1,4 @@
        1801  +
AWS4-HMAC-SHA256
        1802  +
20150830T123600Z
        1803  +
20150830/us-east-1/service/aws4_request
        1804  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 2008   1805   
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
 2009   1806   
new file mode 100644
 2010   1807   
index 0000000..f7844e3
 2011         -
-- /dev/null
        1808  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 2012   1809   
@@ -0,0 +1,7 @@
        1810  +
GET
        1811  +
//example//
        1812  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1813  +
host:example.amazonaws.com
        1814  +
        1815  +
host
        1816  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2013   1817   
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
 2014   1818   
new file mode 100644
 2015   1819   
index 0000000..a8d6b96
 2016         -
-- /dev/null
        1820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 2017   1821   
@@ -0,0 +1 @@
        1822  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 2018   1823   
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
 2019   1824   
new file mode 100644
 2020   1825   
index 0000000..a8322c6
 2021         -
-- /dev/null
        1826  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 2022   1827   
@@ -0,0 +1,3 @@
        1828  +
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
        1829  +
Host:example.amazonaws.com
        1830  +
 2023   1831   
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
 2024   1832   
new file mode 100644
 2025   1833   
index 0000000..068724d
 2026         -
-- /dev/null
        1834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 2027   1835   
@@ -0,0 +1,4 @@
        1836  +
AWS4-HMAC-SHA256
        1837  +
20150830T123600Z
        1838  +
20150830/us-east-1/service/aws4_request
        1839  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 2028   1840   
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
 2029   1841   
similarity index 100%
 2030   1842   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 2031   1843   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 2032   1844   
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
 2033   1845   
new file mode 100644
 2034   1846   
index 0000000..0468d80
 2035         -
-- /dev/null
        1847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 2036   1848   
@@ -0,0 +1,12 @@
        1849  +
{
        1850  +
    "credentials": {
        1851  +
        "access_key_id": "AKIDEXAMPLE",
        1852  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1853  +
    },
        1854  +
    "expiration_in_seconds": 3600,
        1855  +
    "normalize": true,
        1856  +
    "region": "us-east-1",
        1857  +
    "service": "service",
        1858  +
    "sign_body": false,
        1859  +
    "timestamp": "2015-08-30T12:36:00Z"
        1860  +
}
              \
 No newline at end of file
 2037   1861   
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
 2038   1862   
similarity index 100%
 2039   1863   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 2040   1864   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 2041   1865   
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
 2042   1866   
new file mode 100644
 2043   1867   
index 0000000..f63892b
 2044         -
-- /dev/null
        1868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 2045   1869   
@@ -0,0 +1 @@
        1870  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2046   1871   
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
 2047   1872   
new file mode 100644
 2048   1873   
index 0000000..19cd5cb
 2049         -
-- /dev/null
        1874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 2050   1875   
@@ -0,0 +1,5 @@
        1876  +
GET /example space/ HTTP/1.1
        1877  +
Host:example.amazonaws.com
        1878  +
X-Amz-Date:20150830T123600Z
        1879  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1880  +
 2051   1881   
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
 2052   1882   
similarity index 100%
 2053   1883   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 2054   1884   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 2055   1885   
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
 2056   1886   
new file mode 100644
 2057   1887   
index 0000000..fa3d3e2
 2058         -
-- /dev/null
        1888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 2059   1889   
@@ -0,0 +1,7 @@
        1890  +
GET
        1891  +
/example%20space/
        1892  +
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
        1893  +
host:example.amazonaws.com
        1894  +
        1895  +
host
        1896  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2060   1897   
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
 2061   1898   
new file mode 100644
 2062   1899   
index 0000000..5b2e204
 2063         -
-- /dev/null
        1900  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 2064   1901   
@@ -0,0 +1 @@
        1902  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2065   1903   
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
 2066   1904   
new file mode 100644
 2067   1905   
index 0000000..93ca1d0
 2068         -
-- /dev/null
        1906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 2069   1907   
@@ -0,0 +1,3 @@
        1908  +
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
        1909  +
Host:example.amazonaws.com
        1910  +
 2070   1911   
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
 2071   1912   
new file mode 100644
 2072   1913   
index 0000000..b4cb789
 2073         -
-- /dev/null
        1914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 2074   1915   
@@ -0,0 +1,4 @@
        1916  +
AWS4-HMAC-SHA256
        1917  +
20150830T123600Z
        1918  +
20150830/us-east-1/service/aws4_request
        1919  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2075   1920   
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
 2076   1921   
new file mode 100644
 2077   1922   
index 0000000..860a277
 2078         -
-- /dev/null
        1923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 2079   1924   
@@ -0,0 +1,2 @@
        1925  +
GET /example%20space/ HTTP/1.1
        1926  +
Host:example.amazonaws.com
 2080   1927   
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
 2081   1928   
new file mode 100644
 2082   1929   
index 0000000..7bee5c7
 2083         -
-- /dev/null
        1930  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 2084   1931   
@@ -0,0 +1,12 @@
        1932  +
{
        1933  +
    "credentials": {
        1934  +
        "access_key_id": "AKIDEXAMPLE",
        1935  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1936  +
    },
        1937  +
    "expiration_in_seconds": 3600,
        1938  +
    "normalize": false,
        1939  +
    "region": "us-east-1",
        1940  +
    "service": "service",
        1941  +
    "sign_body": false,
        1942  +
    "timestamp": "2015-08-30T12:36:00Z"
        1943  +
}
              \
 No newline at end of file
 2085   1944   
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
 2086   1945   
similarity index 66%
 2087   1946   
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
 2088   1947   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2089   1948   
index 71dc981..124a709 100644
 2090         -
-- 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
        1949  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2091   1950   
@@ -1,9 +1,8 @@
 2092         -
POST
 2093         -
/
        1951  +
GET
        1952  +
/example%20space/
 2094   1953   
 2095         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 2096   1954   
host:example.amazonaws.com
 2097   1955   
x-amz-date:20150830T123600Z
 2098   1956   
 2099   1957   
host;x-amz-date
 2100   1958   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2101   1959   
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
 2102   1960   
new file mode 100644
 2103   1961   
index 0000000..f63892b
 2104         -
-- /dev/null
        1962  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 2105   1963   
@@ -0,0 +1 @@
        1964  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2106   1965   
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
 2107   1966   
new file mode 100644
 2108   1967   
index 0000000..19cd5cb
 2109         -
-- /dev/null
        1968  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 2110   1969   
@@ -0,0 +1,5 @@
        1970  +
GET /example space/ HTTP/1.1
        1971  +
Host:example.amazonaws.com
        1972  +
X-Amz-Date:20150830T123600Z
        1973  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1974  +
 2111   1975   
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
 2112   1976   
new file mode 100644
 2113   1977   
index 0000000..a633f0c
 2114         -
-- /dev/null
        1978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 2115   1979   
@@ -0,0 +1,4 @@
        1980  +
AWS4-HMAC-SHA256
        1981  +
20150830T123600Z
        1982  +
20150830/us-east-1/service/aws4_request
        1983  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 2116   1984   
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
 2117   1985   
new file mode 100644
 2118   1986   
index 0000000..fa3d3e2
 2119         -
-- /dev/null
        1987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 2120   1988   
@@ -0,0 +1,7 @@
        1989  +
GET
        1990  +
/example%20space/
        1991  +
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
        1992  +
host:example.amazonaws.com
        1993  +
        1994  +
host
        1995  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2121   1996   
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
 2122   1997   
new file mode 100644
 2123   1998   
index 0000000..5b2e204
 2124         -
-- /dev/null
        1999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 2125   2000   
@@ -0,0 +1 @@
        2001  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2126   2002   
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
 2127   2003   
new file mode 100644
 2128   2004   
index 0000000..93ca1d0
 2129         -
-- /dev/null
        2005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 2130   2006   
@@ -0,0 +1,3 @@
        2007  +
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
        2008  +
Host:example.amazonaws.com
        2009  +
 2131   2010   
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
 2132   2011   
new file mode 100644
 2133   2012   
index 0000000..b4cb789
 2134         -
-- /dev/null
        2013  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 2135   2014   
@@ -0,0 +1,4 @@
        2015  +
AWS4-HMAC-SHA256
        2016  +
20150830T123600Z
        2017  +
20150830/us-east-1/service/aws4_request
        2018  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2136   2019   
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
 2137   2020   
similarity index 67%
 2138   2021   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 2139   2022   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2140   2023   
index b7d5e8b..ab509ab 100644
 2141         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        2024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2142   2025   
@@ -1,3 +1,2 @@
 2143   2026   
GET /example space/ HTTP/1.1
 2144   2027   
Host:example.amazonaws.com
 2145         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2146   2028   
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
 2147   2029   
new file mode 100644
 2148   2030   
index 0000000..0468d80
 2149         -
-- /dev/null
        2031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 2150   2032   
@@ -0,0 +1,12 @@
        2033  +
{
        2034  +
    "credentials": {
        2035  +
        "access_key_id": "AKIDEXAMPLE",
        2036  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2037  +
    },
        2038  +
    "expiration_in_seconds": 3600,
        2039  +
    "normalize": true,
        2040  +
    "region": "us-east-1",
        2041  +
    "service": "service",
        2042  +
    "sign_body": false,
        2043  +
    "timestamp": "2015-08-30T12:36:00Z"
        2044  +
}
              \
 No newline at end of file
 2151   2045   
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
 2152   2046   
similarity index 100%
 2153   2047   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 2154   2048   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2155   2049   
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
 2156   2050   
new file mode 100644
 2157   2051   
index 0000000..e503354
 2158         -
-- /dev/null
        2052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2159   2053   
@@ -0,0 +1 @@
        2054  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 2160   2055   
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
 2161   2056   
new file mode 100644
 2162   2057   
index 0000000..4367892
 2163         -
-- /dev/null
        2058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2164   2059   
@@ -0,0 +1,5 @@
        2060  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        2061  +
Host:example.amazonaws.com
        2062  +
X-Amz-Date:20150830T123600Z
        2063  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        2064  +
 2165   2065   
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
 2166   2066   
similarity index 100%
 2167   2067   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 2168   2068   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2169   2069   
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
 2170   2070   
new file mode 100644
 2171   2071   
index 0000000..d7f0696
 2172         -
-- /dev/null
        2072  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2173   2073   
@@ -0,0 +1,7 @@
        2074  +
GET
        2075  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        2076  +
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
        2077  +
host:example.amazonaws.com
        2078  +
        2079  +
host
        2080  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2174   2081   
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
 2175   2082   
new file mode 100644
 2176   2083   
index 0000000..509e972
 2177         -
-- /dev/null
        2084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2178   2085   
@@ -0,0 +1 @@
        2086  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 2179   2087   
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
 2180   2088   
new file mode 100644
 2181   2089   
index 0000000..79aad36
 2182         -
-- /dev/null
        2090  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2183   2091   
@@ -0,0 +1,3 @@
        2092  +
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
        2093  +
Host:example.amazonaws.com
        2094  +
 2184   2095   
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
 2185   2096   
new file mode 100644
 2186   2097   
index 0000000..e8068b3
 2187         -
-- /dev/null
        2098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2188   2099   
@@ -0,0 +1,4 @@
        2100  +
AWS4-HMAC-SHA256
        2101  +
20150830T123600Z
        2102  +
20150830/us-east-1/service/aws4_request
        2103  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 2189   2104   
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
 2190   2105   
similarity index 100%
 2191   2106   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 2192   2107   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2193   2108   
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
 2194   2109   
new file mode 100644
 2195   2110   
index 0000000..0468d80
 2196         -
-- /dev/null
        2111  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2197   2112   
@@ -0,0 +1,12 @@
        2113  +
{
        2114  +
    "credentials": {
        2115  +
        "access_key_id": "AKIDEXAMPLE",
        2116  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2117  +
    },
        2118  +
    "expiration_in_seconds": 3600,
        2119  +
    "normalize": true,
        2120  +
    "region": "us-east-1",
        2121  +
    "service": "service",
        2122  +
    "sign_body": false,
        2123  +
    "timestamp": "2015-08-30T12:36:00Z"
        2124  +
}
              \
 No newline at end of file
 2198   2125   
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
 2199   2126   
similarity index 100%
 2200   2127   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 2201   2128   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2202   2129   
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
 2203   2130   
new file mode 100644
 2204   2131   
index 0000000..9a13676
 2205         -
-- /dev/null
        2132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2206   2133   
@@ -0,0 +1 @@
        2134  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 2207   2135   
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
 2208   2136   
new file mode 100644
 2209   2137   
index 0000000..5aaf47c
 2210         -
-- /dev/null
        2138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2211   2139   
@@ -0,0 +1,5 @@
        2140  +
GET /ሴ HTTP/1.1
        2141  +
Host:example.amazonaws.com
        2142  +
X-Amz-Date:20150830T123600Z
        2143  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2144  +
 2212   2145   
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
 2213   2146   
similarity index 100%
 2214   2147   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 2215   2148   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2216   2149   
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
 2217   2150   
new file mode 100644
 2218   2151   
index 0000000..bdb77c9
 2219         -
-- /dev/null
        2152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2220   2153   
@@ -0,0 +1,7 @@
        2154  +
GET
        2155  +
/%E1%88%B4
        2156  +
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
        2157  +
host:example.amazonaws.com
        2158  +
        2159  +
host
        2160  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2221   2161   
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
 2222   2162   
new file mode 100644
 2223   2163   
index 0000000..21342b3
 2224         -
-- /dev/null
        2164  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2225   2165   
@@ -0,0 +1 @@
        2166  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2226   2167   
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
 2227   2168   
new file mode 100644
 2228   2169   
index 0000000..368c2ff
 2229         -
-- /dev/null
        2170  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2230   2171   
@@ -0,0 +1,3 @@
        2172  +
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
        2173  +
Host:example.amazonaws.com
        2174  +
 2231   2175   
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
 2232   2176   
new file mode 100644
 2233   2177   
index 0000000..56b8fbf
 2234         -
-- /dev/null
        2178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2235   2179   
@@ -0,0 +1,4 @@
        2180  +
AWS4-HMAC-SHA256
        2181  +
20150830T123600Z
        2182  +
20150830/us-east-1/service/aws4_request
        2183  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2236   2184   
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
 2237   2185   
similarity index 62%
 2238   2186   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2239   2187   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2240   2188   
index da4808d..9e273f6 100644
 2241         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2189  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2242   2190   
@@ -1,3 +1,2 @@
 2243   2191   
GET /ሴ HTTP/1.1
 2244   2192   
Host:example.amazonaws.com
 2245         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2246   2193   
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
 2247   2194   
new file mode 100644
 2248   2195   
index 0000000..0468d80
 2249         -
-- /dev/null
        2196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2250   2197   
@@ -0,0 +1,12 @@
        2198  +
{
        2199  +
    "credentials": {
        2200  +
        "access_key_id": "AKIDEXAMPLE",
        2201  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2202  +
    },
        2203  +
    "expiration_in_seconds": 3600,
        2204  +
    "normalize": true,
        2205  +
    "region": "us-east-1",
        2206  +
    "service": "service",
        2207  +
    "sign_body": false,
        2208  +
    "timestamp": "2015-08-30T12:36:00Z"
        2209  +
}
              \
 No newline at end of file
 2251   2210   
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
 2252   2211   
similarity index 100%
 2253   2212   
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
 2254   2213   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2255   2214   
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
 2256   2215   
new file mode 100644
 2257   2216   
index 0000000..d7f1c1c
 2258         -
-- /dev/null
        2217  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2259   2218   
@@ -0,0 +1 @@
        2219  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2260   2220   
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
 2261   2221   
new file mode 100644
 2262   2222   
index 0000000..1c60790
 2263         -
-- /dev/null
        2223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2264   2224   
@@ -0,0 +1,5 @@
        2225  +
GET /?Param1=value1 HTTP/1.1
        2226  +
Host:example.amazonaws.com
        2227  +
X-Amz-Date:20150830T123600Z
        2228  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2229  +
 2265   2230   
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
 2266   2231   
similarity index 100%
 2267   2232   
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
 2268   2233   
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
 2269   2234   
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
 2270   2235   
new file mode 100644
 2271   2236   
index 0000000..6a823ed
 2272         -
-- /dev/null
        2237  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2273   2238   
@@ -0,0 +1,7 @@
        2239  +
GET
        2240  +
/
        2241  +
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
        2242  +
host:example.amazonaws.com
        2243  +
        2244  +
host
        2245  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2274   2246   
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
 2275   2247   
new file mode 100644
 2276   2248   
index 0000000..8c77136
 2277         -
-- /dev/null
        2249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2278   2250   
@@ -0,0 +1 @@
        2251  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2279   2252   
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
 2280   2253   
new file mode 100644
 2281   2254   
index 0000000..2d337d8
 2282         -
-- /dev/null
        2255  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2283   2256   
@@ -0,0 +1,3 @@
        2257  +
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
        2258  +
Host:example.amazonaws.com
        2259  +
 2284   2260   
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
 2285   2261   
new file mode 100644
 2286   2262   
index 0000000..191a484
 2287         -
-- /dev/null
        2263  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2288   2264   
@@ -0,0 +1,4 @@
        2265  +
AWS4-HMAC-SHA256
        2266  +
20150830T123600Z
        2267  +
20150830/us-east-1/service/aws4_request
        2268  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2289   2269   
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
 2290   2270   
similarity index 100%
 2291   2271   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2292   2272   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2293   2273   
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
 2294   2274   
new file mode 100644
 2295   2275   
index 0000000..0468d80
 2296         -
-- /dev/null
        2276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2297   2277   
@@ -0,0 +1,12 @@
        2278  +
{
        2279  +
    "credentials": {
        2280  +
        "access_key_id": "AKIDEXAMPLE",
        2281  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2282  +
    },
        2283  +
    "expiration_in_seconds": 3600,
        2284  +
    "normalize": true,
        2285  +
    "region": "us-east-1",
        2286  +
    "service": "service",
        2287  +
    "sign_body": false,
        2288  +
    "timestamp": "2015-08-30T12:36:00Z"
        2289  +
}
              \
 No newline at end of file
 2298   2290   
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
 2299   2291   
new file mode 100644
 2300   2292   
index 0000000..0c8ba21
 2301         -
-- /dev/null
        2293  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2302   2294   
@@ -0,0 +1,8 @@
        2295  +
GET
        2296  +
/
        2297  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2298  +
host:example.amazonaws.com
        2299  +
x-amz-date:20150830T123600Z
        2300  +
        2301  +
host;x-amz-date
        2302  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2303   2303   
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
 2304   2304   
new file mode 100644
 2305   2305   
index 0000000..9ab65ed
 2306         -
-- /dev/null
        2306  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2307   2307   
@@ -0,0 +1 @@
        2308  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2308   2309   
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
 2309   2310   
new file mode 100644
 2310   2311   
index 0000000..0bcdf98
 2311         -
-- /dev/null
        2312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2312   2313   
@@ -0,0 +1,5 @@
        2314  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2315  +
Host:example.amazonaws.com
        2316  +
X-Amz-Date:20150830T123600Z
        2317  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2318  +
 2313   2319   
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
 2314   2320   
new file mode 100644
 2315   2321   
index 0000000..bf674ad
 2316         -
-- /dev/null
        2322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2317   2323   
@@ -0,0 +1,4 @@
        2324  +
AWS4-HMAC-SHA256
        2325  +
20150830T123600Z
        2326  +
20150830/us-east-1/service/aws4_request
        2327  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2318   2328   
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
 2319   2329   
new file mode 100644
 2320   2330   
index 0000000..3f590a4
 2321         -
-- /dev/null
        2331  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2322   2332   
@@ -0,0 +1,7 @@
        2333  +
GET
        2334  +
/
        2335  +
%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
        2336  +
host:example.amazonaws.com
        2337  +
        2338  +
host
        2339  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2323   2340   
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
 2324   2341   
new file mode 100644
 2325   2342   
index 0000000..e225eab
 2326         -
-- /dev/null
        2343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2327   2344   
@@ -0,0 +1 @@
        2345  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2328   2346   
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
 2329   2347   
new file mode 100644
 2330   2348   
index 0000000..6206719
 2331         -
-- /dev/null
        2349  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2332   2350   
@@ -0,0 +1,3 @@
        2351  +
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
        2352  +
Host:example.amazonaws.com
        2353  +
 2333   2354   
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
 2334   2355   
new file mode 100644
 2335   2356   
index 0000000..81a4210
 2336         -
-- /dev/null
        2357  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2337   2358   
@@ -0,0 +1,4 @@
        2359  +
AWS4-HMAC-SHA256
        2360  +
20150830T123600Z
        2361  +
20150830/us-east-1/service/aws4_request
        2362  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2338   2363   
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
 2339   2364   
new file mode 100644
 2340   2365   
index 0000000..368c6e3
 2341         -
-- /dev/null
        2366  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2342   2367   
@@ -0,0 +1,2 @@
        2368  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2369  +
Host:example.amazonaws.com
 2343   2370   
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
 2344   2371   
new file mode 100644
 2345   2372   
index 0000000..0468d80
 2346         -
-- /dev/null
        2373  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2347   2374   
@@ -0,0 +1,12 @@
        2375  +
{
        2376  +
    "credentials": {
        2377  +
        "access_key_id": "AKIDEXAMPLE",
        2378  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2379  +
    },
        2380  +
    "expiration_in_seconds": 3600,
        2381  +
    "normalize": true,
        2382  +
    "region": "us-east-1",
        2383  +
    "service": "service",
        2384  +
    "sign_body": false,
        2385  +
    "timestamp": "2015-08-30T12:36:00Z"
        2386  +
}
              \
 No newline at end of file
 2348   2387   
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
 2349   2388   
similarity index 100%
 2350   2389   
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
 2351   2390   
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
 2352   2391   
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
 2353   2392   
new file mode 100644
 2354   2393   
index 0000000..6a8cb9d
 2355         -
-- /dev/null
        2394  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2356   2395   
@@ -0,0 +1 @@
        2396  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2357   2397   
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
 2358   2398   
new file mode 100644
 2359   2399   
index 0000000..f78a9d2
 2360         -
-- /dev/null
        2400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2361   2401   
@@ -0,0 +1,5 @@
        2402  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2403  +
Host:example.amazonaws.com
        2404  +
X-Amz-Date:20150830T123600Z
        2405  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2406  +
 2362   2407   
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
 2363   2408   
similarity index 100%
 2364   2409   
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
 2365   2410   
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
 2366   2411   
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
 2367   2412   
new file mode 100644
 2368   2413   
index 0000000..a6e1bc7
 2369         -
-- /dev/null
        2414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2370   2415   
@@ -0,0 +1,7 @@
        2416  +
GET
        2417  +
/
        2418  +
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
        2419  +
host:example.amazonaws.com
        2420  +
        2421  +
host
        2422  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2371   2423   
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
 2372   2424   
new file mode 100644
 2373   2425   
index 0000000..d6e6a88
 2374         -
-- /dev/null
        2426  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2375   2427   
@@ -0,0 +1 @@
        2428  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2376   2429   
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
 2377   2430   
new file mode 100644
 2378   2431   
index 0000000..538e2f0
 2379         -
-- /dev/null
        2432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2380   2433   
@@ -0,0 +1,3 @@
        2434  +
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
        2435  +
Host:example.amazonaws.com
        2436  +
 2381   2437   
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
 2382   2438   
new file mode 100644
 2383   2439   
index 0000000..e696085
 2384         -
-- /dev/null
        2440  +
++ 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
 2385   2441   
@@ -0,0 +1,4 @@
        2442  +
AWS4-HMAC-SHA256
        2443  +
20150830T123600Z
        2444  +
20150830/us-east-1/service/aws4_request
        2445  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2386   2446   
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
 2387   2447   
similarity index 100%
 2388   2448   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2389   2449   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2390   2450   
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
 2391   2451   
new file mode 100644
 2392   2452   
index 0000000..0468d80
 2393         -
-- /dev/null
        2453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2394   2454   
@@ -0,0 +1,12 @@
        2455  +
{
        2456  +
    "credentials": {
        2457  +
        "access_key_id": "AKIDEXAMPLE",
        2458  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2459  +
    },
        2460  +
    "expiration_in_seconds": 3600,
        2461  +
    "normalize": true,
        2462  +
    "region": "us-east-1",
        2463  +
    "service": "service",
        2464  +
    "sign_body": false,
        2465  +
    "timestamp": "2015-08-30T12:36:00Z"
        2466  +
}
              \
 No newline at end of file
 2395   2467   
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
 2396   2468   
similarity index 100%
 2397   2469   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2398   2470   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2399   2471   
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
 2400   2472   
new file mode 100644
 2401   2473   
index 0000000..876a64b
 2402         -
-- /dev/null
        2474  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2403   2475   
@@ -0,0 +1 @@
        2476  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2404   2477   
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
 2405   2478   
similarity index 50%
 2406   2479   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2407   2480   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2408   2481   
index ba1ef40..9d0d993 100644
 2409         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2410   2483   
@@ -1,4 +1,5 @@
 2411   2484   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2412   2485   
Host:example.amazonaws.com
 2413   2486   
X-Amz-Date:20150830T123600Z
 2414         -
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
        2487  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2488  +
 2415   2489   
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
 2416   2490   
similarity index 100%
 2417   2491   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2418   2492   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2419   2493   
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
 2420   2494   
new file mode 100644
 2421   2495   
index 0000000..a1bac59
 2422         -
-- /dev/null
        2496  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2423   2497   
@@ -0,0 +1,7 @@
        2498  +
GET
        2499  +
/
        2500  +
-._~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
        2501  +
host:example.amazonaws.com
        2502  +
        2503  +
host
        2504  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2424   2505   
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
 2425   2506   
new file mode 100644
 2426   2507   
index 0000000..41881e9
 2427         -
-- /dev/null
        2508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2428   2509   
@@ -0,0 +1 @@
        2510  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2429   2511   
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
 2430   2512   
new file mode 100644
 2431   2513   
index 0000000..3179076
 2432         -
-- /dev/null
        2514  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2433   2515   
@@ -0,0 +1,3 @@
        2516  +
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
        2517  +
Host:example.amazonaws.com
        2518  +
 2434   2519   
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
 2435   2520   
new file mode 100644
 2436   2521   
index 0000000..6d675fc
 2437         -
-- /dev/null
        2522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2438   2523   
@@ -0,0 +1,4 @@
        2524  +
AWS4-HMAC-SHA256
        2525  +
20150830T123600Z
        2526  +
20150830/us-east-1/service/aws4_request
        2527  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2439   2528   
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
 2440   2529   
similarity index 100%
 2441   2530   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2442   2531   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2443   2532   
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
 2444   2533   
new file mode 100644
 2445   2534   
index 0000000..0468d80
 2446         -
-- /dev/null
        2535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2447   2536   
@@ -0,0 +1,12 @@
        2537  +
{
        2538  +
    "credentials": {
        2539  +
        "access_key_id": "AKIDEXAMPLE",
        2540  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2541  +
    },
        2542  +
    "expiration_in_seconds": 3600,
        2543  +
    "normalize": true,
        2544  +
    "region": "us-east-1",
        2545  +
    "service": "service",
        2546  +
    "sign_body": false,
        2547  +
    "timestamp": "2015-08-30T12:36:00Z"
        2548  +
}
              \
 No newline at end of file
 2448   2549   
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
 2449   2550   
similarity index 100%
 2450   2551   
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
 2451   2552   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2452   2553   
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
 2453   2554   
new file mode 100644
 2454   2555   
index 0000000..87f295f
 2455         -
-- /dev/null
        2556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2456   2557   
@@ -0,0 +1 @@
        2558  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2457   2559   
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
 2458   2560   
new file mode 100644
 2459   2561   
index 0000000..36b86e7
 2460         -
-- /dev/null
        2562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2461   2563   
@@ -0,0 +1,5 @@
        2564  +
GET / HTTP/1.1
        2565  +
Host:example.amazonaws.com
        2566  +
X-Amz-Date:20150830T123600Z
        2567  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2568  +
 2462   2569   
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
 2463   2570   
similarity index 100%
 2464   2571   
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
 2465   2572   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2466   2573   
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
 2467   2574   
new file mode 100644
 2468   2575   
index 0000000..fb2420d
 2469         -
-- /dev/null
        2576  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2470   2577   
@@ -0,0 +1,7 @@
        2578  +
GET
        2579  +
/
        2580  +
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
        2581  +
host:example.amazonaws.com
        2582  +
        2583  +
host
        2584  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2471   2585   
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
 2472   2586   
new file mode 100644
 2473   2587   
index 0000000..da5c905
 2474         -
-- /dev/null
        2588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2475   2589   
@@ -0,0 +1 @@
        2590  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2476   2591   
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
 2477   2592   
new file mode 100644
 2478   2593   
index 0000000..eeb7a8f
 2479         -
-- /dev/null
        2594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2480   2595   
@@ -0,0 +1,3 @@
        2596  +
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
        2597  +
Host:example.amazonaws.com
        2598  +
 2481   2599   
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
 2482   2600   
new file mode 100644
 2483   2601   
index 0000000..d837e67
 2484         -
-- /dev/null
        2602  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2485   2603   
@@ -0,0 +1,4 @@
        2604  +
AWS4-HMAC-SHA256
        2605  +
20150830T123600Z
        2606  +
20150830/us-east-1/service/aws4_request
        2607  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2486   2608   
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
 2487   2609   
similarity index 100%
 2488   2610   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2489   2611   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2490   2612   
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
 2491   2613   
new file mode 100644
 2492   2614   
index 0000000..0468d80
 2493         -
-- /dev/null
        2615  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2494   2616   
@@ -0,0 +1,12 @@
        2617  +
{
        2618  +
    "credentials": {
        2619  +
        "access_key_id": "AKIDEXAMPLE",
        2620  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2621  +
    },
        2622  +
    "expiration_in_seconds": 3600,
        2623  +
    "normalize": true,
        2624  +
    "region": "us-east-1",
        2625  +
    "service": "service",
        2626  +
    "sign_body": false,
        2627  +
    "timestamp": "2015-08-30T12:36:00Z"
        2628  +
}
              \
 No newline at end of file
 2495   2629   
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
 2496   2630   
similarity index 100%
 2497   2631   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2498   2632   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2499   2633   
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
 2500   2634   
new file mode 100644
 2501   2635   
index 0000000..19a2cc9
 2502         -
-- /dev/null
        2636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2503   2637   
@@ -0,0 +1 @@
        2638  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2504   2639   
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
 2505   2640   
new file mode 100644
 2506   2641   
index 0000000..acb13ee
 2507         -
-- /dev/null
        2642  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2508   2643   
@@ -0,0 +1,5 @@
        2644  +
GET /?ሴ=bar HTTP/1.1
        2645  +
Host:example.amazonaws.com
        2646  +
X-Amz-Date:20150830T123600Z
        2647  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2648  +
 2509   2649   
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
 2510   2650   
similarity index 100%
 2511   2651   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2512   2652   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2513   2653   
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
 2514   2654   
new file mode 100644
 2515   2655   
index 0000000..92cee62
 2516         -
-- /dev/null
        2656  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2517   2657   
@@ -0,0 +1,7 @@
        2658  +
GET
        2659  +
/
        2660  +
%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
        2661  +
host:example.amazonaws.com
        2662  +
        2663  +
host
        2664  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2518   2665   
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
 2519   2666   
new file mode 100644
 2520   2667   
index 0000000..c9e49de
 2521         -
-- /dev/null
        2668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2522   2669   
@@ -0,0 +1 @@
        2670  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2523   2671   
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
 2524   2672   
new file mode 100644
 2525   2673   
index 0000000..8f4d8d0
 2526         -
-- /dev/null
        2674  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2527   2675   
@@ -0,0 +1,3 @@
        2676  +
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
        2677  +
Host:example.amazonaws.com
        2678  +
 2528   2679   
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
 2529   2680   
new file mode 100644
 2530   2681   
index 0000000..a6181dc
 2531         -
-- /dev/null
        2682  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2532   2683   
@@ -0,0 +1,4 @@
        2684  +
AWS4-HMAC-SHA256
        2685  +
20150830T123600Z
        2686  +
20150830/us-east-1/service/aws4_request
        2687  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2533   2688   
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
 2534   2689   
similarity index 64%
 2535   2690   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2536   2691   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2537   2692   
index cc2757e..aff333a 100644
 2538         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2693  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2539   2694   
@@ -1,3 +1,2 @@
 2540   2695   
GET /?ሴ=bar HTTP/1.1
 2541   2696   
Host:example.amazonaws.com
 2542         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2543   2697   
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
 2544   2698   
similarity index 99%
 2545   2699   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2546   2700   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2547   2701   
index a457c8a..a334e18 100644
 2548   2702   
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
 2549   2703   
new file mode 100644
 2550   2704   
index 0000000..ccacdeb
 2551         -
-- /dev/null
        2705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2552   2706   
@@ -0,0 +1,9 @@
        2707  +
GET
        2708  +
/
        2709  +
        2710  +
host:example.amazonaws.com
        2711  +
x-amz-date:20150830T123600Z
        2712  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2713  +
        2714  +
host;x-amz-date;x-amz-security-token
        2715  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2553   2716   
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
 2554   2717   
new file mode 100644
 2555   2718   
index 0000000..083e30d
 2556         -
-- /dev/null
        2719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2557   2720   
@@ -0,0 +1 @@
        2721  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2558   2722   
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
 2559   2723   
new file mode 100644
 2560   2724   
index 0000000..5287932
 2561         -
-- /dev/null
        2725  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2562   2726   
@@ -0,0 +1,6 @@
        2727  +
GET / HTTP/1.1
        2728  +
Host:example.amazonaws.com
        2729  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2730  +
X-Amz-Date:20150830T123600Z
        2731  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2732  +
 2563   2733   
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
 2564   2734   
new file mode 100644
 2565   2735   
index 0000000..742b880
 2566         -
-- /dev/null
        2736  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2567   2737   
@@ -0,0 +1,4 @@
        2738  +
AWS4-HMAC-SHA256
        2739  +
20150830T123600Z
        2740  +
20150830/us-east-1/service/aws4_request
        2741  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2568   2742   
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
 2569   2743   
new file mode 100644
 2570   2744   
index 0000000..5e75179
 2571         -
-- /dev/null
        2745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2572   2746   
@@ -0,0 +1,7 @@
        2747  +
GET
        2748  +
/
        2749  +
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
        2750  +
host:example.amazonaws.com
        2751  +
        2752  +
host
        2753  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2573   2754   
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
 2574   2755   
new file mode 100644
 2575   2756   
index 0000000..50b947f
 2576         -
-- /dev/null
        2757  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2577   2758   
@@ -0,0 +1 @@
        2759  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2578   2760   
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
 2579   2761   
new file mode 100644
 2580   2762   
index 0000000..aee910b
 2581         -
-- /dev/null
        2763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2582   2764   
@@ -0,0 +1,3 @@
        2765  +
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
        2766  +
Host:example.amazonaws.com
        2767  +
 2583   2768   
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
 2584   2769   
new file mode 100644
 2585   2770   
index 0000000..04a6c17
 2586         -
-- /dev/null
        2771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2587   2772   
@@ -0,0 +1,4 @@
        2773  +
AWS4-HMAC-SHA256
        2774  +
20150830T123600Z
        2775  +
20150830/us-east-1/service/aws4_request
        2776  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2588   2777   
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
 2589   2778   
similarity index 100%
 2590   2779   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2591   2780   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2592   2781   
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
 2593   2782   
new file mode 100644
 2594   2783   
index 0000000..0468d80
 2595         -
-- /dev/null
        2784  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2596   2785   
@@ -0,0 +1,12 @@
        2786  +
{
        2787  +
    "credentials": {
        2788  +
        "access_key_id": "AKIDEXAMPLE",
        2789  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2790  +
    },
        2791  +
    "expiration_in_seconds": 3600,
        2792  +
    "normalize": true,
        2793  +
    "region": "us-east-1",
        2794  +
    "service": "service",
        2795  +
    "sign_body": false,
        2796  +
    "timestamp": "2015-08-30T12:36:00Z"
        2797  +
}
              \
 No newline at end of file
 2597   2798   
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
 2598   2799   
similarity index 100%
 2599   2800   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2600   2801   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2601   2802   
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
 2602   2803   
new file mode 100644
 2603   2804   
index 0000000..87f295f
 2604         -
-- /dev/null
        2805  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2605   2806   
@@ -0,0 +1 @@
        2807  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2606   2808   
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
 2607   2809   
new file mode 100644
 2608   2810   
index 0000000..36b86e7
 2609         -
-- /dev/null
        2811  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2610   2812   
@@ -0,0 +1,5 @@
        2813  +
GET / HTTP/1.1
        2814  +
Host:example.amazonaws.com
        2815  +
X-Amz-Date:20150830T123600Z
        2816  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2817  +
 2611   2818   
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
 2612   2819   
similarity index 100%
 2613   2820   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2614   2821   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2615   2822   
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
 2616   2823   
new file mode 100644
 2617   2824   
index 0000000..fb2420d
 2618         -
-- /dev/null
        2825  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2619   2826   
@@ -0,0 +1,7 @@
        2827  +
GET
        2828  +
/
        2829  +
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
        2830  +
host:example.amazonaws.com
        2831  +
        2832  +
host
        2833  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2620   2834   
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
 2621   2835   
new file mode 100644
 2622   2836   
index 0000000..da5c905
 2623         -
-- /dev/null
        2837  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2624   2838   
@@ -0,0 +1 @@
        2839  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2625   2840   
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
 2626   2841   
new file mode 100644
 2627   2842   
index 0000000..eeb7a8f
 2628         -
-- /dev/null
        2843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2629   2844   
@@ -0,0 +1,3 @@
        2845  +
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
        2846  +
Host:example.amazonaws.com
        2847  +
 2630   2848   
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
 2631   2849   
new file mode 100644
 2632   2850   
index 0000000..d837e67
 2633         -
-- /dev/null
        2851  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2634   2852   
@@ -0,0 +1,4 @@
        2853  +
AWS4-HMAC-SHA256
        2854  +
20150830T123600Z
        2855  +
20150830/us-east-1/service/aws4_request
        2856  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2635   2857   
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
 2636   2858   
similarity index 100%
 2637   2859   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2638   2860   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2639   2861   
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
 2640   2862   
new file mode 100644
 2641   2863   
index 0000000..0468d80
 2642         -
-- /dev/null
        2864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2643   2865   
@@ -0,0 +1,12 @@
        2866  +
{
        2867  +
    "credentials": {
        2868  +
        "access_key_id": "AKIDEXAMPLE",
        2869  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2870  +
    },
        2871  +
    "expiration_in_seconds": 3600,
        2872  +
    "normalize": true,
        2873  +
    "region": "us-east-1",
        2874  +
    "service": "service",
        2875  +
    "sign_body": false,
        2876  +
    "timestamp": "2015-08-30T12:36:00Z"
        2877  +
}
              \
 No newline at end of file
 2644   2878   
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
 2645   2879   
similarity index 100%
 2646   2880   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2647   2881   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2648   2882   
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
 2649   2883   
new file mode 100644
 2650   2884   
index 0000000..629487f
 2651         -
-- /dev/null
        2885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2652   2886   
@@ -0,0 +1 @@
        2887  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2653   2888   
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
 2654   2889   
new file mode 100644
 2655   2890   
index 0000000..0d99b1c
 2656         -
-- /dev/null
        2891  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2657   2892   
@@ -0,0 +1,5 @@
        2893  +
POST / HTTP/1.1
        2894  +
Host:example.amazonaws.com
        2895  +
X-Amz-Date:20150830T123600Z
        2896  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2897  +
 2658   2898   
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
 2659   2899   
similarity index 100%
 2660   2900   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2661   2901   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2662   2902   
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
 2663   2903   
new file mode 100644
 2664   2904   
index 0000000..d3341e7
 2665         -
-- /dev/null
        2905  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2666   2906   
@@ -0,0 +1,7 @@
        2907  +
POST
        2908  +
/
        2909  +
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
        2910  +
host:example.amazonaws.com
        2911  +
        2912  +
host
        2913  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2667   2914   
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
 2668   2915   
new file mode 100644
 2669   2916   
index 0000000..79f7e0d
 2670         -
-- /dev/null
        2917  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2671   2918   
@@ -0,0 +1 @@
        2919  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2672   2920   
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
 2673   2921   
new file mode 100644
 2674   2922   
index 0000000..94f1b21
 2675         -
-- /dev/null
        2923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2676   2924   
@@ -0,0 +1,3 @@
        2925  +
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
        2926  +
Host:example.amazonaws.com
        2927  +
 2677   2928   
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
 2678   2929   
new file mode 100644
 2679   2930   
index 0000000..e8f335b
 2680         -
-- /dev/null
        2931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2681   2932   
@@ -0,0 +1,4 @@
        2933  +
AWS4-HMAC-SHA256
        2934  +
20150830T123600Z
        2935  +
20150830/us-east-1/service/aws4_request
        2936  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2682   2937   
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
 2683   2938   
similarity index 100%
 2684   2939   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2685   2940   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2686   2941   
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
 2687   2942   
new file mode 100644
 2688   2943   
index 0000000..0468d80
 2689         -
-- /dev/null
        2944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2690   2945   
@@ -0,0 +1,12 @@
        2946  +
{
        2947  +
    "credentials": {
        2948  +
        "access_key_id": "AKIDEXAMPLE",
        2949  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2950  +
    },
        2951  +
    "expiration_in_seconds": 3600,
        2952  +
    "normalize": true,
        2953  +
    "region": "us-east-1",
        2954  +
    "service": "service",
        2955  +
    "sign_body": false,
        2956  +
    "timestamp": "2015-08-30T12:36:00Z"
        2957  +
}
              \
 No newline at end of file
 2691   2958   
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
 2692   2959   
similarity index 100%
 2693   2960   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2694   2961   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2695   2962   
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
 2696   2963   
new file mode 100644
 2697   2964   
index 0000000..e4e6428
 2698         -
-- /dev/null
        2965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2699   2966   
@@ -0,0 +1 @@
        2967  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2700   2968   
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
 2701   2969   
new file mode 100644
 2702   2970   
index 0000000..e3778f5
 2703         -
-- /dev/null
        2971  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2704   2972   
@@ -0,0 +1,6 @@
        2973  +
POST / HTTP/1.1
        2974  +
Host:example.amazonaws.com
        2975  +
My-Header1:value1
        2976  +
X-Amz-Date:20150830T123600Z
        2977  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2978  +
 2705   2979   
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
 2706   2980   
similarity index 100%
 2707   2981   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2708   2982   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2709   2983   
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
 2710   2984   
new file mode 100644
 2711   2985   
index 0000000..bd7c937
 2712         -
-- /dev/null
        2986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2713   2987   
@@ -0,0 +1,8 @@
        2988  +
POST
        2989  +
/
        2990  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host%3Bmy-header1
        2991  +
host:example.amazonaws.com
        2992  +
my-header1:value1
        2993  +
        2994  +
host;my-header1
        2995  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2714   2996   
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
 2715   2997   
new file mode 100644
 2716   2998   
index 0000000..0416f13
 2717         -
-- /dev/null
        2999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2718   3000   
@@ -0,0 +1 @@
        3001  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2719   3002   
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
 2720   3003   
new file mode 100644
 2721   3004   
index 0000000..5e6522f
 2722         -
-- /dev/null
        3005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2723   3006   
@@ -0,0 +1,4 @@
        3007  +
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
        3008  +
Host:example.amazonaws.com
        3009  +
My-Header1:value1
        3010  +
 2724   3011   
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
 2725   3012   
new file mode 100644
 2726   3013   
index 0000000..d06d1df
 2727         -
-- /dev/null
        3014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2728   3015   
@@ -0,0 +1,4 @@
        3016  +
AWS4-HMAC-SHA256
        3017  +
20150830T123600Z
        3018  +
20150830/us-east-1/service/aws4_request
        3019  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2729   3020   
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
 2730   3021   
similarity index 100%
 2731   3022   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2732   3023   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2733   3024   
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
 2734   3025   
new file mode 100644
 2735   3026   
index 0000000..0468d80
 2736         -
-- /dev/null
        3027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2737   3028   
@@ -0,0 +1,12 @@
        3029  +
{
        3030  +
    "credentials": {
        3031  +
        "access_key_id": "AKIDEXAMPLE",
        3032  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3033  +
    },
        3034  +
    "expiration_in_seconds": 3600,
        3035  +
    "normalize": true,
        3036  +
    "region": "us-east-1",
        3037  +
    "service": "service",
        3038  +
    "sign_body": false,
        3039  +
    "timestamp": "2015-08-30T12:36:00Z"
        3040  +
}
              \
 No newline at end of file
 2738   3041   
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
 2739   3042   
similarity index 100%
 2740   3043   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2741   3044   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2742   3045   
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
 2743   3046   
new file mode 100644
 2744   3047   
index 0000000..bb3809c
 2745         -
-- /dev/null
        3048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2746   3049   
@@ -0,0 +1 @@
        3050  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2747   3051   
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
 2748   3052   
new file mode 100644
 2749   3053   
index 0000000..10f6761
 2750         -
-- /dev/null
        3054  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2751   3055   
@@ -0,0 +1,6 @@
        3056  +
POST / HTTP/1.1
        3057  +
Host:example.amazonaws.com
        3058  +
My-Header1:VALUE1
        3059  +
X-Amz-Date:20150830T123600Z
        3060  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        3061  +
 2752   3062   
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
 2753   3063   
similarity index 100%
 2754   3064   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2755   3065   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2756   3066   
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
 2757   3067   
new file mode 100644
 2758   3068   
index 0000000..f84856f
 2759         -
-- /dev/null
        3069  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2760   3070   
@@ -0,0 +1,8 @@
        3071  +
POST
        3072  +
/
        3073  +
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
        3074  +
host:example.amazonaws.com
        3075  +
my-header1:VALUE1
        3076  +
        3077  +
host;my-header1
        3078  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2761   3079   
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
 2762   3080   
new file mode 100644
 2763   3081   
index 0000000..a9d3cac
 2764         -
-- /dev/null
        3082  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2765   3083   
@@ -0,0 +1 @@
        3084  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2766   3085   
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
 2767   3086   
new file mode 100644
 2768   3087   
index 0000000..cf96c7c
 2769         -
-- /dev/null
        3088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2770   3089   
@@ -0,0 +1,4 @@
        3090  +
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
        3091  +
Host:example.amazonaws.com
        3092  +
My-Header1:VALUE1
        3093  +
 2771   3094   
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
 2772   3095   
new file mode 100644
 2773   3096   
index 0000000..47ef566
 2774         -
-- /dev/null
        3097  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2775   3098   
@@ -0,0 +1,4 @@
        3099  +
AWS4-HMAC-SHA256
        3100  +
20150830T123600Z
        3101  +
20150830/us-east-1/service/aws4_request
        3102  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2776   3103   
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
 2777   3104   
similarity index 100%
 2778   3105   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2779   3106   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2780   3107   
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
 2781   3108   
similarity index 100%
 2782   3109   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2783   3110   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2784   3111   
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
 2785   3112   
similarity index 100%
 2786   3113   
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
 2787   3114   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2788   3115   
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
 2789   3116   
new file mode 100644
 2790   3117   
index 0000000..629487f
 2791         -
-- /dev/null
        3118  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2792   3119   
@@ -0,0 +1 @@
        3120  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2793   3121   
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
 2794   3122   
similarity index 67%
 2795   3123   
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
 2796   3124   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2797   3125   
index 291ed07..f96ff9e 100644
 2798         -
-- 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
        3126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2799   3127   
@@ -1,5 +1,6 @@
 2800   3128   
POST / HTTP/1.1
 2801   3129   
Host:example.amazonaws.com
 2802         -
X-Amz-Date:20150830T123600Z
 2803   3130   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2804         -
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
        3131  +
X-Amz-Date:20150830T123600Z
        3132  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3133  +
 2805   3134   
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
 2806   3135   
similarity index 100%
 2807   3136   
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
 2808   3137   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2809   3138   
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
 2810   3139   
new file mode 100644
 2811   3140   
index 0000000..d3341e7
 2812         -
-- /dev/null
        3141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2813   3142   
@@ -0,0 +1,7 @@
        3143  +
POST
        3144  +
/
        3145  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        3146  +
host:example.amazonaws.com
        3147  +
        3148  +
host
        3149  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2814   3150   
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
 2815   3151   
new file mode 100644
 2816   3152   
index 0000000..79f7e0d
 2817         -
-- /dev/null
        3153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2818   3154   
@@ -0,0 +1 @@
        3155  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2819   3156   
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
 2820   3157   
new file mode 100644
 2821   3158   
index 0000000..4983268
 2822         -
-- /dev/null
        3159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2823   3160   
@@ -0,0 +1,3 @@
        3161  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-Signature=2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b HTTP/1.1
        3162  +
Host:example.amazonaws.com
        3163  +
 2824   3164   
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
 2825   3165   
new file mode 100644
 2826   3166   
index 0000000..e8f335b
 2827         -
-- /dev/null
        3167  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2828   3168   
@@ -0,0 +1,4 @@
        3169  +
AWS4-HMAC-SHA256
        3170  +
20150830T123600Z
        3171  +
20150830/us-east-1/service/aws4_request
        3172  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2829   3173   
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
 2830   3174   
similarity index 100%
 2831   3175   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2832   3176   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2833   3177   
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
 2834   3178   
similarity index 100%
 2835   3179   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2836   3180   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2837   3181   
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
 2838   3182   
similarity index 100%
 2839   3183   
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
 2840   3184   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2841   3185   
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
 2842   3186   
new file mode 100644
 2843   3187   
index 0000000..85a7c29
 2844         -
-- /dev/null
        3188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2845   3189   
@@ -0,0 +1 @@
        3190  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2846   3191   
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
 2847   3192   
similarity index 65%
 2848   3193   
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
 2849   3194   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2850   3195   
index 37b2f04..4d0b143 100644
 2851         -
-- 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
        3196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2852   3197   
@@ -1,5 +1,6 @@
 2853   3198   
POST / HTTP/1.1
 2854   3199   
Host:example.amazonaws.com
 2855         -
X-Amz-Date:20150830T123600Z
 2856   3200   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2857         -
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
        3201  +
X-Amz-Date:20150830T123600Z
        3202  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3203  +
 2858   3204   
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
 2859   3205   
similarity index 100%
 2860   3206   
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
 2861   3207   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2862   3208   
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
 2863   3209   
new file mode 100644
 2864   3210   
index 0000000..57a7bc3
 2865         -
-- /dev/null
        3211  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2866   3212   
@@ -0,0 +1,7 @@
        3213  +
POST
        3214  +
/
        3215  +
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
        3216  +
host:example.amazonaws.com
        3217  +
        3218  +
host
        3219  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2867   3220   
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
 2868   3221   
new file mode 100644
 2869   3222   
index 0000000..eb905d2
 2870         -
-- /dev/null
        3223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2871   3224   
@@ -0,0 +1 @@
        3225  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2872   3226   
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
 2873   3227   
new file mode 100644
 2874   3228   
index 0000000..1d80ec0
 2875         -
-- /dev/null
        3229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2876   3230   
@@ -0,0 +1,3 @@
        3231  +
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
        3232  +
Host:example.amazonaws.com
        3233  +
 2877   3234   
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
 2878   3235   
new file mode 100644
 2879   3236   
index 0000000..bd0239a
 2880         -
-- /dev/null
        3237  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2881   3238   
@@ -0,0 +1,4 @@
        3239  +
AWS4-HMAC-SHA256
        3240  +
20150830T123600Z
        3241  +
20150830/us-east-1/service/aws4_request
        3242  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2882   3243   
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
 2883   3244   
similarity index 100%
 2884   3245   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2885   3246   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2886   3247   
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
 2887   3248   
new file mode 100644
 2888   3249   
index 0000000..0468d80
 2889         -
-- /dev/null
        3250  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2890   3251   
@@ -0,0 +1,12 @@
        3252  +
{
        3253  +
    "credentials": {
        3254  +
        "access_key_id": "AKIDEXAMPLE",
        3255  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3256  +
    },
        3257  +
    "expiration_in_seconds": 3600,
        3258  +
    "normalize": true,
        3259  +
    "region": "us-east-1",
        3260  +
    "service": "service",
        3261  +
    "sign_body": false,
        3262  +
    "timestamp": "2015-08-30T12:36:00Z"
        3263  +
}
              \
 No newline at end of file
 2891   3264   
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
 2892   3265   
similarity index 100%
 2893   3266   
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
 2894   3267   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2895   3268   
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
 2896   3269   
new file mode 100644
 2897   3270   
index 0000000..80ed433
 2898         -
-- /dev/null
        3271  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2899   3272   
@@ -0,0 +1 @@
        3273  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2900   3274   
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
 2901   3275   
new file mode 100644
 2902   3276   
index 0000000..4e614f8
 2903         -
-- /dev/null
        3277  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2904   3278   
@@ -0,0 +1,5 @@
        3279  +
POST /?Param1=value1 HTTP/1.1
        3280  +
Host:example.amazonaws.com
        3281  +
X-Amz-Date:20150830T123600Z
        3282  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3283  +
 2905   3284   
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
 2906   3285   
similarity index 100%
 2907   3286   
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
 2908   3287   
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
 2909   3288   
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
 2910   3289   
new file mode 100644
 2911   3290   
index 0000000..be66403
 2912         -
-- /dev/null
        3291  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2913   3292   
@@ -0,0 +1,7 @@
        3293  +
POST
        3294  +
/
        3295  +
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
        3296  +
host:example.amazonaws.com
        3297  +
        3298  +
host
        3299  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2914   3300   
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
 2915   3301   
new file mode 100644
 2916   3302   
index 0000000..20fd32b
 2917         -
-- /dev/null
        3303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2918   3304   
@@ -0,0 +1 @@
        3305  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2919   3306   
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
 2920   3307   
new file mode 100644
 2921   3308   
index 0000000..d1148d0
 2922         -
-- /dev/null
        3309  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2923   3310   
@@ -0,0 +1,3 @@
        3311  +
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
        3312  +
Host:example.amazonaws.com
        3313  +
 2924   3314   
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
 2925   3315   
new file mode 100644
 2926   3316   
index 0000000..1a77103
 2927         -
-- /dev/null
        3317  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2928   3318   
@@ -0,0 +1,4 @@
        3319  +
AWS4-HMAC-SHA256
        3320  +
20150830T123600Z
        3321  +
20150830/us-east-1/service/aws4_request
        3322  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2929   3323   
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
 2930   3324   
similarity index 100%
 2931   3325   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2932   3326   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2933   3327   
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
 2934   3328   
new file mode 100644
 2935   3329   
index 0000000..0468d80
 2936         -
-- /dev/null
        3330  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2937   3331   
@@ -0,0 +1,12 @@
        3332  +
{
        3333  +
    "credentials": {
        3334  +
        "access_key_id": "AKIDEXAMPLE",
        3335  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3336  +
    },
        3337  +
    "expiration_in_seconds": 3600,
        3338  +
    "normalize": true,
        3339  +
    "region": "us-east-1",
        3340  +
    "service": "service",
        3341  +
    "sign_body": false,
        3342  +
    "timestamp": "2015-08-30T12:36:00Z"
        3343  +
}
              \
 No newline at end of file
 2938   3344   
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
 2939   3345   
similarity index 100%
 2940   3346   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2941   3347   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2942   3348   
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
 2943   3349   
new file mode 100644
 2944   3350   
index 0000000..80ed433
 2945         -
-- /dev/null
        3351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2946   3352   
@@ -0,0 +1 @@
        3353  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2947   3354   
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
 2948   3355   
new file mode 100644
 2949   3356   
index 0000000..4e614f8
 2950         -
-- /dev/null
        3357  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2951   3358   
@@ -0,0 +1,5 @@
        3359  +
POST /?Param1=value1 HTTP/1.1
        3360  +
Host:example.amazonaws.com
        3361  +
X-Amz-Date:20150830T123600Z
        3362  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3363  +
 2952   3364   
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
 2953   3365   
similarity index 100%
 2954   3366   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2955   3367   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2956   3368   
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
 2957   3369   
new file mode 100644
 2958   3370   
index 0000000..be66403
 2959         -
-- /dev/null
        3371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2960   3372   
@@ -0,0 +1,7 @@
        3373  +
POST
        3374  +
/
        3375  +
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
        3376  +
host:example.amazonaws.com
        3377  +
        3378  +
host
        3379  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2961   3380   
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
 2962   3381   
new file mode 100644
 2963   3382   
index 0000000..20fd32b
 2964         -
-- /dev/null
        3383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2965   3384   
@@ -0,0 +1 @@
        3385  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2966   3386   
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
 2967   3387   
new file mode 100644
 2968   3388   
index 0000000..d1148d0
 2969         -
-- /dev/null
        3389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2970   3390   
@@ -0,0 +1,3 @@
        3391  +
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
        3392  +
Host:example.amazonaws.com
        3393  +
 2971   3394   
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
 2972   3395   
new file mode 100644
 2973   3396   
index 0000000..1a77103
 2974         -
-- /dev/null
        3397  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2975   3398   
@@ -0,0 +1,4 @@
        3399  +
AWS4-HMAC-SHA256
        3400  +
20150830T123600Z
        3401  +
20150830/us-east-1/service/aws4_request
        3402  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2976   3403   
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
 2977   3404   
similarity index 100%
 2978   3405   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2979   3406   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2980   3407   
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
 2981   3408   
new file mode 100644
 2982   3409   
index 0000000..0468d80
 2983         -
-- /dev/null
        3410  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2984   3411   
@@ -0,0 +1,12 @@
        3412  +
{
        3413  +
    "credentials": {
        3414  +
        "access_key_id": "AKIDEXAMPLE",
        3415  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3416  +
    },
        3417  +
    "expiration_in_seconds": 3600,
        3418  +
    "normalize": true,
        3419  +
    "region": "us-east-1",
        3420  +
    "service": "service",
        3421  +
    "sign_body": false,
        3422  +
    "timestamp": "2015-08-30T12:36:00Z"
        3423  +
}
              \
 No newline at end of file
 2985   3424   
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
 2986   3425   
similarity index 100%
 2987   3426   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2988   3427   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2989   3428   
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
 2990   3429   
new file mode 100644
 2991   3430   
index 0000000..629487f
 2992         -
-- /dev/null
        3431  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2993   3432   
@@ -0,0 +1 @@
        3433  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2994   3434   
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
 2995   3435   
new file mode 100644
 2996   3436   
index 0000000..0d99b1c
 2997         -
-- /dev/null
        3437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2998   3438   
@@ -0,0 +1,5 @@
        3439  +
POST / HTTP/1.1
        3440  +
Host:example.amazonaws.com
        3441  +
X-Amz-Date:20150830T123600Z
        3442  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3443  +
 2999   3444   
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
 3000   3445   
similarity index 100%
 3001   3446   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 3002   3447   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 3003   3448   
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
 3004   3449   
new file mode 100644
 3005   3450   
index 0000000..d3341e7
 3006         -
-- /dev/null
        3451  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 3007   3452   
@@ -0,0 +1,7 @@
        3453  +
POST
        3454  +
/
        3455  +
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
        3456  +
host:example.amazonaws.com
        3457  +
        3458  +
host
        3459  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3008   3460   
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
 3009   3461   
new file mode 100644
 3010   3462   
index 0000000..79f7e0d
 3011         -
-- /dev/null
        3463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 3012   3464   
@@ -0,0 +1 @@
        3465  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 3013   3466   
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
 3014   3467   
new file mode 100644
 3015   3468   
index 0000000..94f1b21
 3016         -
-- /dev/null
        3469  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 3017   3470   
@@ -0,0 +1,3 @@
        3471  +
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
        3472  +
Host:example.amazonaws.com
        3473  +
 3018   3474   
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
 3019   3475   
new file mode 100644
 3020   3476   
index 0000000..e8f335b
 3021         -
-- /dev/null
        3477  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 3022   3478   
@@ -0,0 +1,4 @@
        3479  +
AWS4-HMAC-SHA256
        3480  +
20150830T123600Z
        3481  +
20150830/us-east-1/service/aws4_request
        3482  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 3023   3483   
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
 3024   3484   
similarity index 100%
 3025   3485   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 3026   3486   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 3027   3487   
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
 3028   3488   
similarity index 99%
 3029   3489   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 3030   3490   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 3031   3491   
index fc4bce6..0db1df1 100644
 3032   3492   
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
 3033   3493   
new file mode 100644
 3034   3494   
index 0000000..c218fdf
 3035         -
-- /dev/null
        3495  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 3036   3496   
@@ -0,0 +1,11 @@
        3497  +
POST
        3498  +
/
        3499  +
        3500  +
content-length:13
        3501  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3502  +
host:example.amazonaws.com
        3503  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3504  +
x-amz-date:20150830T123600Z
        3505  +
        3506  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3507  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3037   3508   
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
 3038   3509   
new file mode 100644
 3039   3510   
index 0000000..836aa8b
 3040         -
-- /dev/null
        3511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 3041   3512   
@@ -0,0 +1 @@
        3513  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 3042   3514   
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
 3043   3515   
new file mode 100644
 3044   3516   
index 0000000..9262d53
 3045         -
-- /dev/null
        3517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 3046   3518   
@@ -0,0 +1,9 @@
        3519  +
POST / HTTP/1.1
        3520  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3521  +
Host:example.amazonaws.com
        3522  +
Content-Length:13
        3523  +
X-Amz-Date:20150830T123600Z
        3524  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3525  +
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
        3526  +
        3527  +
Param1=value1
              \
 No newline at end of file
 3047   3528   
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
 3048   3529   
new file mode 100644
 3049   3530   
index 0000000..ddbdccc
 3050         -
-- /dev/null
        3531  +
++ 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
 3051   3532   
@@ -0,0 +1,4 @@
        3533  +
AWS4-HMAC-SHA256
        3534  +
20150830T123600Z
        3535  +
20150830/us-east-1/service/aws4_request
        3536  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 3052   3537   
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
 3053   3538   
new file mode 100644
 3054   3539   
index 0000000..596a579
 3055         -
-- /dev/null
        3540  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 3056   3541   
@@ -0,0 +1,9 @@
        3542  +
POST
        3543  +
/
        3544  +
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
        3545  +
content-length:13
        3546  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3547  +
host:example.amazonaws.com
        3548  +
        3549  +
content-length;content-type;host
        3550  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3057   3551   
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
 3058   3552   
new file mode 100644
 3059   3553   
index 0000000..bc85cd8
 3060         -
-- /dev/null
        3554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 3061   3555   
@@ -0,0 +1 @@
        3556  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 3062   3557   
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
 3063   3558   
new file mode 100644
 3064   3559   
index 0000000..16b59e5
 3065         -
-- /dev/null
        3560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 3066   3561   
@@ -0,0 +1,6 @@
        3562  +
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
        3563  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3564  +
Host:example.amazonaws.com
        3565  +
Content-Length:13
        3566  +
        3567  +
Param1=value1
              \
 No newline at end of file
 3067   3568   
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
 3068   3569   
new file mode 100644
 3069   3570   
index 0000000..50074af
 3070         -
-- /dev/null
        3571  +
++ 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
 3071   3572   
@@ -0,0 +1,4 @@
        3573  +
AWS4-HMAC-SHA256
        3574  +
20150830T123600Z
        3575  +
20150830/us-east-1/service/aws4_request
        3576  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 3072   3577   
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
 3073   3578   
similarity index 89%
 3074   3579   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 3075   3580   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3076   3581   
index b711c25..8289eaa 100644
 3077   3582   
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
 3078   3583   
similarity index 99%
 3079   3584   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 3080   3585   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3081   3586   
index fc4bce6..0db1df1 100644
 3082   3587   
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
 3083   3588   
new file mode 100644
 3084   3589   
index 0000000..4d116a5
 3085         -
-- /dev/null
        3590  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 3086   3591   
@@ -0,0 +1,11 @@
        3592  +
POST
        3593  +
/
        3594  +
        3595  +
content-length:13
        3596  +
content-type:application/x-www-form-urlencoded
        3597  +
host:example.amazonaws.com
        3598  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3599  +
x-amz-date:20150830T123600Z
        3600  +
        3601  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3602  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3087   3603   
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
 3088   3604   
new file mode 100644
 3089   3605   
index 0000000..0d2ac37
 3090         -
-- /dev/null
        3606  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 3091   3607   
@@ -0,0 +1 @@
        3608  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 3092   3609   
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
 3093   3610   
new file mode 100644
 3094   3611   
index 0000000..bd5e49c
 3095         -
-- /dev/null
        3612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 3096   3613   
@@ -0,0 +1,9 @@
        3614  +
POST / HTTP/1.1
        3615  +
Content-Type:application/x-www-form-urlencoded
        3616  +
Host:example.amazonaws.com
        3617  +
Content-Length:13
        3618  +
X-Amz-Date:20150830T123600Z
        3619  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3620  +
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
        3621  +
        3622  +
Param1=value1
              \
 No newline at end of file
 3097   3623   
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
 3098   3624   
new file mode 100644
 3099   3625   
index 0000000..f1c599c
 3100         -
-- /dev/null
        3626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 3101   3627   
@@ -0,0 +1,4 @@
        3628  +
AWS4-HMAC-SHA256
        3629  +
20150830T123600Z
        3630  +
20150830/us-east-1/service/aws4_request
        3631  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 3102   3632   
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
 3103   3633   
new file mode 100644
 3104   3634   
index 0000000..1fc1bb7
 3105         -
-- /dev/null
        3635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 3106   3636   
@@ -0,0 +1,9 @@
        3637  +
POST
        3638  +
/
        3639  +
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
        3640  +
content-length:13
        3641  +
content-type:application/x-www-form-urlencoded
        3642  +
host:example.amazonaws.com
        3643  +
        3644  +
content-length;content-type;host
        3645  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3107   3646   
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
 3108   3647   
new file mode 100644
 3109   3648   
index 0000000..98c91b3
 3110         -
-- /dev/null
        3649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 3111   3650   
@@ -0,0 +1 @@
        3651  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 3112   3652   
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
 3113   3653   
new file mode 100644
 3114   3654   
index 0000000..055cd7a
 3115         -
-- /dev/null
        3655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 3116   3656   
@@ -0,0 +1,6 @@
        3657  +
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
        3658  +
Content-Type:application/x-www-form-urlencoded
        3659  +
Host:example.amazonaws.com
        3660  +
Content-Length:13
        3661  +
        3662  +
Param1=value1
              \
 No newline at end of file
 3117   3663   
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
 3118   3664   
new file mode 100644
 3119   3665   
index 0000000..db7fc27
 3120         -
-- /dev/null
        3666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 3121   3667   
@@ -0,0 +1,4 @@
        3668  +
AWS4-HMAC-SHA256
        3669  +
20150830T123600Z
        3670  +
20150830/us-east-1/service/aws4_request
        3671  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 3122   3672   
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
 3123   3673   
similarity index 88%
 3124   3674   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 3125   3675   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3126   3676   
index 0091102..760b2d3 100644
 3127   3677   
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
 3128   3678   
new file mode 100644
 3129   3679   
index 0000000..0468d80
 3130         -
-- /dev/null
        3680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 3131   3681   
@@ -0,0 +1,12 @@
        3682  +
{
        3683  +
    "credentials": {
        3684  +
        "access_key_id": "AKIDEXAMPLE",
        3685  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3686  +
    },
        3687  +
    "expiration_in_seconds": 3600,
        3688  +
    "normalize": true,
        3689  +
    "region": "us-east-1",
        3690  +
    "service": "service",
        3691  +
    "sign_body": false,
        3692  +
    "timestamp": "2015-08-30T12:36:00Z"
        3693  +
}
              \
 No newline at end of file
 3132   3694   
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
 3133   3695   
similarity index 99%
 3134   3696   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 3135   3697   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3136   3698   
index ccb5f43..1bc448e 100644
 3137   3699   
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
 3138   3700   
new file mode 100644
 3139   3701   
index 0000000..489c182
 3140         -
-- /dev/null
        3702  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 3141   3703   
@@ -0,0 +1 @@
        3704  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 3142   3705   
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
 3143   3706   
new file mode 100644
 3144   3707   
index 0000000..e1b8dbf
 3145         -
-- /dev/null
        3708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 3146   3709   
@@ -0,0 +1,9 @@
        3710  +
GET / HTTP/1.1
        3711  +
Host:example.amazonaws.com
        3712  +
My-Header1:value2
        3713  +
My-Header1:value2
        3714  +
My-Header1:value1
        3715  +
X-Amz-Date:20150830T123600Z
        3716  +
X-Amz-Region-Set:us-east-1
        3717  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3718  +
 3147   3719   
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
 3148   3720   
similarity index 99%
 3149   3721   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 3150   3722   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3151   3723   
index 8783461..bfc4619 100644
 3152   3724   
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
 3153   3725   
new file mode 100644
 3154   3726   
index 0000000..379dcb2
 3155         -
-- /dev/null
        3727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3156   3728   
@@ -0,0 +1,4 @@
        3729  +
{
        3730  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3731  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3732  +
}
 3157   3733   
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
 3158   3734   
similarity index 99%
 3159   3735   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3160   3736   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3161   3737   
index 9561297..c05c3f5 100644
 3162   3738   
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
 3163   3739   
new file mode 100644
 3164   3740   
index 0000000..de9a4c3
 3165         -
-- /dev/null
        3741  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3166   3742   
@@ -0,0 +1 @@
        3743  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3167   3744   
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
 3168   3745   
new file mode 100644
 3169   3746   
index 0000000..6c6b8c4
 3170         -
-- /dev/null
        3747  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3171   3748   
@@ -0,0 +1,6 @@
        3749  +
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
        3750  +
Host:example.amazonaws.com
        3751  +
My-Header1:value2
        3752  +
My-Header1:value2
        3753  +
My-Header1:value1
        3754  +
 3172   3755   
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
 3173   3756   
similarity index 99%
 3174   3757   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3175   3758   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3176   3759   
index 3140f6f..4eef106 100644
 3177   3760   
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
 3178   3761   
similarity index 78%
 3179   3762   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3180   3763   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3181   3764   
index 08a0364..40455ce 100644
 3182         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3183   3766   
@@ -1,6 +1,5 @@
 3184   3767   
GET / HTTP/1.1
 3185   3768   
Host:example.amazonaws.com
 3186   3769   
My-Header1:value2
 3187   3770   
My-Header1:value2
 3188   3771   
My-Header1:value1
 3189         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3190   3772   
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
 3191   3773   
new file mode 100644
 3192   3774   
index 0000000..0468d80
 3193         -
-- /dev/null
        3775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3194   3776   
@@ -0,0 +1,12 @@
        3777  +
{
        3778  +
    "credentials": {
        3779  +
        "access_key_id": "AKIDEXAMPLE",
        3780  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3781  +
    },
        3782  +
    "expiration_in_seconds": 3600,
        3783  +
    "normalize": true,
        3784  +
    "region": "us-east-1",
        3785  +
    "service": "service",
        3786  +
    "sign_body": false,
        3787  +
    "timestamp": "2015-08-30T12:36:00Z"
        3788  +
}
              \
 No newline at end of file
 3195   3789   
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
 3196   3790   
new file mode 100644
 3197   3791   
index 0000000..69526cd
 3198         -
-- /dev/null
        3792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3199   3793   
@@ -0,0 +1,10 @@
        3794  +
GET
        3795  +
/
        3796  +
        3797  +
host:example.amazonaws.com
        3798  +
my-header1:value1 value2 value3
        3799  +
x-amz-date:20150830T123600Z
        3800  +
x-amz-region-set:us-east-1
        3801  +
        3802  +
host;my-header1;x-amz-date;x-amz-region-set
        3803  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3200   3804   
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
 3201   3805   
new file mode 100644
 3202   3806   
index 0000000..d51b4f3
 3203         -
-- /dev/null
        3807  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3204   3808   
@@ -0,0 +1 @@
        3809  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3205   3810   
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
 3206   3811   
new file mode 100644
 3207   3812   
index 0000000..8131420
 3208         -
-- /dev/null
        3813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3209   3814   
@@ -0,0 +1,9 @@
        3815  +
GET / HTTP/1.1
        3816  +
Host:example.amazonaws.com
        3817  +
My-Header1:value1
        3818  +
  value2
        3819  +
     value3
        3820  +
X-Amz-Date:20150830T123600Z
        3821  +
X-Amz-Region-Set:us-east-1
        3822  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3823  +
 3210   3824   
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
 3211   3825   
new file mode 100644
 3212   3826   
index 0000000..e4d99fa
 3213         -
-- /dev/null
        3827  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3214   3828   
@@ -0,0 +1,4 @@
        3829  +
AWS4-ECDSA-P256-SHA256
        3830  +
20150830T123600Z
        3831  +
20150830/service/aws4_request
        3832  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3215   3833   
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
 3216   3834   
new file mode 100644
 3217   3835   
index 0000000..379dcb2
 3218         -
-- /dev/null
        3836  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3219   3837   
@@ -0,0 +1,4 @@
        3838  +
{
        3839  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3840  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3841  +
}
 3220   3842   
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
 3221   3843   
new file mode 100644
 3222   3844   
index 0000000..3c4d52f
 3223         -
-- /dev/null
        3845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3224   3846   
@@ -0,0 +1,8 @@
        3847  +
GET
        3848  +
/
        3849  +
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
        3850  +
host:example.amazonaws.com
        3851  +
my-header1:value1 value2 value3
        3852  +
        3853  +
host;my-header1
        3854  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3225   3855   
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
 3226   3856   
new file mode 100644
 3227   3857   
index 0000000..4e63f9a
 3228         -
-- /dev/null
        3858  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3229   3859   
@@ -0,0 +1 @@
        3860  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3230   3861   
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
 3231   3862   
new file mode 100644
 3232   3863   
index 0000000..adf1f09
 3233         -
-- /dev/null
        3864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3234   3865   
@@ -0,0 +1,6 @@
        3866  +
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
        3867  +
Host:example.amazonaws.com
        3868  +
My-Header1:value1
        3869  +
  value2
        3870  +
     value3
        3871  +
 3235   3872   
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
 3236   3873   
new file mode 100644
 3237   3874   
index 0000000..e085407
 3238         -
-- /dev/null
        3875  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3239   3876   
@@ -0,0 +1,4 @@
        3877  +
AWS4-ECDSA-P256-SHA256
        3878  +
20150830T123600Z
        3879  +
20150830/service/aws4_request
        3880  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3240   3881   
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
 3241   3882   
new file mode 100644
 3242   3883   
index 0000000..b5026cd
 3243         -
-- /dev/null
        3884  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3244   3885   
@@ -0,0 +1,5 @@
        3886  +
GET / HTTP/1.1
        3887  +
Host:example.amazonaws.com
        3888  +
My-Header1:value1
        3889  +
  value2
        3890  +
     value3
 3245   3891   
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
 3246   3892   
new file mode 100644
 3247   3893   
index 0000000..0468d80
 3248         -
-- /dev/null
        3894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3249   3895   
@@ -0,0 +1,12 @@
        3896  +
{
        3897  +
    "credentials": {
        3898  +
        "access_key_id": "AKIDEXAMPLE",
        3899  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3900  +
    },
        3901  +
    "expiration_in_seconds": 3600,
        3902  +
    "normalize": true,
        3903  +
    "region": "us-east-1",
        3904  +
    "service": "service",
        3905  +
    "sign_body": false,
        3906  +
    "timestamp": "2015-08-30T12:36:00Z"
        3907  +
}
              \
 No newline at end of file
 3250   3908   
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
 3251   3909   
similarity index 99%
 3252   3910   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3253   3911   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3254   3912   
index 9375193..533afdb 100644
 3255   3913   
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
 3256   3914   
new file mode 100644
 3257   3915   
index 0000000..057b426
 3258         -
-- /dev/null
        3916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3259   3917   
@@ -0,0 +1 @@
        3918  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3260   3919   
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
 3261   3920   
new file mode 100644
 3262   3921   
index 0000000..4e4ccf0
 3263         -
-- /dev/null
        3922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3264   3923   
@@ -0,0 +1,10 @@
        3924  +
GET / HTTP/1.1
        3925  +
Host:example.amazonaws.com
        3926  +
My-Header1:value4
        3927  +
My-Header1:value1
        3928  +
My-Header1:value3
        3929  +
My-Header1:value2
        3930  +
X-Amz-Date:20150830T123600Z
        3931  +
X-Amz-Region-Set:us-east-1
        3932  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        3933  +
 3265   3934   
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
 3266   3935   
similarity index 99%
 3267   3936   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3268   3937   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3269   3938   
index 6400baf..e68c952 100644
 3270   3939   
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
 3271   3940   
new file mode 100644
 3272   3941   
index 0000000..379dcb2
 3273         -
-- /dev/null
        3942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3274   3943   
@@ -0,0 +1,4 @@
        3944  +
{
        3945  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3946  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3947  +
}
 3275   3948   
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
 3276   3949   
similarity index 99%
 3277   3950   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3278   3951   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3279   3952   
index ecf494a..68450fe 100644
 3280   3953   
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
 3281   3954   
new file mode 100644
 3282   3955   
index 0000000..9df2eb3
 3283         -
-- /dev/null
        3956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3284   3957   
@@ -0,0 +1 @@
        3958  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3285   3959   
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
 3286   3960   
new file mode 100644
 3287   3961   
index 0000000..62f8cb7
 3288         -
-- /dev/null
        3962  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3289   3963   
@@ -0,0 +1,7 @@
        3964  +
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
        3965  +
Host:example.amazonaws.com
        3966  +
My-Header1:value4
        3967  +
My-Header1:value1
        3968  +
My-Header1:value3
        3969  +
My-Header1:value2
        3970  +
 3290   3971   
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
 3291   3972   
similarity index 99%
 3292   3973   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3293   3974   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3294   3975   
index b584179..2bcf7b1 100644
 3295   3976   
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
 3296   3977   
similarity index 80%
 3297   3978   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3298   3979   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3299   3980   
index f7bd9e6..2c6f49d 100644
 3300         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        3981  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3301   3982   
@@ -1,7 +1,6 @@
 3302   3983   
GET / HTTP/1.1
 3303   3984   
Host:example.amazonaws.com
 3304   3985   
My-Header1:value4
 3305   3986   
My-Header1:value1
 3306   3987   
My-Header1:value3
 3307   3988   
My-Header1:value2
 3308         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3309   3989   
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
 3310   3990   
new file mode 100644
 3311   3991   
index 0000000..0468d80
 3312         -
-- /dev/null
        3992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3313   3993   
@@ -0,0 +1,12 @@
        3994  +
{
        3995  +
    "credentials": {
        3996  +
        "access_key_id": "AKIDEXAMPLE",
        3997  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3998  +
    },
        3999  +
    "expiration_in_seconds": 3600,
        4000  +
    "normalize": true,
        4001  +
    "region": "us-east-1",
        4002  +
    "service": "service",
        4003  +
    "sign_body": false,
        4004  +
    "timestamp": "2015-08-30T12:36:00Z"
        4005  +
}
              \
 No newline at end of file
 3314   4006   
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
 3315   4007   
similarity index 99%
 3316   4008   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3317   4009   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3318   4010   
index e91e952..94b6be5 100644
 3319   4011   
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
 3320   4012   
new file mode 100644
 3321   4013   
index 0000000..bf8c3cb
 3322         -
-- /dev/null
        4014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3323   4015   
@@ -0,0 +1 @@
        4016  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3324   4017   
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
 3325   4018   
new file mode 100644
 3326   4019   
index 0000000..f7f054d
 3327         -
-- /dev/null
        4020  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3328   4021   
@@ -0,0 +1,8 @@
        4022  +
GET / HTTP/1.1
        4023  +
Host:example.amazonaws.com
        4024  +
My-Header1: value1
        4025  +
My-Header2: "a   b   c"
        4026  +
X-Amz-Date:20150830T123600Z
        4027  +
X-Amz-Region-Set:us-east-1
        4028  +
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
        4029  +
 3329   4030   
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
 3330   4031   
similarity index 99%
 3331   4032   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3332   4033   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3333   4034   
index 0e407d8..a2c9c05 100644
 3334   4035   
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
 3335   4036   
new file mode 100644
 3336   4037   
index 0000000..379dcb2
 3337         -
-- /dev/null
        4038  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3338   4039   
@@ -0,0 +1,4 @@
        4040  +
{
        4041  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4042  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4043  +
}
 3339   4044   
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
 3340   4045   
similarity index 99%
 3341   4046   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3342   4047   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3343   4048   
index 8a3b042..3a51150 100644
 3344   4049   
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
 3345   4050   
new file mode 100644
 3346   4051   
index 0000000..0033053
 3347         -
-- /dev/null
        4052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3348   4053   
@@ -0,0 +1 @@
        4054  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3349   4055   
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
 3350   4056   
new file mode 100644
 3351   4057   
index 0000000..1537888
 3352         -
-- /dev/null
        4058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3353   4059   
@@ -0,0 +1,5 @@
        4060  +
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
        4061  +
Host:example.amazonaws.com
        4062  +
My-Header1: value1
        4063  +
My-Header2: "a   b   c"
        4064  +
 3354   4065   
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
 3355   4066   
similarity index 99%
 3356   4067   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3357   4068   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3358   4069   
index 5eead25..633dc1f 100644
 3359   4070   
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
 3360   4071   
similarity index 75%
 3361   4072   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3362   4073   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3363   4074   
index 901f36c..ad1ea98 100644
 3364         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4075  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3365   4076   
@@ -1,5 +1,4 @@
 3366   4077   
GET / HTTP/1.1
 3367   4078   
Host:example.amazonaws.com
 3368   4079   
My-Header1: value1
 3369   4080   
My-Header2: "a   b   c"
 3370         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3371   4081   
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
 3372   4082   
new file mode 100644
 3373   4083   
index 0000000..0468d80
 3374         -
-- /dev/null
        4084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3375   4085   
@@ -0,0 +1,12 @@
        4086  +
{
        4087  +
    "credentials": {
        4088  +
        "access_key_id": "AKIDEXAMPLE",
        4089  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4090  +
    },
        4091  +
    "expiration_in_seconds": 3600,
        4092  +
    "normalize": true,
        4093  +
    "region": "us-east-1",
        4094  +
    "service": "service",
        4095  +
    "sign_body": false,
        4096  +
    "timestamp": "2015-08-30T12:36:00Z"
        4097  +
}
              \
 No newline at end of file
 3376   4098   
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
 3377   4099   
similarity index 99%
 3378   4100   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3379   4101   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3380   4102   
index 47e7128..76db73d 100644
 3381   4103   
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
 3382   4104   
new file mode 100644
 3383   4105   
index 0000000..cbd6ae2
 3384         -
-- /dev/null
        4106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3385   4107   
@@ -0,0 +1 @@
        4108  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3386   4109   
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
 3387   4110   
new file mode 100644
 3388   4111   
index 0000000..a343fcf
 3389         -
-- /dev/null
        4112  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3390   4113   
@@ -0,0 +1,6 @@
        4114  +
GET /example/.. HTTP/1.1
        4115  +
Host:example.amazonaws.com
        4116  +
X-Amz-Date:20150830T123600Z
        4117  +
X-Amz-Region-Set:us-east-1
        4118  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4119  +
 3391   4120   
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
 3392   4121   
similarity index 99%
 3393   4122   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3394   4123   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3395   4124   
index 95d7219..600f1d8 100644
 3396   4125   
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
 3397   4126   
new file mode 100644
 3398   4127   
index 0000000..379dcb2
 3399         -
-- /dev/null
        4128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3400   4129   
@@ -0,0 +1,4 @@
        4130  +
{
        4131  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4132  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4133  +
}
 3401   4134   
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
 3402   4135   
similarity index 99%
 3403   4136   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3404   4137   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3405   4138   
index a34ea26..779c51c 100644
 3406   4139   
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
 3407   4140   
new file mode 100644
 3408   4141   
index 0000000..3cc88e6
 3409         -
-- /dev/null
        4142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3410   4143   
@@ -0,0 +1 @@
        4144  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3411   4145   
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
 3412   4146   
new file mode 100644
 3413   4147   
index 0000000..f68dde8
 3414         -
-- /dev/null
        4148  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3415   4149   
@@ -0,0 +1,3 @@
        4150  +
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
        4151  +
Host:example.amazonaws.com
        4152  +
 3416   4153   
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
 3417   4154   
similarity index 99%
 3418   4155   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3419   4156   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3420   4157   
index 48f855c..6e29a7e 100644
 3421   4158   
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
 3422   4159   
similarity index 65%
 3423   4160   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3424   4161   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3425   4162   
index 9d6d7ca..6aa9f99 100644
 3426         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4163  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3427   4164   
@@ -1,3 +1,2 @@
 3428   4165   
GET /example/.. HTTP/1.1
 3429   4166   
Host:example.amazonaws.com
 3430         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3431   4167   
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
 3432   4168   
new file mode 100644
 3433   4169   
index 0000000..0468d80
 3434         -
-- /dev/null
        4170  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3435   4171   
@@ -0,0 +1,12 @@
        4172  +
{
        4173  +
    "credentials": {
        4174  +
        "access_key_id": "AKIDEXAMPLE",
        4175  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4176  +
    },
        4177  +
    "expiration_in_seconds": 3600,
        4178  +
    "normalize": true,
        4179  +
    "region": "us-east-1",
        4180  +
    "service": "service",
        4181  +
    "sign_body": false,
        4182  +
    "timestamp": "2015-08-30T12:36:00Z"
        4183  +
}
              \
 No newline at end of file
 3436   4184   
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
 3437   4185   
similarity index 99%
 3438   4186   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3439   4187   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3440   4188   
index 47e7128..76db73d 100644
 3441   4189   
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
 3442   4190   
new file mode 100644
 3443   4191   
index 0000000..f7a7ebe
 3444         -
-- /dev/null
        4192  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3445   4193   
@@ -0,0 +1 @@
        4194  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3446   4195   
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
 3447   4196   
new file mode 100644
 3448   4197   
index 0000000..9d2c50d
 3449         -
-- /dev/null
        4198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3450   4199   
@@ -0,0 +1,6 @@
        4200  +
GET /example1/example2/../.. HTTP/1.1
        4201  +
Host:example.amazonaws.com
        4202  +
X-Amz-Date:20150830T123600Z
        4203  +
X-Amz-Region-Set:us-east-1
        4204  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4205  +
 3451   4206   
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
 3452   4207   
similarity index 99%
 3453   4208   
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
 3454   4209   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3455   4210   
index 95d7219..600f1d8 100644
 3456   4211   
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
 3457   4212   
new file mode 100644
 3458   4213   
index 0000000..379dcb2
 3459         -
-- /dev/null
        4214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3460   4215   
@@ -0,0 +1,4 @@
        4216  +
{
        4217  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4218  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4219  +
}
 3461   4220   
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
 3462   4221   
similarity index 99%
 3463   4222   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3464   4223   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3465   4224   
index a34ea26..779c51c 100644
 3466   4225   
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
 3467   4226   
new file mode 100644
 3468   4227   
index 0000000..45ef286
 3469         -
-- /dev/null
        4228  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3470   4229   
@@ -0,0 +1 @@
        4230  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3471   4231   
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
 3472   4232   
new file mode 100644
 3473   4233   
index 0000000..0d16f66
 3474         -
-- /dev/null
        4234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3475   4235   
@@ -0,0 +1,3 @@
        4236  +
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
        4237  +
Host:example.amazonaws.com
        4238  +
 3476   4239   
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
 3477   4240   
similarity index 99%
 3478   4241   
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
 3479   4242   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3480   4243   
index 48f855c..6e29a7e 100644
 3481   4244   
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
 3482   4245   
similarity index 70%
 3483   4246   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3484   4247   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3485   4248   
index cfd4e8b..a856c10 100644
 3486         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3487   4250   
@@ -1,3 +1,2 @@
 3488   4251   
GET /example1/example2/../.. HTTP/1.1
 3489   4252   
Host:example.amazonaws.com
 3490         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3491   4253   
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
 3492   4254   
new file mode 100644
 3493   4255   
index 0000000..7bee5c7
 3494         -
-- /dev/null
        4256  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3495   4257   
@@ -0,0 +1,12 @@
        4258  +
{
        4259  +
    "credentials": {
        4260  +
        "access_key_id": "AKIDEXAMPLE",
        4261  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4262  +
    },
        4263  +
    "expiration_in_seconds": 3600,
        4264  +
    "normalize": false,
        4265  +
    "region": "us-east-1",
        4266  +
    "service": "service",
        4267  +
    "sign_body": false,
        4268  +
    "timestamp": "2015-08-30T12:36:00Z"
        4269  +
}
              \
 No newline at end of file
 3496   4270   
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
 3497   4271   
similarity index 99%
 3498   4272   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3499   4273   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3500   4274   
index 5e1d1cf..e4e6d57 100644
 3501   4275   
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
 3502   4276   
new file mode 100644
 3503   4277   
index 0000000..2d1b47c
 3504         -
-- /dev/null
        4278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3505   4279   
@@ -0,0 +1 @@
        4280  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3506   4281   
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
 3507   4282   
new file mode 100644
 3508   4283   
index 0000000..7158179
 3509         -
-- /dev/null
        4284  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3510   4285   
@@ -0,0 +1,6 @@
        4286  +
GET /example1/example2/../.. HTTP/1.1
        4287  +
Host:example.amazonaws.com
        4288  +
X-Amz-Date:20150830T123600Z
        4289  +
X-Amz-Region-Set:us-east-1
        4290  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4291  +
 3511   4292   
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
 3512   4293   
similarity index 99%
 3513   4294   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3514   4295   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3515   4296   
index 1cca6cf..db60c8e 100644
 3516   4297   
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
 3517   4298   
new file mode 100644
 3518   4299   
index 0000000..379dcb2
 3519         -
-- /dev/null
        4300  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3520   4301   
@@ -0,0 +1,4 @@
        4302  +
{
        4303  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4304  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4305  +
}
 3521   4306   
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
 3522   4307   
similarity index 99%
 3523   4308   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3524   4309   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3525   4310   
index 95dc104..0d963ba 100644
 3526   4311   
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
 3527   4312   
new file mode 100644
 3528   4313   
index 0000000..ae774e4
 3529         -
-- /dev/null
        4314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3530   4315   
@@ -0,0 +1 @@
        4316  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3531   4317   
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
 3532   4318   
new file mode 100644
 3533   4319   
index 0000000..be6b86e
 3534         -
-- /dev/null
        4320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3535   4321   
@@ -0,0 +1,3 @@
        4322  +
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
        4323  +
Host:example.amazonaws.com
        4324  +
 3536   4325   
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
 3537   4326   
similarity index 99%
 3538   4327   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3539   4328   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3540   4329   
index 50edce6..fcc70cd 100644
 3541   4330   
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
 3542   4331   
new file mode 100644
 3543   4332   
index 0000000..a856c10
 3544         -
-- /dev/null
        4333  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3545   4334   
@@ -0,0 +1,2 @@
        4335  +
GET /example1/example2/../.. HTTP/1.1
        4336  +
Host:example.amazonaws.com
 3546   4337   
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
 3547   4338   
new file mode 100644
 3548   4339   
index 0000000..7bee5c7
 3549         -
-- /dev/null
        4340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3550   4341   
@@ -0,0 +1,12 @@
        4342  +
{
        4343  +
    "credentials": {
        4344  +
        "access_key_id": "AKIDEXAMPLE",
        4345  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4346  +
    },
        4347  +
    "expiration_in_seconds": 3600,
        4348  +
    "normalize": false,
        4349  +
    "region": "us-east-1",
        4350  +
    "service": "service",
        4351  +
    "sign_body": false,
        4352  +
    "timestamp": "2015-08-30T12:36:00Z"
        4353  +
}
              \
 No newline at end of file
 3551   4354   
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
 3552   4355   
similarity index 99%
 3553   4356   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3554   4357   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3555   4358   
index d6a0abe..22def1a 100644
 3556   4359   
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
 3557   4360   
new file mode 100644
 3558   4361   
index 0000000..9251bad
 3559         -
-- /dev/null
        4362  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3560   4363   
@@ -0,0 +1 @@
        4364  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3561   4365   
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
 3562   4366   
new file mode 100644
 3563   4367   
index 0000000..f1bb60f
 3564         -
-- /dev/null
        4368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3565   4369   
@@ -0,0 +1,6 @@
        4370  +
GET /example/.. HTTP/1.1
        4371  +
Host:example.amazonaws.com
        4372  +
X-Amz-Date:20150830T123600Z
        4373  +
X-Amz-Region-Set:us-east-1
        4374  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4375  +
 3566   4376   
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
 3567   4377   
similarity index 99%
 3568   4378   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3569   4379   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3570   4380   
index 4a34e93..5673a20 100644
 3571   4381   
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
 3572   4382   
new file mode 100644
 3573   4383   
index 0000000..379dcb2
 3574         -
-- /dev/null
        4384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3575   4385   
@@ -0,0 +1,4 @@
        4386  +
{
        4387  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4388  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4389  +
}
 3576   4390   
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
 3577   4391   
similarity index 99%
 3578   4392   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3579   4393   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3580   4394   
index b1d123e..a1c22e0 100644
 3581   4395   
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
 3582   4396   
new file mode 100644
 3583   4397   
index 0000000..9f0f686
 3584         -
-- /dev/null
        4398  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3585   4399   
@@ -0,0 +1 @@
        4400  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3586   4401   
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
 3587   4402   
new file mode 100644
 3588   4403   
index 0000000..d1d451a
 3589         -
-- /dev/null
        4404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3590   4405   
@@ -0,0 +1,3 @@
        4406  +
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
        4407  +
Host:example.amazonaws.com
        4408  +
 3591   4409   
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
 3592   4410   
similarity index 99%
 3593   4411   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3594   4412   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3595   4413   
index a17f5ab..81b41e8 100644
 3596   4414   
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
 3597   4415   
new file mode 100644
 3598   4416   
index 0000000..6aa9f99
 3599         -
-- /dev/null
        4417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3600   4418   
@@ -0,0 +1,2 @@
        4419  +
GET /example/.. HTTP/1.1
        4420  +
Host:example.amazonaws.com
 3601   4421   
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
 3602   4422   
new file mode 100644
 3603   4423   
index 0000000..0468d80
 3604         -
-- /dev/null
        4424  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3605   4425   
@@ -0,0 +1,12 @@
        4426  +
{
        4427  +
    "credentials": {
        4428  +
        "access_key_id": "AKIDEXAMPLE",
        4429  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4430  +
    },
        4431  +
    "expiration_in_seconds": 3600,
        4432  +
    "normalize": true,
        4433  +
    "region": "us-east-1",
        4434  +
    "service": "service",
        4435  +
    "sign_body": false,
        4436  +
    "timestamp": "2015-08-30T12:36:00Z"
        4437  +
}
              \
 No newline at end of file
 3606   4438   
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
 3607   4439   
similarity index 99%
 3608   4440   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3609   4441   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3610   4442   
index 47e7128..76db73d 100644
 3611   4443   
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
 3612   4444   
new file mode 100644
 3613   4445   
index 0000000..ca6e84e
 3614         -
-- /dev/null
        4446  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3615   4447   
@@ -0,0 +1 @@
        4448  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3616   4449   
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
 3617   4450   
new file mode 100644
 3618   4451   
index 0000000..a7c764c
 3619         -
-- /dev/null
        4452  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3620   4453   
@@ -0,0 +1,6 @@
        4454  +
GET /./ HTTP/1.1
        4455  +
Host:example.amazonaws.com
        4456  +
X-Amz-Date:20150830T123600Z
        4457  +
X-Amz-Region-Set:us-east-1
        4458  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4459  +
 3621   4460   
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
 3622   4461   
similarity index 99%
 3623   4462   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3624   4463   
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
 3625   4464   
index 95d7219..600f1d8 100644
 3626   4465   
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
 3627   4466   
new file mode 100644
 3628   4467   
index 0000000..379dcb2
 3629         -
-- /dev/null
        4468  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3630   4469   
@@ -0,0 +1,4 @@
        4470  +
{
        4471  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4472  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4473  +
}
 3631   4474   
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
 3632   4475   
similarity index 99%
 3633   4476   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3634   4477   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3635   4478   
index a34ea26..779c51c 100644
 3636   4479   
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
 3637   4480   
new file mode 100644
 3638   4481   
index 0000000..4b6ed09
 3639         -
-- /dev/null
        4482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3640   4483   
@@ -0,0 +1 @@
        4484  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3641   4485   
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
 3642   4486   
new file mode 100644
 3643   4487   
index 0000000..d6c7176
 3644         -
-- /dev/null
        4488  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3645   4489   
@@ -0,0 +1,3 @@
        4490  +
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
        4491  +
Host:example.amazonaws.com
        4492  +
 3646   4493   
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
 3647   4494   
similarity index 99%
 3648   4495   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3649   4496   
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
 3650   4497   
index 48f855c..6e29a7e 100644
 3651   4498   
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
 3652   4499   
similarity index 61%
 3653   4500   
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
 3654   4501   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3655   4502   
index f3537b7..2c5ff38 100644
 3656         -
-- 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
        4503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3657   4504   
@@ -1,3 +1,2 @@
 3658   4505   
GET /./ HTTP/1.1
 3659   4506   
Host:example.amazonaws.com
 3660         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3661   4507   
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
 3662   4508   
new file mode 100644
 3663   4509   
index 0000000..7bee5c7
 3664         -
-- /dev/null
        4510  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3665   4511   
@@ -0,0 +1,12 @@
        4512  +
{
        4513  +
    "credentials": {
        4514  +
        "access_key_id": "AKIDEXAMPLE",
        4515  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4516  +
    },
        4517  +
    "expiration_in_seconds": 3600,
        4518  +
    "normalize": false,
        4519  +
    "region": "us-east-1",
        4520  +
    "service": "service",
        4521  +
    "sign_body": false,
        4522  +
    "timestamp": "2015-08-30T12:36:00Z"
        4523  +
}
              \
 No newline at end of file
 3666   4524   
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
 3667   4525   
similarity index 99%
 3668   4526   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3669   4527   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3670   4528   
index d05303d..9257ac4 100644
 3671   4529   
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
 3672   4530   
new file mode 100644
 3673   4531   
index 0000000..2eb1aa5
 3674         -
-- /dev/null
        4532  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3675   4533   
@@ -0,0 +1 @@
        4534  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3676   4535   
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
 3677   4536   
new file mode 100644
 3678   4537   
index 0000000..df3b1da
 3679         -
-- /dev/null
        4538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3680   4539   
@@ -0,0 +1,6 @@
        4540  +
GET /./ HTTP/1.1
        4541  +
Host:example.amazonaws.com
        4542  +
X-Amz-Date:20150830T123600Z
        4543  +
X-Amz-Region-Set:us-east-1
        4544  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4545  +
 3681   4546   
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
 3682   4547   
similarity index 99%
 3683   4548   
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
 3684   4549   
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
 3685   4550   
index e1bfb39..754b3ed 100644
 3686   4551   
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
 3687   4552   
new file mode 100644
 3688   4553   
index 0000000..379dcb2
 3689         -
-- /dev/null
        4554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3690   4555   
@@ -0,0 +1,4 @@
        4556  +
{
        4557  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4558  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4559  +
}
 3691   4560   
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
 3692   4561   
similarity index 99%
 3693   4562   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3694   4563   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3695   4564   
index f048d0f..c8edce3 100644
 3696   4565   
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
 3697   4566   
new file mode 100644
 3698   4567   
index 0000000..d3af3b8
 3699         -
-- /dev/null
        4568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3700   4569   
@@ -0,0 +1 @@
        4570  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3701   4571   
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
 3702   4572   
new file mode 100644
 3703   4573   
index 0000000..eb38155
 3704         -
-- /dev/null
        4574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3705   4575   
@@ -0,0 +1,3 @@
        4576  +
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
        4577  +
Host:example.amazonaws.com
        4578  +
 3706   4579   
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
 3707   4580   
similarity index 99%
 3708   4581   
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
 3709   4582   
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
 3710   4583   
index bfcf245..4f20b8f 100644
 3711   4584   
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
 3712   4585   
new file mode 100644
 3713   4586   
index 0000000..2c5ff38
 3714         -
-- /dev/null
        4587  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3715   4588   
@@ -0,0 +1,2 @@
        4589  +
GET /./ HTTP/1.1
        4590  +
Host:example.amazonaws.com
 3716   4591   
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
 3717   4592   
new file mode 100644
 3718   4593   
index 0000000..0468d80
 3719         -
-- /dev/null
        4594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3720   4595   
@@ -0,0 +1,12 @@
        4596  +
{
        4597  +
    "credentials": {
        4598  +
        "access_key_id": "AKIDEXAMPLE",
        4599  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4600  +
    },
        4601  +
    "expiration_in_seconds": 3600,
        4602  +
    "normalize": true,
        4603  +
    "region": "us-east-1",
        4604  +
    "service": "service",
        4605  +
    "sign_body": false,
        4606  +
    "timestamp": "2015-08-30T12:36:00Z"
        4607  +
}
              \
 No newline at end of file
 3721   4608   
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
 3722   4609   
similarity index 99%
 3723   4610   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 3724   4611   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3725   4612   
index 47e7128..76db73d 100644
 3726   4613   
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
 3727   4614   
new file mode 100644
 3728   4615   
index 0000000..0c049ca
 3729         -
-- /dev/null
        4616  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 3730   4617   
@@ -0,0 +1 @@
        4618  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 3731   4619   
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
 3732   4620   
new file mode 100644
 3733   4621   
index 0000000..f4bb1e1
 3734         -
-- /dev/null
        4622  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 3735   4623   
@@ -0,0 +1,6 @@
        4624  +
GET // HTTP/1.1
        4625  +
Host:example.amazonaws.com
        4626  +
X-Amz-Date:20150830T123600Z
        4627  +
X-Amz-Region-Set:us-east-1
        4628  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4629  +
 3736   4630   
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
 3737   4631   
similarity index 99%
 3738   4632   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 3739   4633   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3740   4634   
index 95d7219..600f1d8 100644
 3741   4635   
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
 3742   4636   
new file mode 100644
 3743   4637   
index 0000000..379dcb2
 3744         -
-- /dev/null
        4638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 3745   4639   
@@ -0,0 +1,4 @@
        4640  +
{
        4641  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4642  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4643  +
}
 3746   4644   
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
 3747   4645   
similarity index 99%
 3748   4646   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 3749   4647   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3750   4648   
index a34ea26..779c51c 100644
 3751   4649   
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
 3752   4650   
new file mode 100644
 3753   4651   
index 0000000..ca52293
 3754         -
-- /dev/null
        4652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 3755   4653   
@@ -0,0 +1 @@
        4654  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 3756   4655   
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
 3757   4656   
new file mode 100644
 3758   4657   
index 0000000..4a212a9
 3759         -
-- /dev/null
        4658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 3760   4659   
@@ -0,0 +1,3 @@
        4660  +
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
        4661  +
Host:example.amazonaws.com
        4662  +
 3761   4663   
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
 3762   4664   
similarity index 99%
 3763   4665   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 3764   4666   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3765   4667   
index 48f855c..6e29a7e 100644
 3766   4668   
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
 3767   4669   
similarity index 61%
 3768   4670   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 3769   4671   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3770   4672   
index ede8e3c..25bc21e 100644
 3771         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        4673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3772   4674   
@@ -1,3 +1,2 @@
 3773   4675   
GET // HTTP/1.1
 3774   4676   
Host:example.amazonaws.com
 3775         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3776   4677   
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
 3777   4678   
new file mode 100644
 3778   4679   
index 0000000..0468d80
 3779         -
-- /dev/null
        4680  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 3780   4681   
@@ -0,0 +1,12 @@
        4682  +
{
        4683  +
    "credentials": {
        4684  +
        "access_key_id": "AKIDEXAMPLE",
        4685  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4686  +
    },
        4687  +
    "expiration_in_seconds": 3600,
        4688  +
    "normalize": true,
        4689  +
    "region": "us-east-1",
        4690  +
    "service": "service",
        4691  +
    "sign_body": false,
        4692  +
    "timestamp": "2015-08-30T12:36:00Z"
        4693  +
}
              \
 No newline at end of file
 3781   4694   
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
 3782   4695   
similarity index 99%
 3783   4696   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3784   4697   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3785   4698   
index 2e36c20..a51f1ba 100644
 3786   4699   
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
 3787   4700   
new file mode 100644
 3788   4701   
index 0000000..f5c871f
 3789         -
-- /dev/null
        4702  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 3790   4703   
@@ -0,0 +1 @@
        4704  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 3791   4705   
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
 3792   4706   
new file mode 100644
 3793   4707   
index 0000000..bda4718
 3794         -
-- /dev/null
        4708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 3795   4709   
@@ -0,0 +1,6 @@
        4710  +
GET /./example HTTP/1.1
        4711  +
Host:example.amazonaws.com
        4712  +
X-Amz-Date:20150830T123600Z
        4713  +
X-Amz-Region-Set:us-east-1
        4714  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        4715  +
 3796   4716   
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
 3797   4717   
similarity index 99%
 3798   4718   
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
 3799   4719   
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
 3800   4720   
index cd30e8b..2ffe879 100644
 3801   4721   
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
 3802   4722   
new file mode 100644
 3803   4723   
index 0000000..379dcb2
 3804         -
-- /dev/null
        4724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 3805   4725   
@@ -0,0 +1,4 @@
        4726  +
{
        4727  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4728  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4729  +
}
 3806   4730   
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
 3807   4731   
similarity index 99%
 3808   4732   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3809   4733   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3810   4734   
index 77cf28d..45151ea 100644
 3811   4735   
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
 3812   4736   
new file mode 100644
 3813   4737   
index 0000000..11ad7bf
 3814         -
-- /dev/null
        4738  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 3815   4739   
@@ -0,0 +1 @@
        4740  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 3816   4741   
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
 3817   4742   
new file mode 100644
 3818   4743   
index 0000000..a7537b1
 3819         -
-- /dev/null
        4744  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 3820   4745   
@@ -0,0 +1,3 @@
        4746  +
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
        4747  +
Host:example.amazonaws.com
        4748  +
 3821   4749   
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
 3822   4750   
similarity index 99%
 3823   4751   
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
 3824   4752   
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
 3825   4753   
index 49d9b24..b486672 100644
 3826   4754   
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
 3827   4755   
similarity index 65%
 3828   4756   
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
 3829   4757   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3830   4758   
index 3c91071..5d919c9 100644
 3831         -
-- 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
        4759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3832   4760   
@@ -1,3 +1,2 @@
 3833   4761   
GET /./example HTTP/1.1
 3834   4762   
Host:example.amazonaws.com
 3835         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3836   4763   
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
 3837   4764   
new file mode 100644
 3838   4765   
index 0000000..7bee5c7
 3839         -
-- /dev/null
        4766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 3840   4767   
@@ -0,0 +1,12 @@
        4768  +
{
        4769  +
    "credentials": {
        4770  +
        "access_key_id": "AKIDEXAMPLE",
        4771  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4772  +
    },
        4773  +
    "expiration_in_seconds": 3600,
        4774  +
    "normalize": false,
        4775  +
    "region": "us-east-1",
        4776  +
    "service": "service",
        4777  +
    "sign_body": false,
        4778  +
    "timestamp": "2015-08-30T12:36:00Z"
        4779  +
}
              \
 No newline at end of file
 3841   4780   
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
 3842   4781   
similarity index 99%
 3843   4782   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3844   4783   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3845   4784   
index 4444842..2355a69 100644
 3846   4785   
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
 3847   4786   
new file mode 100644
 3848   4787   
index 0000000..9c8f737
 3849         -
-- /dev/null
        4788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 3850   4789   
@@ -0,0 +1 @@
        4790  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 3851   4791   
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
 3852   4792   
new file mode 100644
 3853   4793   
index 0000000..aa5980d
 3854         -
-- /dev/null
        4794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 3855   4795   
@@ -0,0 +1,6 @@
        4796  +
GET /./example HTTP/1.1
        4797  +
Host:example.amazonaws.com
        4798  +
X-Amz-Date:20150830T123600Z
        4799  +
X-Amz-Region-Set:us-east-1
        4800  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        4801  +
 3856   4802   
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
 3857   4803   
similarity index 99%
 3858   4804   
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
 3859   4805   
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
 3860   4806   
index cc63510..d056816 100644
 3861   4807   
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
 3862   4808   
new file mode 100644
 3863   4809   
index 0000000..379dcb2
 3864         -
-- /dev/null
        4810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 3865   4811   
@@ -0,0 +1,4 @@
        4812  +
{
        4813  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4814  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4815  +
}
 3866   4816   
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
 3867   4817   
similarity index 99%
 3868   4818   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3869   4819   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3870   4820   
index ed2cb2d..df9928e 100644
 3871   4821   
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
 3872   4822   
new file mode 100644
 3873   4823   
index 0000000..bb4d86b
 3874         -
-- /dev/null
        4824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 3875   4825   
@@ -0,0 +1 @@
        4826  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 3876   4827   
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
 3877   4828   
new file mode 100644
 3878   4829   
index 0000000..0061136
 3879         -
-- /dev/null
        4830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 3880   4831   
@@ -0,0 +1,3 @@
        4832  +
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
        4833  +
Host:example.amazonaws.com
        4834  +
 3881   4835   
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
 3882   4836   
similarity index 99%
 3883   4837   
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
 3884   4838   
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
 3885   4839   
index c9f3b6d..418f2d6 100644
 3886   4840   
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
 3887   4841   
new file mode 100644
 3888   4842   
index 0000000..5d919c9
 3889         -
-- /dev/null
        4843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 3890   4844   
@@ -0,0 +1,2 @@
        4845  +
GET /./example HTTP/1.1
        4846  +
Host:example.amazonaws.com
 3891   4847   
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
 3892   4848   
new file mode 100644
 3893   4849   
index 0000000..7bee5c7
 3894         -
-- /dev/null
        4850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 3895   4851   
@@ -0,0 +1,12 @@
        4852  +
{
        4853  +
    "credentials": {
        4854  +
        "access_key_id": "AKIDEXAMPLE",
        4855  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4856  +
    },
        4857  +
    "expiration_in_seconds": 3600,
        4858  +
    "normalize": false,
        4859  +
    "region": "us-east-1",
        4860  +
    "service": "service",
        4861  +
    "sign_body": false,
        4862  +
    "timestamp": "2015-08-30T12:36:00Z"
        4863  +
}
              \
 No newline at end of file
 3896   4864   
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
 3897   4865   
similarity index 99%
 3898   4866   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 3899   4867   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 3900   4868   
index 8a4d33b..5f809da 100644
 3901   4869   
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
 3902   4870   
new file mode 100644
 3903   4871   
index 0000000..60179e9
 3904         -
-- /dev/null
        4872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 3905   4873   
@@ -0,0 +1 @@
        4874  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 3906   4875   
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
 3907   4876   
new file mode 100644
 3908   4877   
index 0000000..72bf1b7
 3909         -
-- /dev/null
        4878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 3910   4879   
@@ -0,0 +1,6 @@
        4880  +
GET // HTTP/1.1
        4881  +
Host:example.amazonaws.com
        4882  +
X-Amz-Date:20150830T123600Z
        4883  +
X-Amz-Region-Set:us-east-1
        4884  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        4885  +
 3911   4886   
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
 3912   4887   
similarity index 99%
 3913   4888   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 3914   4889   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 3915   4890   
index 874c01c..2b3bf67 100644
 3916   4891   
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
 3917   4892   
new file mode 100644
 3918   4893   
index 0000000..379dcb2
 3919         -
-- /dev/null
        4894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 3920   4895   
@@ -0,0 +1,4 @@
        4896  +
{
        4897  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4898  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4899  +
}
 3921   4900   
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
 3922   4901   
similarity index 99%
 3923   4902   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 3924   4903   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 3925   4904   
index 81d7b0b..d10ad29 100644
 3926   4905   
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
 3927   4906   
new file mode 100644
 3928   4907   
index 0000000..d9bd824
 3929         -
-- /dev/null
        4908  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 3930   4909   
@@ -0,0 +1 @@
        4910  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 3931   4911   
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
 3932   4912   
new file mode 100644
 3933   4913   
index 0000000..19d1d46
 3934         -
-- /dev/null
        4914  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 3935   4915   
@@ -0,0 +1,3 @@
        4916  +
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
        4917  +
Host:example.amazonaws.com
        4918  +
 3936   4919   
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
 3937   4920   
similarity index 99%
 3938   4921   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 3939   4922   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 3940   4923   
index 17e5279..24c8a5e 100644
 3941   4924   
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
 3942   4925   
new file mode 100644
 3943   4926   
index 0000000..25bc21e
 3944         -
-- /dev/null
        4927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 3945   4928   
@@ -0,0 +1,2 @@
        4929  +
GET // HTTP/1.1
        4930  +
Host:example.amazonaws.com
 3946   4931   
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
 3947   4932   
new file mode 100644
 3948   4933   
index 0000000..0468d80
 3949         -
-- /dev/null
        4934  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 3950   4935   
@@ -0,0 +1,12 @@
        4936  +
{
        4937  +
    "credentials": {
        4938  +
        "access_key_id": "AKIDEXAMPLE",
        4939  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4940  +
    },
        4941  +
    "expiration_in_seconds": 3600,
        4942  +
    "normalize": true,
        4943  +
    "region": "us-east-1",
        4944  +
    "service": "service",
        4945  +
    "sign_body": false,
        4946  +
    "timestamp": "2015-08-30T12:36:00Z"
        4947  +
}
              \
 No newline at end of file
 3951   4948   
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
 3952   4949   
similarity index 99%
 3953   4950   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 3954   4951   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 3955   4952   
index fdf9c48..a8e9e02 100644
 3956   4953   
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
 3957   4954   
new file mode 100644
 3958   4955   
index 0000000..ffe1b60
 3959         -
-- /dev/null
        4956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 3960   4957   
@@ -0,0 +1 @@
        4958  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 3961   4959   
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
 3962   4960   
new file mode 100644
 3963   4961   
index 0000000..3189f55
 3964         -
-- /dev/null
        4962  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 3965   4963   
@@ -0,0 +1,6 @@
        4964  +
GET //example// HTTP/1.1
        4965  +
Host:example.amazonaws.com
        4966  +
X-Amz-Date:20150830T123600Z
        4967  +
X-Amz-Region-Set:us-east-1
        4968  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        4969  +
 3966   4970   
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
 3967   4971   
similarity index 99%
 3968   4972   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 3969   4973   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 3970   4974   
index 8f9c95e..430020e 100644
 3971   4975   
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
 3972   4976   
new file mode 100644
 3973   4977   
index 0000000..379dcb2
 3974         -
-- /dev/null
        4978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 3975   4979   
@@ -0,0 +1,4 @@
        4980  +
{
        4981  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4982  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4983  +
}
 3976   4984   
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
 3977   4985   
similarity index 99%
 3978   4986   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 3979   4987   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 3980   4988   
index 1046735..8d41e37 100644
 3981   4989   
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
 3982   4990   
new file mode 100644
 3983   4991   
index 0000000..93a0fa4
 3984         -
-- /dev/null
        4992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 3985   4993   
@@ -0,0 +1 @@
        4994  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 3986   4995   
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
 3987   4996   
new file mode 100644
 3988   4997   
index 0000000..65c8cb6
 3989         -
-- /dev/null
        4998  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 3990   4999   
@@ -0,0 +1,3 @@
        5000  +
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
        5001  +
Host:example.amazonaws.com
        5002  +
 3991   5003   
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
 3992   5004   
similarity index 99%
 3993   5005   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 3994   5006   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 3995   5007   
index b293cc2..0f4c4c5 100644
 3996   5008   
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
 3997   5009   
similarity index 65%
 3998   5010   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 3999   5011   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4000   5012   
index a4307ce..12e0931 100644
 4001         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        5013  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4002   5014   
@@ -1,3 +1,2 @@
 4003   5015   
GET //example// HTTP/1.1
 4004   5016   
Host:example.amazonaws.com
 4005         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4006   5017   
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
 4007   5018   
new file mode 100644
 4008   5019   
index 0000000..7bee5c7
 4009         -
-- /dev/null
        5020  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 4010   5021   
@@ -0,0 +1,12 @@
        5022  +
{
        5023  +
    "credentials": {
        5024  +
        "access_key_id": "AKIDEXAMPLE",
        5025  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5026  +
    },
        5027  +
    "expiration_in_seconds": 3600,
        5028  +
    "normalize": false,
        5029  +
    "region": "us-east-1",
        5030  +
    "service": "service",
        5031  +
    "sign_body": false,
        5032  +
    "timestamp": "2015-08-30T12:36:00Z"
        5033  +
}
              \
 No newline at end of file
 4011   5034   
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
 4012   5035   
similarity index 99%
 4013   5036   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 4014   5037   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4015   5038   
index a9c55f6..76f55ed 100644
 4016   5039   
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
 4017   5040   
new file mode 100644
 4018   5041   
index 0000000..de333b2
 4019         -
-- /dev/null
        5042  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 4020   5043   
@@ -0,0 +1 @@
        5044  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 4021   5045   
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
 4022   5046   
new file mode 100644
 4023   5047   
index 0000000..773ce63
 4024         -
-- /dev/null
        5048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 4025   5049   
@@ -0,0 +1,6 @@
        5050  +
GET //example// HTTP/1.1
        5051  +
Host:example.amazonaws.com
        5052  +
X-Amz-Date:20150830T123600Z
        5053  +
X-Amz-Region-Set:us-east-1
        5054  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        5055  +
 4026   5056   
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
 4027   5057   
similarity index 99%
 4028   5058   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 4029   5059   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4030   5060   
index 5c4c2cd..46c3265 100644
 4031   5061   
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
 4032   5062   
new file mode 100644
 4033   5063   
index 0000000..379dcb2
 4034         -
-- /dev/null
        5064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 4035   5065   
@@ -0,0 +1,4 @@
        5066  +
{
        5067  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5068  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5069  +
}
 4036   5070   
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
 4037   5071   
similarity index 99%
 4038   5072   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 4039   5073   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4040   5074   
index c878ab4..6047ccf 100644
 4041   5075   
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
 4042   5076   
new file mode 100644
 4043   5077   
index 0000000..d61fcd0
 4044         -
-- /dev/null
        5078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 4045   5079   
@@ -0,0 +1 @@
        5080  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 4046   5081   
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
 4047   5082   
new file mode 100644
 4048   5083   
index 0000000..3e37b5b
 4049         -
-- /dev/null
        5084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 4050   5085   
@@ -0,0 +1,3 @@
        5086  +
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
        5087  +
Host:example.amazonaws.com
        5088  +
 4051   5089   
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
 4052   5090   
similarity index 99%
 4053   5091   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 4054   5092   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4055   5093   
index 5f59645..2537d28 100644
 4056   5094   
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
 4057   5095   
new file mode 100644
 4058   5096   
index 0000000..12e0931
 4059         -
-- /dev/null
        5097  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 4060   5098   
@@ -0,0 +1,2 @@
        5099  +
GET //example// HTTP/1.1
        5100  +
Host:example.amazonaws.com
 4061   5101   
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
 4062   5102   
new file mode 100644
 4063   5103   
index 0000000..0468d80
 4064         -
-- /dev/null
        5104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 4065   5105   
@@ -0,0 +1,12 @@
        5106  +
{
        5107  +
    "credentials": {
        5108  +
        "access_key_id": "AKIDEXAMPLE",
        5109  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5110  +
    },
        5111  +
    "expiration_in_seconds": 3600,
        5112  +
    "normalize": true,
        5113  +
    "region": "us-east-1",
        5114  +
    "service": "service",
        5115  +
    "sign_body": false,
        5116  +
    "timestamp": "2015-08-30T12:36:00Z"
        5117  +
}
              \
 No newline at end of file
 4066   5118   
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
 4067   5119   
new file mode 100644
 4068   5120   
index 0000000..0b2b616
 4069         -
-- /dev/null
        5121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 4070   5122   
@@ -0,0 +1,9 @@
        5123  +
GET
        5124  +
/example%20space/
        5125  +
        5126  +
host:example.amazonaws.com
        5127  +
x-amz-date:20150830T123600Z
        5128  +
x-amz-region-set:us-east-1
        5129  +
        5130  +
host;x-amz-date;x-amz-region-set
        5131  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4071   5132   
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
 4072   5133   
new file mode 100644
 4073   5134   
index 0000000..6e7841d
 4074         -
-- /dev/null
        5135  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 4075   5136   
@@ -0,0 +1 @@
        5137  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 4076   5138   
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
 4077   5139   
new file mode 100644
 4078   5140   
index 0000000..0969cd3
 4079         -
-- /dev/null
        5141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 4080   5142   
@@ -0,0 +1,6 @@
        5143  +
GET /example space/ HTTP/1.1
        5144  +
Host:example.amazonaws.com
        5145  +
X-Amz-Date:20150830T123600Z
        5146  +
X-Amz-Region-Set:us-east-1
        5147  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5148  +
 4081   5149   
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
 4082   5150   
new file mode 100644
 4083   5151   
index 0000000..ddae6e2
 4084         -
-- /dev/null
        5152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4085   5153   
@@ -0,0 +1,4 @@
        5154  +
AWS4-ECDSA-P256-SHA256
        5155  +
20150830T123600Z
        5156  +
20150830/service/aws4_request
        5157  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4086   5158   
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
 4087   5159   
new file mode 100644
 4088   5160   
index 0000000..379dcb2
 4089         -
-- /dev/null
        5161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4090   5162   
@@ -0,0 +1,4 @@
        5163  +
{
        5164  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5165  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5166  +
}
 4091   5167   
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
 4092   5168   
new file mode 100644
 4093   5169   
index 0000000..a66b3cb
 4094         -
-- /dev/null
        5170  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4095   5171   
@@ -0,0 +1,7 @@
        5172  +
GET
        5173  +
/example%20space/
        5174  +
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
        5175  +
host:example.amazonaws.com
        5176  +
        5177  +
host
        5178  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4096   5179   
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
 4097   5180   
new file mode 100644
 4098   5181   
index 0000000..b3253ae
 4099         -
-- /dev/null
        5182  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4100   5183   
@@ -0,0 +1 @@
        5184  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 4101   5185   
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
 4102   5186   
new file mode 100644
 4103   5187   
index 0000000..9e335b2
 4104         -
-- /dev/null
        5188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4105   5189   
@@ -0,0 +1,3 @@
        5190  +
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
        5191  +
Host:example.amazonaws.com
        5192  +
 4106   5193   
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
 4107   5194   
new file mode 100644
 4108   5195   
index 0000000..b6ff6fb
 4109         -
-- /dev/null
        5196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4110   5197   
@@ -0,0 +1,4 @@
        5198  +
AWS4-ECDSA-P256-SHA256
        5199  +
20150830T123600Z
        5200  +
20150830/service/aws4_request
        5201  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4111   5202   
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
 4112   5203   
new file mode 100644
 4113   5204   
index 0000000..ab509ab
 4114         -
-- /dev/null
        5205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4115   5206   
@@ -0,0 +1,2 @@
        5207  +
GET /example space/ HTTP/1.1
        5208  +
Host:example.amazonaws.com
 4116   5209   
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
 4117   5210   
new file mode 100644
 4118   5211   
index 0000000..7bee5c7
 4119         -
-- /dev/null
        5212  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4120   5213   
@@ -0,0 +1,12 @@
        5214  +
{
        5215  +
    "credentials": {
        5216  +
        "access_key_id": "AKIDEXAMPLE",
        5217  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5218  +
    },
        5219  +
    "expiration_in_seconds": 3600,
        5220  +
    "normalize": false,
        5221  +
    "region": "us-east-1",
        5222  +
    "service": "service",
        5223  +
    "sign_body": false,
        5224  +
    "timestamp": "2015-08-30T12:36:00Z"
        5225  +
}
              \
 No newline at end of file
 4121   5226   
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
 4122   5227   
new file mode 100644
 4123   5228   
index 0000000..0b2b616
 4124         -
-- /dev/null
        5229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4125   5230   
@@ -0,0 +1,9 @@
        5231  +
GET
        5232  +
/example%20space/
        5233  +
        5234  +
host:example.amazonaws.com
        5235  +
x-amz-date:20150830T123600Z
        5236  +
x-amz-region-set:us-east-1
        5237  +
        5238  +
host;x-amz-date;x-amz-region-set
        5239  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4126   5240   
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
 4127   5241   
new file mode 100644
 4128   5242   
index 0000000..e75ae08
 4129         -
-- /dev/null
        5243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4130   5244   
@@ -0,0 +1 @@
        5245  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4131   5246   
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
 4132   5247   
new file mode 100644
 4133   5248   
index 0000000..cb089db
 4134         -
-- /dev/null
        5249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4135   5250   
@@ -0,0 +1,6 @@
        5251  +
GET /example space/ HTTP/1.1
        5252  +
Host:example.amazonaws.com
        5253  +
X-Amz-Date:20150830T123600Z
        5254  +
X-Amz-Region-Set:us-east-1
        5255  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5256  +
 4136   5257   
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
 4137   5258   
new file mode 100644
 4138   5259   
index 0000000..ddae6e2
 4139         -
-- /dev/null
        5260  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4140   5261   
@@ -0,0 +1,4 @@
        5262  +
AWS4-ECDSA-P256-SHA256
        5263  +
20150830T123600Z
        5264  +
20150830/service/aws4_request
        5265  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4141   5266   
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
 4142   5267   
new file mode 100644
 4143   5268   
index 0000000..379dcb2
 4144         -
-- /dev/null
        5269  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4145   5270   
@@ -0,0 +1,4 @@
        5271  +
{
        5272  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5273  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5274  +
}
 4146   5275   
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
 4147   5276   
new file mode 100644
 4148   5277   
index 0000000..a66b3cb
 4149         -
-- /dev/null
        5278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4150   5279   
@@ -0,0 +1,7 @@
        5280  +
GET
        5281  +
/example%20space/
        5282  +
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
        5283  +
host:example.amazonaws.com
        5284  +
        5285  +
host
        5286  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4151   5287   
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
 4152   5288   
new file mode 100644
 4153   5289   
index 0000000..66a80c3
 4154         -
-- /dev/null
        5290  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4155   5291   
@@ -0,0 +1 @@
        5292  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4156   5293   
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
 4157   5294   
new file mode 100644
 4158   5295   
index 0000000..7d1b9d9
 4159         -
-- /dev/null
        5296  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4160   5297   
@@ -0,0 +1,3 @@
        5298  +
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
        5299  +
Host:example.amazonaws.com
        5300  +
 4161   5301   
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
 4162   5302   
new file mode 100644
 4163   5303   
index 0000000..b6ff6fb
 4164         -
-- /dev/null
        5304  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4165   5305   
@@ -0,0 +1,4 @@
        5306  +
AWS4-ECDSA-P256-SHA256
        5307  +
20150830T123600Z
        5308  +
20150830/service/aws4_request
        5309  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4166   5310   
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
 4167   5311   
new file mode 100644
 4168   5312   
index 0000000..ab509ab
 4169         -
-- /dev/null
        5313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4170   5314   
@@ -0,0 +1,2 @@
        5315  +
GET /example space/ HTTP/1.1
        5316  +
Host:example.amazonaws.com
 4171   5317   
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
 4172   5318   
new file mode 100644
 4173   5319   
index 0000000..0468d80
 4174         -
-- /dev/null
        5320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4175   5321   
@@ -0,0 +1,12 @@
        5322  +
{
        5323  +
    "credentials": {
        5324  +
        "access_key_id": "AKIDEXAMPLE",
        5325  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5326  +
    },
        5327  +
    "expiration_in_seconds": 3600,
        5328  +
    "normalize": true,
        5329  +
    "region": "us-east-1",
        5330  +
    "service": "service",
        5331  +
    "sign_body": false,
        5332  +
    "timestamp": "2015-08-30T12:36:00Z"
        5333  +
}
              \
 No newline at end of file
 4176   5334   
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
 4177   5335   
similarity index 99%
 4178   5336   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4179   5337   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4180   5338   
index b0db648..46d76bb 100644
 4181   5339   
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
 4182   5340   
new file mode 100644
 4183   5341   
index 0000000..53c0cb6
 4184         -
-- /dev/null
        5342  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4185   5343   
@@ -0,0 +1 @@
        5344  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4186   5345   
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
 4187   5346   
new file mode 100644
 4188   5347   
index 0000000..3bdb653
 4189         -
-- /dev/null
        5348  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4190   5349   
@@ -0,0 +1,6 @@
        5350  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5351  +
Host:example.amazonaws.com
        5352  +
X-Amz-Date:20150830T123600Z
        5353  +
X-Amz-Region-Set:us-east-1
        5354  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5355  +
 4191   5356   
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
 4192   5357   
similarity index 99%
 4193   5358   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4194   5359   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4195   5360   
index 20c7cd6..3b30173 100644
 4196   5361   
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
 4197   5362   
new file mode 100644
 4198   5363   
index 0000000..379dcb2
 4199         -
-- /dev/null
        5364  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4200   5365   
@@ -0,0 +1,4 @@
        5366  +
{
        5367  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5368  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5369  +
}
 4201   5370   
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
 4202   5371   
similarity index 99%
 4203   5372   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4204   5373   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4205   5374   
index f9fb726..7e93f58 100644
 4206   5375   
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
 4207   5376   
new file mode 100644
 4208   5377   
index 0000000..48311a8
 4209         -
-- /dev/null
        5378  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4210   5379   
@@ -0,0 +1 @@
        5380  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4211   5381   
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
 4212   5382   
new file mode 100644
 4213   5383   
index 0000000..82da9be
 4214         -
-- /dev/null
        5384  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4215   5385   
@@ -0,0 +1,3 @@
        5386  +
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
        5387  +
Host:example.amazonaws.com
        5388  +
 4216   5389   
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
 4217   5390   
similarity index 99%
 4218   5391   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4219   5392   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4220   5393   
index ef06e89..4aab9a2 100644
 4221   5394   
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
 4222   5395   
similarity index 80%
 4223   5396   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4224   5397   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4225   5398   
index da760cd..a149694 100644
 4226         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4227   5400   
@@ -1,3 +1,2 @@
 4228   5401   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4229   5402   
Host:example.amazonaws.com
 4230         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4231   5403   
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
 4232   5404   
new file mode 100644
 4233   5405   
index 0000000..0468d80
 4234         -
-- /dev/null
        5406  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4235   5407   
@@ -0,0 +1,12 @@
        5408  +
{
        5409  +
    "credentials": {
        5410  +
        "access_key_id": "AKIDEXAMPLE",
        5411  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5412  +
    },
        5413  +
    "expiration_in_seconds": 3600,
        5414  +
    "normalize": true,
        5415  +
    "region": "us-east-1",
        5416  +
    "service": "service",
        5417  +
    "sign_body": false,
        5418  +
    "timestamp": "2015-08-30T12:36:00Z"
        5419  +
}
              \
 No newline at end of file
 4236   5420   
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
 4237   5421   
new file mode 100644
 4238   5422   
index 0000000..0f1afe7
 4239         -
-- /dev/null
        5423  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4240   5424   
@@ -0,0 +1,9 @@
        5425  +
GET
        5426  +
/%E1%88%B4
        5427  +
        5428  +
host:example.amazonaws.com
        5429  +
x-amz-date:20150830T123600Z
        5430  +
x-amz-region-set:us-east-1
        5431  +
        5432  +
host;x-amz-date;x-amz-region-set
        5433  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4241   5434   
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
 4242   5435   
new file mode 100644
 4243   5436   
index 0000000..4b9af6c
 4244         -
-- /dev/null
        5437  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4245   5438   
@@ -0,0 +1 @@
        5439  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4246   5440   
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
 4247   5441   
new file mode 100644
 4248   5442   
index 0000000..d42d7b3
 4249         -
-- /dev/null
        5443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4250   5444   
@@ -0,0 +1,6 @@
        5445  +
GET /ሴ HTTP/1.1
        5446  +
Host:example.amazonaws.com
        5447  +
X-Amz-Date:20150830T123600Z
        5448  +
X-Amz-Region-Set:us-east-1
        5449  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        5450  +
 4251   5451   
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
 4252   5452   
new file mode 100644
 4253   5453   
index 0000000..0827f62
 4254         -
-- /dev/null
        5454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4255   5455   
@@ -0,0 +1,4 @@
        5456  +
AWS4-ECDSA-P256-SHA256
        5457  +
20150830T123600Z
        5458  +
20150830/service/aws4_request
        5459  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4256   5460   
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
 4257   5461   
new file mode 100644
 4258   5462   
index 0000000..379dcb2
 4259         -
-- /dev/null
        5463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4260   5464   
@@ -0,0 +1,4 @@
        5465  +
{
        5466  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5467  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5468  +
}
 4261   5469   
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
 4262   5470   
new file mode 100644
 4263   5471   
index 0000000..a41a2f8
 4264         -
-- /dev/null
        5472  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4265   5473   
@@ -0,0 +1,7 @@
        5474  +
GET
        5475  +
/%E1%88%B4
        5476  +
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
        5477  +
host:example.amazonaws.com
        5478  +
        5479  +
host
        5480  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4266   5481   
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
 4267   5482   
new file mode 100644
 4268   5483   
index 0000000..a5c7f4f
 4269         -
-- /dev/null
        5484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4270   5485   
@@ -0,0 +1 @@
        5486  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4271   5487   
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
 4272   5488   
new file mode 100644
 4273   5489   
index 0000000..492ed33
 4274         -
-- /dev/null
        5490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4275   5491   
@@ -0,0 +1,3 @@
        5492  +
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
        5493  +
Host:example.amazonaws.com
        5494  +
 4276   5495   
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
 4277   5496   
new file mode 100644
 4278   5497   
index 0000000..a93108f
 4279         -
-- /dev/null
        5498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4280   5499   
@@ -0,0 +1,4 @@
        5500  +
AWS4-ECDSA-P256-SHA256
        5501  +
20150830T123600Z
        5502  +
20150830/service/aws4_request
        5503  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4281   5504   
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
 4282   5505   
new file mode 100644
 4283   5506   
index 0000000..9e273f6
 4284         -
-- /dev/null
        5507  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4285   5508   
@@ -0,0 +1,2 @@
        5509  +
GET /ሴ HTTP/1.1
        5510  +
Host:example.amazonaws.com
 4286   5511   
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
 4287   5512   
new file mode 100644
 4288   5513   
index 0000000..0468d80
 4289         -
-- /dev/null
        5514  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4290   5515   
@@ -0,0 +1,12 @@
        5516  +
{
        5517  +
    "credentials": {
        5518  +
        "access_key_id": "AKIDEXAMPLE",
        5519  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5520  +
    },
        5521  +
    "expiration_in_seconds": 3600,
        5522  +
    "normalize": true,
        5523  +
    "region": "us-east-1",
        5524  +
    "service": "service",
        5525  +
    "sign_body": false,
        5526  +
    "timestamp": "2015-08-30T12:36:00Z"
        5527  +
}
              \
 No newline at end of file
 4291   5528   
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
 4292   5529   
similarity index 99%
 4293   5530   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4294   5531   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4295   5532   
index bb9d4bf..edc0bb4 100644
 4296   5533   
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
 4297   5534   
new file mode 100644
 4298   5535   
index 0000000..ee9a272
 4299         -
-- /dev/null
        5536  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4300   5537   
@@ -0,0 +1 @@
        5538  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4301   5539   
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
 4302   5540   
new file mode 100644
 4303   5541   
index 0000000..2090343
 4304         -
-- /dev/null
        5542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4305   5543   
@@ -0,0 +1,6 @@
        5544  +
GET /?Param1=value1 HTTP/1.1
        5545  +
Host:example.amazonaws.com
        5546  +
X-Amz-Date:20150830T123600Z
        5547  +
X-Amz-Region-Set:us-east-1
        5548  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        5549  +
 4306   5550   
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
 4307   5551   
similarity index 99%
 4308   5552   
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
 4309   5553   
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
 4310   5554   
index a176f1d..06ed74f 100644
 4311   5555   
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
 4312   5556   
new file mode 100644
 4313   5557   
index 0000000..379dcb2
 4314         -
-- /dev/null
        5558  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4315   5559   
@@ -0,0 +1,4 @@
        5560  +
{
        5561  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5562  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5563  +
}
 4316   5564   
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
 4317   5565   
similarity index 99%
 4318   5566   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4319   5567   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4320   5568   
index 344384b..a875d70 100644
 4321   5569   
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
 4322   5570   
new file mode 100644
 4323   5571   
index 0000000..ef93624
 4324         -
-- /dev/null
        5572  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4325   5573   
@@ -0,0 +1 @@
        5574  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4326   5575   
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
 4327   5576   
new file mode 100644
 4328   5577   
index 0000000..92829f7
 4329         -
-- /dev/null
        5578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4330   5579   
@@ -0,0 +1,3 @@
        5580  +
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
        5581  +
Host:example.amazonaws.com
        5582  +
 4331   5583   
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
 4332   5584   
similarity index 99%
 4333   5585   
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
 4334   5586   
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
 4335   5587   
index b625052..4ff9191 100644
 4336   5588   
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
 4337   5589   
similarity index 67%
 4338   5590   
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
 4339   5591   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4340   5592   
index 970d0a0..f4a03bb 100644
 4341         -
-- 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
        5593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4342   5594   
@@ -1,3 +1,2 @@
 4343   5595   
GET /?Param1=value1 HTTP/1.1
 4344   5596   
Host:example.amazonaws.com
 4345         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4346   5597   
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
 4347   5598   
new file mode 100644
 4348   5599   
index 0000000..0468d80
 4349         -
-- /dev/null
        5600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4350   5601   
@@ -0,0 +1,12 @@
        5602  +
{
        5603  +
    "credentials": {
        5604  +
        "access_key_id": "AKIDEXAMPLE",
        5605  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5606  +
    },
        5607  +
    "expiration_in_seconds": 3600,
        5608  +
    "normalize": true,
        5609  +
    "region": "us-east-1",
        5610  +
    "service": "service",
        5611  +
    "sign_body": false,
        5612  +
    "timestamp": "2015-08-30T12:36:00Z"
        5613  +
}
              \
 No newline at end of file
 4351   5614   
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
 4352   5615   
new file mode 100644
 4353   5616   
index 0000000..da07537
 4354         -
-- /dev/null
        5617  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4355   5618   
@@ -0,0 +1,9 @@
        5619  +
GET
        5620  +
/
        5621  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        5622  +
host:example.amazonaws.com
        5623  +
x-amz-date:20150830T123600Z
        5624  +
x-amz-region-set:us-east-1
        5625  +
        5626  +
host;x-amz-date;x-amz-region-set
        5627  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4356   5628   
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
 4357   5629   
new file mode 100644
 4358   5630   
index 0000000..edb21e5
 4359         -
-- /dev/null
        5631  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4360   5632   
@@ -0,0 +1 @@
        5633  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4361   5634   
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
 4362   5635   
new file mode 100644
 4363   5636   
index 0000000..e60394c
 4364         -
-- /dev/null
        5637  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4365   5638   
@@ -0,0 +1,6 @@
        5639  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5640  +
Host:example.amazonaws.com
        5641  +
X-Amz-Date:20150830T123600Z
        5642  +
X-Amz-Region-Set:us-east-1
        5643  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        5644  +
 4366   5645   
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
 4367   5646   
new file mode 100644
 4368   5647   
index 0000000..1dfc886
 4369         -
-- /dev/null
        5648  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4370   5649   
@@ -0,0 +1,4 @@
        5650  +
AWS4-ECDSA-P256-SHA256
        5651  +
20150830T123600Z
        5652  +
20150830/service/aws4_request
        5653  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4371   5654   
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
 4372   5655   
new file mode 100644
 4373   5656   
index 0000000..379dcb2
 4374         -
-- /dev/null
        5657  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4375   5658   
@@ -0,0 +1,4 @@
        5659  +
{
        5660  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5661  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5662  +
}
 4376   5663   
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
 4377   5664   
new file mode 100644
 4378   5665   
index 0000000..e94dc0c
 4379         -
-- /dev/null
        5666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4380   5667   
@@ -0,0 +1,7 @@
        5668  +
GET
        5669  +
/
        5670  +
%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
        5671  +
host:example.amazonaws.com
        5672  +
        5673  +
host
        5674  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4381   5675   
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
 4382   5676   
new file mode 100644
 4383   5677   
index 0000000..7489437
 4384         -
-- /dev/null
        5678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4385   5679   
@@ -0,0 +1 @@
        5680  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4386   5681   
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
 4387   5682   
new file mode 100644
 4388   5683   
index 0000000..90c0e73
 4389         -
-- /dev/null
        5684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4390   5685   
@@ -0,0 +1,3 @@
        5686  +
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
        5687  +
Host:example.amazonaws.com
        5688  +
 4391   5689   
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
 4392   5690   
new file mode 100644
 4393   5691   
index 0000000..ab8a711
 4394         -
-- /dev/null
        5692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4395   5693   
@@ -0,0 +1,4 @@
        5694  +
AWS4-ECDSA-P256-SHA256
        5695  +
20150830T123600Z
        5696  +
20150830/service/aws4_request
        5697  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4396   5698   
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
 4397   5699   
new file mode 100644
 4398   5700   
index 0000000..368c6e3
 4399         -
-- /dev/null
        5701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4400   5702   
@@ -0,0 +1,2 @@
        5703  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5704  +
Host:example.amazonaws.com
 4401   5705   
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
 4402   5706   
new file mode 100644
 4403   5707   
index 0000000..0468d80
 4404         -
-- /dev/null
        5708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4405   5709   
@@ -0,0 +1,12 @@
        5710  +
{
        5711  +
    "credentials": {
        5712  +
        "access_key_id": "AKIDEXAMPLE",
        5713  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5714  +
    },
        5715  +
    "expiration_in_seconds": 3600,
        5716  +
    "normalize": true,
        5717  +
    "region": "us-east-1",
        5718  +
    "service": "service",
        5719  +
    "sign_body": false,
        5720  +
    "timestamp": "2015-08-30T12:36:00Z"
        5721  +
}
              \
 No newline at end of file
 4406   5722   
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
 4407   5723   
similarity index 99%
 4408   5724   
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
 4409   5725   
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
 4410   5726   
index 74f625a..3db56f7 100644
 4411   5727   
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
 4412   5728   
new file mode 100644
 4413   5729   
index 0000000..e6042bc
 4414         -
-- /dev/null
        5730  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4415   5731   
@@ -0,0 +1 @@
        5732  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4416   5733   
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
 4417   5734   
new file mode 100644
 4418   5735   
index 0000000..5505969
 4419         -
-- /dev/null
        5736  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4420   5737   
@@ -0,0 +1,6 @@
        5738  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        5739  +
Host:example.amazonaws.com
        5740  +
X-Amz-Date:20150830T123600Z
        5741  +
X-Amz-Region-Set:us-east-1
        5742  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        5743  +
 4421   5744   
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
 4422   5745   
similarity index 99%
 4423   5746   
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
 4424   5747   
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
 4425   5748   
index 44873b7..e8f5e31 100644
 4426   5749   
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
 4427   5750   
new file mode 100644
 4428   5751   
index 0000000..379dcb2
 4429         -
-- /dev/null
        5752  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4430   5753   
@@ -0,0 +1,4 @@
        5754  +
{
        5755  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5756  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5757  +
}
 4431   5758   
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
 4432   5759   
similarity index 99%
 4433   5760   
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
 4434   5761   
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
 4435   5762   
index 6d30727..3fe6a9f 100644
 4436   5763   
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
 4437   5764   
new file mode 100644
 4438   5765   
index 0000000..3f35de8
 4439         -
-- /dev/null
        5766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4440   5767   
@@ -0,0 +1 @@
        5768  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 4441   5769   
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
 4442   5770   
new file mode 100644
 4443   5771   
index 0000000..30b336b
 4444         -
-- /dev/null
        5772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 4445   5773   
@@ -0,0 +1,3 @@
        5774  +
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
        5775  +
Host:example.amazonaws.com
        5776  +
 4446   5777   
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
 4447   5778   
similarity index 99%
 4448   5779   
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
 4449   5780   
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
 4450   5781   
index 99d0510..7f0565f 100644
 4451   5782   
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
 4452   5783   
similarity index 100%
 4453   5784   
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
 4454   5785   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 4455   5786   
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
 4456   5787   
new file mode 100644
 4457   5788   
index 0000000..0468d80
 4458         -
-- /dev/null
        5789  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 4459   5790   
@@ -0,0 +1,12 @@
        5791  +
{
        5792  +
    "credentials": {
        5793  +
        "access_key_id": "AKIDEXAMPLE",
        5794  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5795  +
    },
        5796  +
    "expiration_in_seconds": 3600,
        5797  +
    "normalize": true,
        5798  +
    "region": "us-east-1",
        5799  +
    "service": "service",
        5800  +
    "sign_body": false,
        5801  +
    "timestamp": "2015-08-30T12:36:00Z"
        5802  +
}
              \
 No newline at end of file
 4460   5803   
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
 4461   5804   
similarity index 99%
 4462   5805   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 4463   5806   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4464   5807   
index 816c862..cc4537a 100644
 4465   5808   
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
 4466   5809   
new file mode 100644
 4467   5810   
index 0000000..70d38c1
 4468         -
-- /dev/null
        5811  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 4469   5812   
@@ -0,0 +1 @@
        5813  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 4470   5814   
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
 4471   5815   
new file mode 100644
 4472   5816   
index 0000000..0647eea
 4473         -
-- /dev/null
        5817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 4474   5818   
@@ -0,0 +1,6 @@
        5819  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5820  +
Host:example.amazonaws.com
        5821  +
X-Amz-Date:20150830T123600Z
        5822  +
X-Amz-Region-Set:us-east-1
        5823  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        5824  +
 4475   5825   
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
 4476   5826   
similarity index 99%
 4477   5827   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 4478   5828   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4479   5829   
index 6129fc5..cc19d14 100644
 4480   5830   
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
 4481   5831   
new file mode 100644
 4482   5832   
index 0000000..379dcb2
 4483         -
-- /dev/null
        5833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 4484   5834   
@@ -0,0 +1,4 @@
        5835  +
{
        5836  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5837  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5838  +
}
 4485   5839   
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
 4486   5840   
similarity index 99%
 4487   5841   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 4488   5842   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4489   5843   
index b77ee9f..ed6a10e 100644
 4490   5844   
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
 4491   5845   
new file mode 100644
 4492   5846   
index 0000000..2ceba7b
 4493         -
-- /dev/null
        5847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 4494   5848   
@@ -0,0 +1 @@
        5849  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 4495   5850   
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
 4496   5851   
new file mode 100644
 4497   5852   
index 0000000..0cd6d0a
 4498         -
-- /dev/null
        5853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 4499   5854   
@@ -0,0 +1,3 @@
        5855  +
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
        5856  +
Host:example.amazonaws.com
        5857  +
 4500   5858   
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
 4501   5859   
similarity index 99%
 4502   5860   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 4503   5861   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4504   5862   
index 1cfed7a..aad1421 100644
 4505   5863   
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
 4506   5864   
similarity index 86%
 4507   5865   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 4508   5866   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4509   5867   
index d2833b3..36b2fe3 100644
 4510         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        5868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4511   5869   
@@ -1,3 +1,2 @@
 4512   5870   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4513   5871   
Host:example.amazonaws.com
 4514         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4515   5872   
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
 4516   5873   
new file mode 100644
 4517   5874   
index 0000000..0468d80
 4518         -
-- /dev/null
        5875  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 4519   5876   
@@ -0,0 +1,12 @@
        5877  +
{
        5878  +
    "credentials": {
        5879  +
        "access_key_id": "AKIDEXAMPLE",
        5880  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5881  +
    },
        5882  +
    "expiration_in_seconds": 3600,
        5883  +
    "normalize": true,
        5884  +
    "region": "us-east-1",
        5885  +
    "service": "service",
        5886  +
    "sign_body": false,
        5887  +
    "timestamp": "2015-08-30T12:36:00Z"
        5888  +
}
              \
 No newline at end of file
 4520   5889   
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
 4521   5890   
new file mode 100644
 4522   5891   
index 0000000..76db73d
 4523         -
-- /dev/null
        5892  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 4524   5893   
@@ -0,0 +1,9 @@
        5894  +
GET
        5895  +
/
        5896  +
        5897  +
host:example.amazonaws.com
        5898  +
x-amz-date:20150830T123600Z
        5899  +
x-amz-region-set:us-east-1
        5900  +
        5901  +
host;x-amz-date;x-amz-region-set
        5902  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4525   5903   
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
 4526   5904   
new file mode 100644
 4527   5905   
index 0000000..281cc62
 4528         -
-- /dev/null
        5906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 4529   5907   
@@ -0,0 +1 @@
        5908  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 4530   5909   
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
 4531   5910   
new file mode 100644
 4532   5911   
index 0000000..cce9925
 4533         -
-- /dev/null
        5912  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 4534   5913   
@@ -0,0 +1,6 @@
        5914  +
GET / HTTP/1.1
        5915  +
Host:example.amazonaws.com
        5916  +
X-Amz-Date:20150830T123600Z
        5917  +
X-Amz-Region-Set:us-east-1
        5918  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        5919  +
 4535   5920   
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
 4536   5921   
new file mode 100644
 4537   5922   
index 0000000..600f1d8
 4538         -
-- /dev/null
        5923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 4539   5924   
@@ -0,0 +1,4 @@
        5925  +
AWS4-ECDSA-P256-SHA256
        5926  +
20150830T123600Z
        5927  +
20150830/service/aws4_request
        5928  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4540   5929   
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
 4541   5930   
new file mode 100644
 4542   5931   
index 0000000..379dcb2
 4543         -
-- /dev/null
        5932  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 4544   5933   
@@ -0,0 +1,4 @@
        5934  +
{
        5935  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5936  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5937  +
}
 4545   5938   
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
 4546   5939   
new file mode 100644
 4547   5940   
index 0000000..779c51c
 4548         -
-- /dev/null
        5941  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 4549   5942   
@@ -0,0 +1,7 @@
        5943  +
GET
        5944  +
/
        5945  +
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
        5946  +
host:example.amazonaws.com
        5947  +
        5948  +
host
        5949  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4550   5950   
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
 4551   5951   
new file mode 100644
 4552   5952   
index 0000000..2979e5e
 4553         -
-- /dev/null
        5953  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 4554   5954   
@@ -0,0 +1 @@
        5955  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 4555   5956   
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
 4556   5957   
new file mode 100644
 4557   5958   
index 0000000..1b3179c
 4558         -
-- /dev/null
        5959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 4559   5960   
@@ -0,0 +1,3 @@
        5961  +
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
        5962  +
Host:example.amazonaws.com
        5963  +
 4560   5964   
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
 4561   5965   
new file mode 100644
 4562   5966   
index 0000000..6e29a7e
 4563         -
-- /dev/null
        5967  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 4564   5968   
@@ -0,0 +1,4 @@
        5969  +
AWS4-ECDSA-P256-SHA256
        5970  +
20150830T123600Z
        5971  +
20150830/service/aws4_request
        5972  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4565   5973   
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
 4566   5974   
similarity index 60%
 4567   5975   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 4568   5976   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4569   5977   
index 0f7a9bf..e659c3b 100644
 4570         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        5978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4571   5979   
@@ -1,3 +1,2 @@
 4572   5980   
GET / HTTP/1.1
 4573   5981   
Host:example.amazonaws.com
 4574         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4575   5982   
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
 4576   5983   
new file mode 100644
 4577   5984   
index 0000000..0468d80
 4578         -
-- /dev/null
        5985  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 4579   5986   
@@ -0,0 +1,12 @@
        5987  +
{
        5988  +
    "credentials": {
        5989  +
        "access_key_id": "AKIDEXAMPLE",
        5990  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5991  +
    },
        5992  +
    "expiration_in_seconds": 3600,
        5993  +
    "normalize": true,
        5994  +
    "region": "us-east-1",
        5995  +
    "service": "service",
        5996  +
    "sign_body": false,
        5997  +
    "timestamp": "2015-08-30T12:36:00Z"
        5998  +
}
              \
 No newline at end of file
 4580   5999   
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
 4581   6000   
new file mode 100644
 4582   6001   
index 0000000..8841ddf
 4583         -
-- /dev/null
        6002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 4584   6003   
@@ -0,0 +1,9 @@
        6004  +
GET
        6005  +
/
        6006  +
%E1%88%B4=bar
        6007  +
host:example.amazonaws.com
        6008  +
x-amz-date:20150830T123600Z
        6009  +
x-amz-region-set:us-east-1
        6010  +
        6011  +
host;x-amz-date;x-amz-region-set
        6012  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4585   6013   
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
 4586   6014   
new file mode 100644
 4587   6015   
index 0000000..1497add
 4588         -
-- /dev/null
        6016  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 4589   6017   
@@ -0,0 +1 @@
        6018  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 4590   6019   
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
 4591   6020   
new file mode 100644
 4592   6021   
index 0000000..961bc10
 4593         -
-- /dev/null
        6022  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 4594   6023   
@@ -0,0 +1,6 @@
        6024  +
GET /?ሴ=bar HTTP/1.1
        6025  +
Host:example.amazonaws.com
        6026  +
X-Amz-Date:20150830T123600Z
        6027  +
X-Amz-Region-Set:us-east-1
        6028  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        6029  +
 4595   6030   
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
 4596   6031   
new file mode 100644
 4597   6032   
index 0000000..e78ed70
 4598         -
-- /dev/null
        6033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 4599   6034   
@@ -0,0 +1,4 @@
        6035  +
AWS4-ECDSA-P256-SHA256
        6036  +
20150830T123600Z
        6037  +
20150830/service/aws4_request
        6038  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 4600   6039   
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
 4601   6040   
new file mode 100644
 4602   6041   
index 0000000..379dcb2
 4603         -
-- /dev/null
        6042  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 4604   6043   
@@ -0,0 +1,4 @@
        6044  +
{
        6045  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6046  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6047  +
}
 4605   6048   
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
 4606   6049   
new file mode 100644
 4607   6050   
index 0000000..6d5ae93
 4608         -
-- /dev/null
        6051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 4609   6052   
@@ -0,0 +1,7 @@
        6053  +
GET
        6054  +
/
        6055  +
%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
        6056  +
host:example.amazonaws.com
        6057  +
        6058  +
host
        6059  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4610   6060   
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
 4611   6061   
new file mode 100644
 4612   6062   
index 0000000..92107f2
 4613         -
-- /dev/null
        6063  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 4614   6064   
@@ -0,0 +1 @@
        6065  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 4615   6066   
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
 4616   6067   
new file mode 100644
 4617   6068   
index 0000000..bb8a75b
 4618         -
-- /dev/null
        6069  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 4619   6070   
@@ -0,0 +1,3 @@
        6071  +
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
        6072  +
Host:example.amazonaws.com
        6073  +
 4620   6074   
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
 4621   6075   
new file mode 100644
 4622   6076   
index 0000000..9fa94c7
 4623         -
-- /dev/null
        6077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 4624   6078   
@@ -0,0 +1,4 @@
        6079  +
AWS4-ECDSA-P256-SHA256
        6080  +
20150830T123600Z
        6081  +
20150830/service/aws4_request
        6082  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 4625   6083   
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
 4626   6084   
new file mode 100644
 4627   6085   
index 0000000..aff333a
 4628         -
-- /dev/null
        6086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 4629   6087   
@@ -0,0 +1,2 @@
        6088  +
GET /?ሴ=bar HTTP/1.1
        6089  +
Host:example.amazonaws.com
 4630   6090   
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
 4631   6091   
new file mode 100644
 4632   6092   
index 0000000..a334e18
 4633         -
-- /dev/null
        6093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 4634   6094   
@@ -0,0 +1,13 @@
        6095  +
{
        6096  +
    "credentials": {
        6097  +
        "access_key_id": "AKIDEXAMPLE",
        6098  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6099  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6100  +
    },
        6101  +
    "expiration_in_seconds": 3600,
        6102  +
    "normalize": true,
        6103  +
    "region": "us-east-1",
        6104  +
    "service": "service",
        6105  +
    "sign_body": false,
        6106  +
    "timestamp": "2015-08-30T12:36:00Z"
        6107  +
}
              \
 No newline at end of file
 4635   6108   
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
 4636   6109   
similarity index 99%
 4637   6110   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 4638   6111   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 4639   6112   
index f14defd..0e9ad42 100644
 4640   6113   
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
 4641   6114   
new file mode 100644
 4642   6115   
index 0000000..a7673b5
 4643         -
-- /dev/null
        6116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 4644   6117   
@@ -0,0 +1 @@
        6118  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 4645   6119   
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
 4646   6120   
new file mode 100644
 4647   6121   
index 0000000..ed16e76
 4648         -
-- /dev/null
        6122  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 4649   6123   
@@ -0,0 +1,7 @@
        6124  +
GET / HTTP/1.1
        6125  +
Host:example.amazonaws.com
        6126  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6127  +
X-Amz-Date:20150830T123600Z
        6128  +
X-Amz-Region-Set:us-east-1
        6129  +
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
        6130  +
 4650   6131   
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
 4651   6132   
similarity index 99%
 4652   6133   
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
 4653   6134   
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
 4654   6135   
index 4edece5..6c1ec65 100644
 4655   6136   
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
 4656   6137   
new file mode 100644
 4657   6138   
index 0000000..379dcb2
 4658         -
-- /dev/null
        6139  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 4659   6140   
@@ -0,0 +1,4 @@
        6141  +
{
        6142  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6143  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6144  +
}
 4660   6145   
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
 4661   6146   
similarity index 99%
 4662   6147   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 4663   6148   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 4664   6149   
index 7c042af..1876b42 100644
 4665   6150   
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
 4666   6151   
new file mode 100644
 4667   6152   
index 0000000..903dfb4
 4668         -
-- /dev/null
        6153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 4669   6154   
@@ -0,0 +1 @@
        6155  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 4670   6156   
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
 4671   6157   
new file mode 100644
 4672   6158   
index 0000000..bf1d246
 4673         -
-- /dev/null
        6159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 4674   6160   
@@ -0,0 +1,3 @@
        6161  +
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
        6162  +
Host:example.amazonaws.com
        6163  +
 4675   6164   
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
 4676   6165   
similarity index 99%
 4677   6166   
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
 4678   6167   
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
 4679   6168   
index 0fd066a..f1b1790 100644
 4680   6169   
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
 4681   6170   
similarity index 60%
 4682   6171   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 4683   6172   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4684   6173   
index 0f7a9bf..e659c3b 100644
 4685         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4686   6175   
@@ -1,3 +1,2 @@
 4687   6176   
GET / HTTP/1.1
 4688   6177   
Host:example.amazonaws.com
 4689         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4690   6178   
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
 4691   6179   
new file mode 100644
 4692   6180   
index 0000000..76db73d
 4693         -
-- /dev/null
        6181  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 4694   6182   
@@ -0,0 +1,9 @@
        6183  +
GET
        6184  +
/
        6185  +
        6186  +
host:example.amazonaws.com
        6187  +
x-amz-date:20150830T123600Z
        6188  +
x-amz-region-set:us-east-1
        6189  +
        6190  +
host;x-amz-date;x-amz-region-set
        6191  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4695   6192   
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
 4696   6193   
new file mode 100644
 4697   6194   
index 0000000..0468d80
 4698         -
-- /dev/null
        6195  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 4699   6196   
@@ -0,0 +1,12 @@
        6197  +
{
        6198  +
    "credentials": {
        6199  +
        "access_key_id": "AKIDEXAMPLE",
        6200  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6201  +
    },
        6202  +
    "expiration_in_seconds": 3600,
        6203  +
    "normalize": true,
        6204  +
    "region": "us-east-1",
        6205  +
    "service": "service",
        6206  +
    "sign_body": false,
        6207  +
    "timestamp": "2015-08-30T12:36:00Z"
        6208  +
}
              \
 No newline at end of file
 4700   6209   
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
 4701   6210   
new file mode 100644
 4702   6211   
index 0000000..76db73d
 4703         -
-- /dev/null
        6212  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 4704   6213   
@@ -0,0 +1,9 @@
        6214  +
GET
        6215  +
/
        6216  +
        6217  +
host:example.amazonaws.com
        6218  +
x-amz-date:20150830T123600Z
        6219  +
x-amz-region-set:us-east-1
        6220  +
        6221  +
host;x-amz-date;x-amz-region-set
        6222  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4705   6223   
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
 4706   6224   
new file mode 100644
 4707   6225   
index 0000000..a96ff24
 4708         -
-- /dev/null
        6226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 4709   6227   
@@ -0,0 +1 @@
        6228  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 4710   6229   
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
 4711   6230   
new file mode 100644
 4712   6231   
index 0000000..689078b
 4713         -
-- /dev/null
        6232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 4714   6233   
@@ -0,0 +1,6 @@
        6234  +
GET / HTTP/1.1
        6235  +
Host:example.amazonaws.com
        6236  +
X-Amz-Date:20150830T123600Z
        6237  +
X-Amz-Region-Set:us-east-1
        6238  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6239  +
 4715   6240   
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
 4716   6241   
new file mode 100644
 4717   6242   
index 0000000..600f1d8
 4718         -
-- /dev/null
        6243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 4719   6244   
@@ -0,0 +1,4 @@
        6245  +
AWS4-ECDSA-P256-SHA256
        6246  +
20150830T123600Z
        6247  +
20150830/service/aws4_request
        6248  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4720   6249   
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
 4721   6250   
new file mode 100644
 4722   6251   
index 0000000..379dcb2
 4723         -
-- /dev/null
        6252  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 4724   6253   
@@ -0,0 +1,4 @@
        6254  +
{
        6255  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6256  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6257  +
}
 4725   6258   
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
 4726   6259   
new file mode 100644
 4727   6260   
index 0000000..779c51c
 4728         -
-- /dev/null
        6261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 4729   6262   
@@ -0,0 +1,7 @@
        6263  +
GET
        6264  +
/
        6265  +
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
        6266  +
host:example.amazonaws.com
        6267  +
        6268  +
host
        6269  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4730   6270   
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
 4731   6271   
new file mode 100644
 4732   6272   
index 0000000..cc42158
 4733         -
-- /dev/null
        6273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 4734   6274   
@@ -0,0 +1 @@
        6275  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 4735   6276   
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
 4736   6277   
new file mode 100644
 4737   6278   
index 0000000..dc6d01d
 4738         -
-- /dev/null
        6279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 4739   6280   
@@ -0,0 +1,3 @@
        6281  +
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
        6282  +
Host:example.amazonaws.com
        6283  +
 4740   6284   
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
 4741   6285   
new file mode 100644
 4742   6286   
index 0000000..6e29a7e
 4743         -
-- /dev/null
        6287  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 4744   6288   
@@ -0,0 +1,4 @@
        6289  +
AWS4-ECDSA-P256-SHA256
        6290  +
20150830T123600Z
        6291  +
20150830/service/aws4_request
        6292  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4745   6293   
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
 4746   6294   
new file mode 100644
 4747   6295   
index 0000000..e659c3b
 4748         -
-- /dev/null
        6296  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 4749   6297   
@@ -0,0 +1,2 @@
        6298  +
GET / HTTP/1.1
        6299  +
Host:example.amazonaws.com
 4750   6300   
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
 4751   6301   
new file mode 100644
 4752   6302   
index 0000000..600f1d8
 4753         -
-- /dev/null
        6303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 4754   6304   
@@ -0,0 +1,4 @@
        6305  +
AWS4-ECDSA-P256-SHA256
        6306  +
20150830T123600Z
        6307  +
20150830/service/aws4_request
        6308  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4755   6309   
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
 4756   6310   
new file mode 100644
 4757   6311   
index 0000000..0468d80
 4758         -
-- /dev/null
        6312  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 4759   6313   
@@ -0,0 +1,12 @@
        6314  +
{
        6315  +
    "credentials": {
        6316  +
        "access_key_id": "AKIDEXAMPLE",
        6317  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6318  +
    },
        6319  +
    "expiration_in_seconds": 3600,
        6320  +
    "normalize": true,
        6321  +
    "region": "us-east-1",
        6322  +
    "service": "service",
        6323  +
    "sign_body": false,
        6324  +
    "timestamp": "2015-08-30T12:36:00Z"
        6325  +
}
              \
 No newline at end of file
 4760   6326   
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
 4761   6327   
similarity index 99%
 4762   6328   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 4763   6329   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 4764   6330   
index a6942c1..e881ac7 100644
 4765   6331   
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
 4766   6332   
new file mode 100644
 4767   6333   
index 0000000..4210210
 4768         -
-- /dev/null
        6334  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 4769   6335   
@@ -0,0 +1 @@
        6336  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 4770   6337   
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
 4771   6338   
new file mode 100644
 4772   6339   
index 0000000..257b110
 4773         -
-- /dev/null
        6340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 4774   6341   
@@ -0,0 +1,6 @@
        6342  +
POST / HTTP/1.1
        6343  +
Host:example.amazonaws.com
        6344  +
X-Amz-Date:20150830T123600Z
        6345  +
X-Amz-Region-Set:us-east-1
        6346  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        6347  +
 4775   6348   
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
 4776   6349   
similarity index 99%
 4777   6350   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 4778   6351   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 4779   6352   
index d5650cb..f8adf13 100644
 4780   6353   
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
 4781   6354   
new file mode 100644
 4782   6355   
index 0000000..379dcb2
 4783         -
-- /dev/null
        6356  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 4784   6357   
@@ -0,0 +1,4 @@
        6358  +
{
        6359  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6360  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6361  +
}
 4785   6362   
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
 4786   6363   
similarity index 99%
 4787   6364   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 4788   6365   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 4789   6366   
index e48ce07..5ea8e3c 100644
 4790   6367   
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
 4791   6368   
new file mode 100644
 4792   6369   
index 0000000..9e2069e
 4793         -
-- /dev/null
        6370  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 4794   6371   
@@ -0,0 +1 @@
        6372  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 4795   6373   
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
 4796   6374   
new file mode 100644
 4797   6375   
index 0000000..67f5d29
 4798         -
-- /dev/null
        6376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 4799   6377   
@@ -0,0 +1,3 @@
        6378  +
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
        6379  +
Host:example.amazonaws.com
        6380  +
 4800   6381   
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
 4801   6382   
similarity index 99%
 4802   6383   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 4803   6384   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 4804   6385   
index 34e3382..711c162 100644
 4805   6386   
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
 4806   6387   
similarity index 61%
 4807   6388   
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
 4808   6389   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4809   6390   
index 3dc4179..3f0a82a 100644
 4810         -
-- 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
        6391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4811   6392   
@@ -1,3 +1,2 @@
 4812   6393   
POST / HTTP/1.1
 4813   6394   
Host:example.amazonaws.com
 4814         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4815   6395   
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
 4816   6396   
new file mode 100644
 4817   6397   
index 0000000..0468d80
 4818         -
-- /dev/null
        6398  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 4819   6399   
@@ -0,0 +1,12 @@
        6400  +
{
        6401  +
    "credentials": {
        6402  +
        "access_key_id": "AKIDEXAMPLE",
        6403  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6404  +
    },
        6405  +
    "expiration_in_seconds": 3600,
        6406  +
    "normalize": true,
        6407  +
    "region": "us-east-1",
        6408  +
    "service": "service",
        6409  +
    "sign_body": false,
        6410  +
    "timestamp": "2015-08-30T12:36:00Z"
        6411  +
}
              \
 No newline at end of file
 4820   6412   
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
 4821   6413   
similarity index 99%
 4822   6414   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 4823   6415   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 4824   6416   
index a8e1727..2883822 100644
 4825   6417   
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
 4826   6418   
new file mode 100644
 4827   6419   
index 0000000..e3c2e6e
 4828         -
-- /dev/null
        6420  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 4829   6421   
@@ -0,0 +1 @@
        6422  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 4830   6423   
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
 4831   6424   
new file mode 100644
 4832   6425   
index 0000000..1d6e288
 4833         -
-- /dev/null
        6426  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 4834   6427   
@@ -0,0 +1,7 @@
        6428  +
POST / HTTP/1.1
        6429  +
Host:example.amazonaws.com
        6430  +
My-Header1:value1
        6431  +
X-Amz-Date:20150830T123600Z
        6432  +
X-Amz-Region-Set:us-east-1
        6433  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        6434  +
 4835   6435   
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
 4836   6436   
similarity index 99%
 4837   6437   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 4838   6438   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 4839   6439   
index f6e3e9b..7c5236a 100644
 4840   6440   
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
 4841   6441   
new file mode 100644
 4842   6442   
index 0000000..379dcb2
 4843         -
-- /dev/null
        6443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 4844   6444   
@@ -0,0 +1,4 @@
        6445  +
{
        6446  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6447  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6448  +
}
 4845   6449   
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
 4846   6450   
similarity index 99%
 4847   6451   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 4848   6452   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 4849   6453   
index 0ae73e1..2cf3f29 100644
 4850   6454   
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
 4851   6455   
new file mode 100644
 4852   6456   
index 0000000..2a08401
 4853         -
-- /dev/null
        6457  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 4854   6458   
@@ -0,0 +1 @@
        6459  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 4855   6460   
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
 4856   6461   
new file mode 100644
 4857   6462   
index 0000000..8d2343f
 4858         -
-- /dev/null
        6463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 4859   6464   
@@ -0,0 +1,4 @@
        6465  +
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
        6466  +
Host:example.amazonaws.com
        6467  +
My-Header1:value1
        6468  +
 4860   6469   
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
 4861   6470   
similarity index 99%
 4862   6471   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 4863   6472   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 4864   6473   
index 8cb96bf..2c4db7a 100644
 4865   6474   
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
 4866   6475   
similarity index 69%
 4867   6476   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 4868   6477   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4869   6478   
index 0253f19..917720e 100644
 4870         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        6479  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4871   6480   
@@ -1,4 +1,3 @@
 4872   6481   
POST / HTTP/1.1
 4873   6482   
Host:example.amazonaws.com
 4874   6483   
My-Header1:value1
 4875         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4876   6484   
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
 4877   6485   
new file mode 100644
 4878   6486   
index 0000000..0468d80
 4879         -
-- /dev/null
        6487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 4880   6488   
@@ -0,0 +1,12 @@
        6489  +
{
        6490  +
    "credentials": {
        6491  +
        "access_key_id": "AKIDEXAMPLE",
        6492  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6493  +
    },
        6494  +
    "expiration_in_seconds": 3600,
        6495  +
    "normalize": true,
        6496  +
    "region": "us-east-1",
        6497  +
    "service": "service",
        6498  +
    "sign_body": false,
        6499  +
    "timestamp": "2015-08-30T12:36:00Z"
        6500  +
}
              \
 No newline at end of file
 4881   6501   
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
 4882   6502   
similarity index 99%
 4883   6503   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 4884   6504   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 4885   6505   
index 1dc3ef8..164e65c 100644
 4886   6506   
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
 4887   6507   
new file mode 100644
 4888   6508   
index 0000000..7072b0e
 4889         -
-- /dev/null
        6509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 4890   6510   
@@ -0,0 +1 @@
        6511  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 4891   6512   
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
 4892   6513   
new file mode 100644
 4893   6514   
index 0000000..17f5e3e
 4894         -
-- /dev/null
        6515  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 4895   6516   
@@ -0,0 +1,7 @@
        6517  +
POST / HTTP/1.1
        6518  +
Host:example.amazonaws.com
        6519  +
My-Header1:VALUE1
        6520  +
X-Amz-Date:20150830T123600Z
        6521  +
X-Amz-Region-Set:us-east-1
        6522  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        6523  +
 4896   6524   
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
 4897   6525   
similarity index 99%
 4898   6526   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 4899   6527   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 4900   6528   
index 59c7e45..620f54e 100644
 4901   6529   
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
 4902   6530   
new file mode 100644
 4903   6531   
index 0000000..379dcb2
 4904         -
-- /dev/null
        6532  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 4905   6533   
@@ -0,0 +1,4 @@
        6534  +
{
        6535  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6536  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6537  +
}
 4906   6538   
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
 4907   6539   
similarity index 99%
 4908   6540   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 4909   6541   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 4910   6542   
index 377e6f3..23e0da3 100644
 4911   6543   
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
 4912   6544   
new file mode 100644
 4913   6545   
index 0000000..a18acb8
 4914         -
-- /dev/null
        6546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 4915   6547   
@@ -0,0 +1 @@
        6548  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 4916   6549   
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
 4917   6550   
new file mode 100644
 4918   6551   
index 0000000..7cbdcfa
 4919         -
-- /dev/null
        6552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 4920   6553   
@@ -0,0 +1,4 @@
        6554  +
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
        6555  +
Host:example.amazonaws.com
        6556  +
My-Header1:VALUE1
        6557  +
 4921   6558   
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
 4922   6559   
similarity index 99%
 4923   6560   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 4924   6561   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 4925   6562   
index 84a7afd..0c90627 100644
 4926   6563   
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
 4927   6564   
similarity index 69%
 4928   6565   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 4929   6566   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4930   6567   
index 3f9987a..5f14c91 100644
 4931         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        6568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4932   6569   
@@ -1,4 +1,3 @@
 4933   6570   
POST / HTTP/1.1
 4934   6571   
Host:example.amazonaws.com
 4935   6572   
My-Header1:VALUE1
 4936         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4937   6573   
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
 4938   6574   
new file mode 100644
 4939   6575   
index 0000000..8f1d5ce
 4940         -
-- /dev/null
        6576  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 4941   6577   
@@ -0,0 +1,14 @@
        6578  +
{
        6579  +
    "credentials": {
        6580  +
        "access_key_id": "AKIDEXAMPLE",
        6581  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6582  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6583  +
    },
        6584  +
    "expiration_in_seconds": 3600,
        6585  +
    "normalize": true,
        6586  +
    "region": "us-east-1",
        6587  +
    "service": "service",
        6588  +
    "sign_body": false,
        6589  +
    "timestamp": "2015-08-30T12:36:00Z",
        6590  +
    "omit_session_token": true
        6591  +
}
 4942   6592   
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
 4943   6593   
similarity index 99%
 4944   6594   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 4945   6595   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 4946   6596   
index a6942c1..e881ac7 100644
 4947   6597   
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
 4948   6598   
new file mode 100644
 4949   6599   
index 0000000..9c5ecb9
 4950         -
-- /dev/null
        6600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 4951   6601   
@@ -0,0 +1 @@
        6602  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 4952   6603   
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
 4953   6604   
similarity index 52%
 4954   6605   
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
 4955   6606   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4956   6607   
index 9d91775..61b6527 100644
 4957         -
-- 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
        6608  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4958   6609   
@@ -1,4 +1,7 @@
 4959   6610   
POST / HTTP/1.1
 4960   6611   
Host:example.amazonaws.com
 4961         -
X-Amz-Date:20150830T123600Z
 4962   6612   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6613  +
X-Amz-Date:20150830T123600Z
        6614  +
X-Amz-Region-Set:us-east-1
        6615  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        6616  +
 4963   6617   
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
 4964   6618   
similarity index 99%
 4965   6619   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 4966   6620   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 4967   6621   
index d5650cb..f8adf13 100644
 4968   6622   
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
 4969   6623   
new file mode 100644
 4970   6624   
index 0000000..379dcb2
 4971         -
-- /dev/null
        6625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 4972   6626   
@@ -0,0 +1,4 @@
        6627  +
{
        6628  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6629  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6630  +
}
 4973   6631   
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
 4974   6632   
similarity index 99%
 4975   6633   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 4976   6634   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 4977   6635   
index e48ce07..5ea8e3c 100644
 4978   6636   
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
 4979   6637   
new file mode 100644
 4980   6638   
index 0000000..ff8823a
 4981         -
-- /dev/null
        6639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 4982   6640   
@@ -0,0 +1 @@
        6641  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 4983   6642   
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
 4984   6643   
new file mode 100644
 4985   6644   
index 0000000..cfac41b
 4986         -
-- /dev/null
        6645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 4987   6646   
@@ -0,0 +1,3 @@
        6647  +
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
        6648  +
Host:example.amazonaws.com
        6649  +
 4988   6650   
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
 4989   6651   
similarity index 99%
 4990   6652   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 4991   6653   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 4992   6654   
index 34e3382..711c162 100644
 4993   6655   
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
 4994   6656   
similarity index 61%
 4995   6657   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 4996   6658   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4997   6659   
index 3dc4179..3f0a82a 100644
 4998         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        6660  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4999   6661   
@@ -1,3 +1,2 @@
 5000   6662   
POST / HTTP/1.1
 5001   6663   
Host:example.amazonaws.com
 5002         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5003   6664   
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
 5004   6665   
new file mode 100644
 5005   6666   
index 0000000..5187392
 5006         -
-- /dev/null
        6667  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 5007   6668   
@@ -0,0 +1,14 @@
        6669  +
{
        6670  +
    "credentials": {
        6671  +
        "access_key_id": "AKIDEXAMPLE",
        6672  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6673  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6674  +
    },
        6675  +
    "expiration_in_seconds": 3600,
        6676  +
    "normalize": true,
        6677  +
    "region": "us-east-1",
        6678  +
    "service": "service",
        6679  +
    "sign_body": false,
        6680  +
    "timestamp": "2015-08-30T12:36:00Z",
        6681  +
    "omit_session_token": false
        6682  +
}
 5008   6683   
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
 5009   6684   
similarity index 99%
 5010   6685   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 5011   6686   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5012   6687   
index dd408c8..e95924e 100644
 5013   6688   
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
 5014   6689   
new file mode 100644
 5015   6690   
index 0000000..1573f07
 5016         -
-- /dev/null
        6691  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 5017   6692   
@@ -0,0 +1 @@
        6693  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 5018   6694   
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
 5019   6695   
new file mode 100644
 5020   6696   
index 0000000..6ef9a08
 5021         -
-- /dev/null
        6697  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 5022   6698   
@@ -0,0 +1,7 @@
        6699  +
POST / HTTP/1.1
        6700  +
Host:example.amazonaws.com
        6701  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6702  +
X-Amz-Date:20150830T123600Z
        6703  +
X-Amz-Region-Set:us-east-1
        6704  +
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
        6705  +
 5023   6706   
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
 5024   6707   
similarity index 99%
 5025   6708   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 5026   6709   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5027   6710   
index f352b54..3c3235f 100644
 5028   6711   
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
 5029   6712   
new file mode 100644
 5030   6713   
index 0000000..379dcb2
 5031         -
-- /dev/null
        6714  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 5032   6715   
@@ -0,0 +1,4 @@
        6716  +
{
        6717  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6718  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6719  +
}
 5033   6720   
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
 5034   6721   
similarity index 99%
 5035   6722   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 5036   6723   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5037   6724   
index 832cdc0..63b7de5 100644
 5038   6725   
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
 5039   6726   
new file mode 100644
 5040   6727   
index 0000000..713f57c
 5041         -
-- /dev/null
        6728  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 5042   6729   
@@ -0,0 +1 @@
        6730  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 5043   6731   
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
 5044   6732   
new file mode 100644
 5045   6733   
index 0000000..32c3bb3
 5046         -
-- /dev/null
        6734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 5047   6735   
@@ -0,0 +1,3 @@
        6736  +
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
        6737  +
Host:example.amazonaws.com
        6738  +
 5048   6739   
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
 5049   6740   
similarity index 99%
 5050   6741   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 5051   6742   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5052   6743   
index d7f3668..b46cd8c 100644
 5053   6744   
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
 5054   6745   
similarity index 60%
 5055   6746   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 5056   6747   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5057   6748   
index 8b5efc8..3f0a82a 100644
 5058         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        6749  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5059   6750   
@@ -1,3 +1,2 @@
 5060   6751   
POST / HTTP/1.1
 5061   6752   
Host:example.amazonaws.com
 5062         -
X-Amz-Date:20150830T123600Z
 5063   6753   
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
 5064   6754   
new file mode 100644
 5065   6755   
index 0000000..0468d80
 5066         -
-- /dev/null
        6756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 5067   6757   
@@ -0,0 +1,12 @@
        6758  +
{
        6759  +
    "credentials": {
        6760  +
        "access_key_id": "AKIDEXAMPLE",
        6761  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6762  +
    },
        6763  +
    "expiration_in_seconds": 3600,
        6764  +
    "normalize": true,
        6765  +
    "region": "us-east-1",
        6766  +
    "service": "service",
        6767  +
    "sign_body": false,
        6768  +
    "timestamp": "2015-08-30T12:36:00Z"
        6769  +
}
              \
 No newline at end of file
 5068   6770   
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
 5069   6771   
similarity index 99%
 5070   6772   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 5071   6773   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5072   6774   
index 02af60f..34b8c11 100644
 5073   6775   
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
 5074   6776   
new file mode 100644
 5075   6777   
index 0000000..aac6427
 5076         -
-- /dev/null
        6778  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 5077   6779   
@@ -0,0 +1 @@
        6780  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 5078   6781   
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
 5079   6782   
new file mode 100644
 5080   6783   
index 0000000..a611436
 5081         -
-- /dev/null
        6784  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 5082   6785   
@@ -0,0 +1,6 @@
        6786  +
POST /?Param1=value1 HTTP/1.1
        6787  +
Host:example.amazonaws.com
        6788  +
X-Amz-Date:20150830T123600Z
        6789  +
X-Amz-Region-Set:us-east-1
        6790  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        6791  +
 5083   6792   
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
 5084   6793   
similarity index 99%
 5085   6794   
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
 5086   6795   
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
 5087   6796   
index 4256b4f..ad88dff 100644
 5088   6797   
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
 5089   6798   
new file mode 100644
 5090   6799   
index 0000000..379dcb2
 5091         -
-- /dev/null
        6800  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 5092   6801   
@@ -0,0 +1,4 @@
        6802  +
{
        6803  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6804  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6805  +
}
 5093   6806   
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
 5094   6807   
similarity index 99%
 5095   6808   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 5096   6809   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5097   6810   
index fa84bbd..76d5ad6 100644
 5098   6811   
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
 5099   6812   
new file mode 100644
 5100   6813   
index 0000000..4cb1c94
 5101         -
-- /dev/null
        6814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 5102   6815   
@@ -0,0 +1 @@
        6816  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 5103   6817   
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
 5104   6818   
new file mode 100644
 5105   6819   
index 0000000..bd22b97
 5106         -
-- /dev/null
        6820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 5107   6821   
@@ -0,0 +1,3 @@
        6822  +
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
        6823  +
Host:example.amazonaws.com
        6824  +
 5108   6825   
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
 5109   6826   
similarity index 99%
 5110   6827   
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
 5111   6828   
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
 5112   6829   
index de270ef..8c9d319 100644
 5113   6830   
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
 5114   6831   
similarity index 67%
 5115   6832   
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
 5116   6833   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5117   6834   
index 9157bc7..c9d6e5d 100644
 5118         -
-- 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
        6835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5119   6836   
@@ -1,3 +1,2 @@
 5120   6837   
POST /?Param1=value1 HTTP/1.1
 5121   6838   
Host:example.amazonaws.com
 5122         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5123   6839   
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
 5124   6840   
new file mode 100644
 5125   6841   
index 0000000..0468d80
 5126         -
-- /dev/null
        6842  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 5127   6843   
@@ -0,0 +1,12 @@
        6844  +
{
        6845  +
    "credentials": {
        6846  +
        "access_key_id": "AKIDEXAMPLE",
        6847  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6848  +
    },
        6849  +
    "expiration_in_seconds": 3600,
        6850  +
    "normalize": true,
        6851  +
    "region": "us-east-1",
        6852  +
    "service": "service",
        6853  +
    "sign_body": false,
        6854  +
    "timestamp": "2015-08-30T12:36:00Z"
        6855  +
}
              \
 No newline at end of file
 5128   6856   
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
 5129   6857   
similarity index 99%
 5130   6858   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 5131   6859   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5132   6860   
index 02af60f..34b8c11 100644
 5133   6861   
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
 5134   6862   
new file mode 100644
 5135   6863   
index 0000000..34f75c8
 5136         -
-- /dev/null
        6864  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 5137   6865   
@@ -0,0 +1 @@
        6866  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 5138   6867   
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
 5139   6868   
new file mode 100644
 5140   6869   
index 0000000..c731408
 5141         -
-- /dev/null
        6870  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 5142   6871   
@@ -0,0 +1,6 @@
        6872  +
POST /?Param1=value1 HTTP/1.1
        6873  +
Host:example.amazonaws.com
        6874  +
X-Amz-Date:20150830T123600Z
        6875  +
X-Amz-Region-Set:us-east-1
        6876  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        6877  +
 5143   6878   
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
 5144   6879   
similarity index 99%
 5145   6880   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 5146   6881   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5147   6882   
index 4256b4f..ad88dff 100644
 5148   6883   
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
 5149   6884   
new file mode 100644
 5150   6885   
index 0000000..379dcb2
 5151         -
-- /dev/null
        6886  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 5152   6887   
@@ -0,0 +1,4 @@
        6888  +
{
        6889  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6890  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6891  +
}
 5153   6892   
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
 5154   6893   
similarity index 99%
 5155   6894   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 5156   6895   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 5157   6896   
index fa84bbd..76d5ad6 100644
 5158   6897   
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
 5159   6898   
new file mode 100644
 5160   6899   
index 0000000..ae000d6
 5161         -
-- /dev/null
        6900  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 5162   6901   
@@ -0,0 +1 @@
        6902  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 5163   6903   
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
 5164   6904   
new file mode 100644
 5165   6905   
index 0000000..a868f7d
 5166         -
-- /dev/null
        6906  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 5167   6907   
@@ -0,0 +1,3 @@
        6908  +
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
        6909  +
Host:example.amazonaws.com
        6910  +
 5168   6911   
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
 5169   6912   
similarity index 99%
 5170   6913   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 5171   6914   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 5172   6915   
index de270ef..8c9d319 100644
 5173   6916   
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
 5174   6917   
similarity index 67%
 5175   6918   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 5176   6919   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5177   6920   
index 9157bc7..c9d6e5d 100644
 5178         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        6921  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5179   6922   
@@ -1,3 +1,2 @@
 5180   6923   
POST /?Param1=value1 HTTP/1.1
 5181   6924   
Host:example.amazonaws.com
 5182         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5183   6925   
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
 5184   6926   
new file mode 100644
 5185   6927   
index 0000000..0468d80
 5186         -
-- /dev/null
        6928  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 5187   6929   
@@ -0,0 +1,12 @@
        6930  +
{
        6931  +
    "credentials": {
        6932  +
        "access_key_id": "AKIDEXAMPLE",
        6933  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6934  +
    },
        6935  +
    "expiration_in_seconds": 3600,
        6936  +
    "normalize": true,
        6937  +
    "region": "us-east-1",
        6938  +
    "service": "service",
        6939  +
    "sign_body": false,
        6940  +
    "timestamp": "2015-08-30T12:36:00Z"
        6941  +
}
              \
 No newline at end of file
 5188   6942   
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
 5189   6943   
similarity index 99%
 5190   6944   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 5191   6945   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 5192   6946   
index a6942c1..e881ac7 100644
 5193   6947   
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
 5194   6948   
new file mode 100644
 5195   6949   
index 0000000..7c5e47b
 5196         -
-- /dev/null
        6950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 5197   6951   
@@ -0,0 +1 @@
        6952  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 5198   6953   
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
 5199   6954   
new file mode 100644
 5200   6955   
index 0000000..c0e50a0
 5201         -
-- /dev/null
        6956  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 5202   6957   
@@ -0,0 +1,6 @@
        6958  +
POST / HTTP/1.1
        6959  +
Host:example.amazonaws.com
        6960  +
X-Amz-Date:20150830T123600Z
        6961  +
X-Amz-Region-Set:us-east-1
        6962  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        6963  +
 5203   6964   
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
 5204   6965   
similarity index 99%
 5205   6966   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 5206   6967   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 5207   6968   
index d5650cb..f8adf13 100644
 5208   6969   
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
 5209   6970   
new file mode 100644
 5210   6971   
index 0000000..379dcb2
 5211         -
-- /dev/null
        6972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 5212   6973   
@@ -0,0 +1,4 @@
        6974  +
{
        6975  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6976  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6977  +
}
 5213   6978   
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
 5214   6979   
similarity index 99%
 5215   6980   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 5216   6981   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 5217   6982   
index e48ce07..5ea8e3c 100644
 5218   6983   
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
 5219   6984   
new file mode 100644
 5220   6985   
index 0000000..ea8e3b4
 5221         -
-- /dev/null
        6986  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 5222   6987   
@@ -0,0 +1 @@
        6988  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 5223   6989   
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
 5224   6990   
new file mode 100644
 5225   6991   
index 0000000..616973f
 5226         -
-- /dev/null
        6992  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 5227   6993   
@@ -0,0 +1,3 @@
        6994  +
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
        6995  +
Host:example.amazonaws.com
        6996  +
 5228   6997   
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
 5229   6998   
similarity index 99%
 5230   6999   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 5231   7000   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 5232   7001   
index 34e3382..711c162 100644
 5233   7002   
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
 5234   7003   
new file mode 100644
 5235   7004   
index 0000000..3f0a82a
 5236         -
-- /dev/null
        7005  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 5237   7006   
@@ -0,0 +1,2 @@
        7007  +
POST / HTTP/1.1
        7008  +
Host:example.amazonaws.com
 5238   7009   
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
 5239   7010   
new file mode 100644
 5240   7011   
index 0000000..0db1df1
 5241         -
-- /dev/null
        7012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 5242   7013   
@@ -0,0 +1,12 @@
        7014  +
{
        7015  +
    "credentials": {
        7016  +
        "access_key_id": "AKIDEXAMPLE",
        7017  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7018  +
    },
        7019  +
    "expiration_in_seconds": 3600,
        7020  +
    "normalize": true,
        7021  +
    "region": "us-east-1",
        7022  +
    "service": "service",
        7023  +
    "sign_body": true,
        7024  +
    "timestamp": "2015-08-30T12:36:00Z"
        7025  +
}
              \
 No newline at end of file
 5243   7026   
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
 5244   7027   
similarity index 62%
 5245   7028   
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
 5246   7029   
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
 5247   7030   
index 05ab787..62639b2 100644
 5248         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        7031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 5249   7032   
@@ -1,12 +1,12 @@
 5250   7033   
POST
 5251   7034   
/
 5252   7035   
 5253   7036   
content-length:13
 5254   7037   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5255   7038   
host:example.amazonaws.com
 5256         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7039  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5257   7040   
x-amz-date:20150830T123600Z
 5258   7041   
x-amz-region-set:us-east-1
 5259   7042   
 5260   7043   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5261         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7044  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5262   7045   
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
 5263   7046   
new file mode 100644
 5264   7047   
index 0000000..006ec2e
 5265         -
-- /dev/null
        7048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 5266   7049   
@@ -0,0 +1 @@
        7050  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 5267   7051   
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
 5268   7052   
new file mode 100644
 5269   7053   
index 0000000..87a11f2
 5270         -
-- /dev/null
        7054  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 5271   7055   
@@ -0,0 +1,10 @@
        7056  +
POST / HTTP/1.1
        7057  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7058  +
Host:example.amazonaws.com
        7059  +
Content-Length:13
        7060  +
X-Amz-Date:20150830T123600Z
        7061  +
X-Amz-Region-Set:us-east-1
        7062  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7063  +
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
        7064  +
        7065  +
Param1=value1
              \
 No newline at end of file
 5272   7066   
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
 5273   7067   
new file mode 100644
 5274   7068   
index 0000000..c047afb
 5275         -
-- /dev/null
        7069  +
++ 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
 5276   7070   
@@ -0,0 +1,4 @@
        7071  +
AWS4-ECDSA-P256-SHA256
        7072  +
20150830T123600Z
        7073  +
20150830/service/aws4_request
        7074  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 5277   7075   
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
 5278   7076   
new file mode 100644
 5279   7077   
index 0000000..379dcb2
 5280         -
-- /dev/null
        7078  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 5281   7079   
@@ -0,0 +1,4 @@
        7080  +
{
        7081  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7082  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7083  +
}
 5282   7084   
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
 5283   7085   
similarity index 85%
 5284   7086   
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
 5285   7087   
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
 5286   7088   
index fcc454f..6933a8c 100644
 5287         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        7089  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 5288   7090   
@@ -1,9 +1,9 @@
 5289   7091   
POST
 5290   7092   
/
 5291   7093   
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
 5292   7094   
content-length:13
 5293   7095   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5294   7096   
host:example.amazonaws.com
 5295   7097   
 5296   7098   
content-length;content-type;host
 5297         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7099  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5298   7100   
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
 5299   7101   
new file mode 100644
 5300   7102   
index 0000000..34a2e12
 5301         -
-- /dev/null
        7103  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 5302   7104   
@@ -0,0 +1 @@
        7105  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 5303   7106   
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
 5304   7107   
new file mode 100644
 5305   7108   
index 0000000..197b99e
 5306         -
-- /dev/null
        7109  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 5307   7110   
@@ -0,0 +1,6 @@
        7111  +
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
        7112  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7113  +
Host:example.amazonaws.com
        7114  +
Content-Length:13
        7115  +
        7116  +
Param1=value1
              \
 No newline at end of file
 5308   7117   
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
 5309   7118   
new file mode 100644
 5310   7119   
index 0000000..9d2bc74
 5311         -
-- /dev/null
        7120  +
++ 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
 5312   7121   
@@ -0,0 +1,4 @@
        7122  +
AWS4-ECDSA-P256-SHA256
        7123  +
20150830T123600Z
        7124  +
20150830/service/aws4_request
        7125  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 5313   7126   
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
 5314   7127   
similarity index 80%
 5315   7128   
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
 5316   7129   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5317   7130   
index 36015f1..8289eaa 100644
 5318         -
-- 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
        7131  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5319   7132   
@@ -1,6 +1,6 @@
 5320   7133   
POST / HTTP/1.1
 5321   7134   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 5322   7135   
Host:example.amazonaws.com
 5323         -
X-Amz-Date:20150830T123600Z
        7136  +
Content-Length:13
 5324   7137   
 5325   7138   
Param1=value1
              \
 No newline at end of file
 5326   7139   
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
 5327   7140   
new file mode 100644
 5328   7141   
index 0000000..0db1df1
 5329         -
-- /dev/null
        7142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 5330   7143   
@@ -0,0 +1,12 @@
        7144  +
{
        7145  +
    "credentials": {
        7146  +
        "access_key_id": "AKIDEXAMPLE",
        7147  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7148  +
    },
        7149  +
    "expiration_in_seconds": 3600,
        7150  +
    "normalize": true,
        7151  +
    "region": "us-east-1",
        7152  +
    "service": "service",
        7153  +
    "sign_body": true,
        7154  +
    "timestamp": "2015-08-30T12:36:00Z"
        7155  +
}
              \
 No newline at end of file
 5331   7156   
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
 5332   7157   
similarity index 61%
 5333   7158   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 5334   7159   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5335   7160   
index 69009dc..797632b 100644
 5336         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        7161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5337   7162   
@@ -1,12 +1,12 @@
 5338   7163   
POST
 5339   7164   
/
 5340   7165   
 5341   7166   
content-length:13
 5342   7167   
content-type:application/x-www-form-urlencoded
 5343   7168   
host:example.amazonaws.com
 5344         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7169  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5345   7170   
x-amz-date:20150830T123600Z
 5346   7171   
x-amz-region-set:us-east-1
 5347   7172   
 5348   7173   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5349         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7174  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5350   7175   
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
 5351   7176   
new file mode 100644
 5352   7177   
index 0000000..f5a641c
 5353         -
-- /dev/null
        7178  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 5354   7179   
@@ -0,0 +1 @@
        7180  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 5355   7181   
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
 5356   7182   
new file mode 100644
 5357   7183   
index 0000000..7bd94a7
 5358         -
-- /dev/null
        7184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 5359   7185   
@@ -0,0 +1,10 @@
        7186  +
POST / HTTP/1.1
        7187  +
Content-Type:application/x-www-form-urlencoded
        7188  +
Host:example.amazonaws.com
        7189  +
Content-Length:13
        7190  +
X-Amz-Date:20150830T123600Z
        7191  +
X-Amz-Region-Set:us-east-1
        7192  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7193  +
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
        7194  +
        7195  +
Param1=value1
              \
 No newline at end of file
 5360   7196   
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
 5361   7197   
new file mode 100644
 5362   7198   
index 0000000..8d25ba9
 5363         -
-- /dev/null
        7199  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 5364   7200   
@@ -0,0 +1,4 @@
        7201  +
AWS4-ECDSA-P256-SHA256
        7202  +
20150830T123600Z
        7203  +
20150830/service/aws4_request
        7204  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 5365   7205   
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
 5366   7206   
new file mode 100644
 5367   7207   
index 0000000..379dcb2
 5368         -
-- /dev/null
        7208  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 5369   7209   
@@ -0,0 +1,4 @@
        7210  +
{
        7211  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7212  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7213  +
}
 5370   7214   
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
 5371   7215   
similarity index 99%
 5372   7216   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 5373   7217   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 5374   7218   
index 9ed065b..563ff58 100644
 5375   7219   
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
 5376   7220   
new file mode 100644
 5377   7221   
index 0000000..0c77daf
 5378         -
-- /dev/null
        7222  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 5379   7223   
@@ -0,0 +1 @@
        7224  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 5380   7225   
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
 5381   7226   
new file mode 100644
 5382   7227   
index 0000000..71d6de9
 5383         -
-- /dev/null
        7228  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 5384   7229   
@@ -0,0 +1,6 @@
        7230  +
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
        7231  +
Content-Type:application/x-www-form-urlencoded
        7232  +
Host:example.amazonaws.com
        7233  +
Content-Length:13
        7234  +
        7235  +
Param1=value1
              \
 No newline at end of file
 5385   7236   
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
 5386   7237   
similarity index 99%
 5387   7238   
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
 5388   7239   
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
 5389   7240   
index bef3143..cc7a224 100644
 5390   7241   
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
 5391   7242   
new file mode 100644
 5392   7243   
index 0000000..760b2d3
 5393         -
-- /dev/null
        7244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 5394   7245   
@@ -0,0 +1,6 @@
        7246  +
POST / HTTP/1.1
        7247  +
Content-Type:application/x-www-form-urlencoded
        7248  +
Host:example.amazonaws.com
        7249  +
Content-Length:13
        7250  +
        7251  +
Param1=value1
              \
 No newline at end of file
 5395   7252   
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
 5396   7253   
index 9bd636f..b53f33f 100644
 5397         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        7254  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 5398   7255   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 5399   7256   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 5400   7257   
        }
 5401   7258   
 5402   7259   
        if let SignatureValues::QueryParams(values) = values {
 5403   7260   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 5404   7261   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 5405   7262   
 5406   7263   
            #[cfg(feature = "sigv4a")]
 5407   7264   
            if let Some(regions) = values.region_set {
 5408   7265   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 5409   7266   
            }
 5410   7267   
 5411   7268   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 5412   7269   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 5413   7270   
            add_param(
 5414   7271   
                &mut params,
 5415   7272   
                param::X_AMZ_SIGNED_HEADERS,
 5416   7273   
                values.signed_headers.as_str(),
 5417   7274   
            );
 5418   7275   
 5419   7276   
            if let Some(security_token) = values.security_token {
 5420   7277   
                add_param(
 5421   7278   
                    &mut params,
 5422   7279   
                    settings
 5423   7280   
                        .session_token_name_override
 5424   7281   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 5425   7282   
                    security_token,
 5426   7283   
                );
 5427   7284   
            }
 5428   7285   
        }
 5429         -
        // Sort by param name, and then by param value
        7286  +
        7287  +
        // Sort on the _encoded_ key/value pairs
        7288  +
        let mut params: Vec<(String, String)> = params
        7289  +
            .into_iter()
        7290  +
            .map(|x| {
        7291  +
                use aws_smithy_http::query::fmt_string;
        7292  +
                let enc_k = fmt_string(&x.0);
        7293  +
                let enc_v = fmt_string(&x.1);
        7294  +
                (enc_k, enc_v)
        7295  +
            })
        7296  +
            .collect();
        7297  +
 5430   7298   
        params.sort();
 5431   7299   
 5432   7300   
        let mut query = QueryWriter::new(uri);
 5433   7301   
        query.clear_params();
 5434   7302   
        for (key, value) in params {
 5435         -
            query.insert(&key, &value);
        7303  +
            query.insert_encoded(&key, &value);
 5436   7304   
        }
 5437   7305   
 5438   7306   
        let query = query.build_query();
 5439   7307   
        if query.is_empty() {
 5440   7308   
            None
 5441   7309   
        } else {
 5442   7310   
            Some(query)
 5443   7311   
        }
 5444   7312   
    }
 5445   7313   
 5446   7314   
    fn insert_host_header(
 5447   7315   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 5448   7316   
        uri: &Uri,
 5449   7317   
    ) -> HeaderValue {
 5450   7318   
        match canonical_headers.get(&HOST) {
 5451   7319   
            Some(header) => header.clone(),
 5452   7320   
            None => {
 5453   7321   
                let port = uri.port();
 5454   7322   
                let scheme = uri.scheme();
 5455   7323   
                let authority = uri
 5456   7324   
                    .authority()
 5457   7325   
                    .expect("request uri authority must be set for signing")
 5458   7326   
                    .as_str();
 5459   7327   
                let host = uri
 5460   7328   
                    .host()
 5461   7329   
                    .expect("request uri host must be set for signing");
 5462   7330   
 5463   7331   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 5464   7332   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 5465   7333   
                // sent in the Host header (and Hyper strips default ports if they are present)
 5466   7334   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 5467   7335   
            service,
 5468   7336   
            hashed_creq,
 5469   7337   
            signature_version: SignatureVersion::V4a,
 5470   7338   
        }
 5471   7339   
    }
 5472   7340   
}
 5473   7341   
 5474   7342   
impl fmt::Display for StringToSign<'_> {
 5475   7343   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 5476   7344   
        write!(
 5477   7345   
            f,
 5478   7346   
            "{}\n{}\n{}\n{}",
 5479   7347   
            self.algorithm,
 5480   7348   
            format_date_time(self.time),
 5481   7349   
            match self.signature_version {
 5482   7350   
                SignatureVersion::V4 => self.scope.to_string(),
 5483   7351   
                SignatureVersion::V4a => self.scope.v4a_display(),
 5484   7352   
            },
 5485   7353   
            self.hashed_creq
 5486   7354   
        )
 5487   7355   
    }
 5488   7356   
}
 5489   7357   
 5490   7358   
#[cfg(test)]
 5491   7359   
mod tests {
 5492   7360   
    use crate::date_time::test_parsers::parse_date_time;
 5493   7361   
    use crate::http_request::canonical_request::{
 5494   7362   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 5495   7363   
    };
 5496   7364   
    use crate::http_request::test;
        7365  +
    use crate::http_request::test::SigningSuiteTest;
 5497   7366   
    use crate::http_request::{
 5498   7367   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 5499   7368   
        SigningParams, SigningSettings,
 5500   7369   
    };
 5501   7370   
    use crate::sign::v4;
 5502   7371   
    use crate::sign::v4::sha256_hex_string;
 5503   7372   
    use aws_credential_types::Credentials;
 5504   7373   
    use aws_smithy_http::query_writer::QueryWriter;
 5505   7374   
    use aws_smithy_runtime_api::client::identity::Identity;
 5506   7375   
    use http0::{HeaderValue, Uri};
 5507   7376   
    use pretty_assertions::assert_eq;
 5508   7377   
    use proptest::{prelude::*, proptest};
 5509   7378   
    use std::borrow::Cow;
 5510   7379   
    use std::time::Duration;
 5511   7380   
 5512   7381   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 5513   7382   
        v4::signing_params::Builder::default()
 5514   7383   
            .identity(identity)
 5515   7384   
            .region("test-region")
 5516   7385   
            .name("testservicename")
 5517   7386   
            .time(parse_date_time("20210511T154045Z").unwrap())
 5518   7387   
            .settings(settings)
 5519   7388   
            .build()
 5520   7389   
            .unwrap()
 5521   7390   
            .into()
 5522   7391   
    }
 5523   7392   
 5524   7393   
    #[test]
 5525   7394   
    fn test_repeated_header() {
 5526         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7395  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7396  +
        let mut req = test.request();
 5527   7397   
        req.headers.push((
 5528   7398   
            "x-amz-object-attributes".to_string(),
 5529   7399   
            "Checksum".to_string(),
 5530   7400   
        ));
 5531   7401   
        req.headers.push((
 5532   7402   
            "x-amz-object-attributes".to_string(),
 5533   7403   
            "ObjectSize".to_string(),
 5534   7404   
        ));
 5535   7405   
        let req = SignableRequest::from(&req);
 5536   7406   
        let settings = SigningSettings {
 5537   7407   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5538   7408   
            session_token_mode: SessionTokenMode::Exclude,
 5539   7409   
            ..Default::default()
 5540   7410   
        };
 5541   7411   
        let identity = Credentials::for_tests().into();
 5542   7412   
        let signing_params = signing_params(&identity, settings);
 5543   7413   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5544   7414   
 5545   7415   
        assert_eq!(
 5546   7416   
            creq.values.signed_headers().to_string(),
 5547   7417   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 5548   7418   
        );
 5549   7419   
        assert_eq!(
 5550   7420   
            creq.header_values_for("x-amz-object-attributes"),
 5551   7421   
            "Checksum,ObjectSize",
 5552   7422   
        );
 5553   7423   
    }
 5554   7424   
 5555   7425   
    #[test]
 5556   7426   
    fn test_host_header_properly_handles_ports() {
 5557   7427   
        fn host_header_test_setup(endpoint: String) -> String {
 5558         -
            let mut req = test::v4::test_request("get-vanilla");
        7428  +
            let test = SigningSuiteTest::v4("get-vanilla");
        7429  +
            let mut req = test.request();
 5559   7430   
            req.uri = endpoint;
 5560   7431   
            let req = SignableRequest::from(&req);
 5561   7432   
            let settings = SigningSettings {
 5562   7433   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5563   7434   
                session_token_mode: SessionTokenMode::Exclude,
 5564   7435   
                ..Default::default()
 5565   7436   
            };
 5566   7437   
            let identity = Credentials::for_tests().into();
 5567   7438   
            let signing_params = signing_params(&identity, settings);
 5568   7439   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5569   7440   
            creq.header_values_for("host")
 5570   7441   
        }
 5571   7442   
 5572   7443   
        // HTTP request with 80 port should not be signed with that port
 5573   7444   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 5574   7445   
        assert_eq!(http_80_host_header, "localhost",);
 5575   7446   
 5576   7447   
        // HTTP request with non-80 port should be signed with that port
 5577   7448   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 5578   7449   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 5579   7450   
 5580   7451   
        // HTTPS request with 443 port should not be signed with that port
 5581   7452   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 5582   7453   
        assert_eq!(https_443_host_header, "localhost",);
 5583   7454   
 5584   7455   
        // HTTPS request with non-443 port should be signed with that port
 5585   7456   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 5586   7457   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 5587   7458   
    }
 5588   7459   
 5589   7460   
    #[test]
 5590   7461   
    fn test_set_xamz_sha_256() {
 5591         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7462  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7463  +
        let req = test.request();
 5592   7464   
        let req = SignableRequest::from(&req);
 5593   7465   
        let settings = SigningSettings {
 5594   7466   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5595   7467   
            session_token_mode: SessionTokenMode::Exclude,
 5596   7468   
            ..Default::default()
 5597   7469   
        };
 5598   7470   
        let identity = Credentials::for_tests().into();
 5599   7471   
        let mut signing_params = signing_params(&identity, settings);
 5600   7472   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5601   7473   
        assert_eq!(
 5602   7474   
            creq.values.content_sha256(),
 5603   7475   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 5604   7476   
        );
 5605   7477   
        // assert that the sha256 header was added
 5606   7478   
        assert_eq!(
 5607   7479   
            creq.values.signed_headers().as_str(),
 5608   7480   
            "host;x-amz-content-sha256;x-amz-date"
 5609   7481   
        );
 5610   7482   
 5611   7483   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 5612   7484   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5613   7485   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5614   7486   
    }
 5615   7487   
 5616   7488   
    #[test]
 5617   7489   
    fn test_unsigned_payload() {
 5618         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7490  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7491  +
        let mut req = test.request();
 5619   7492   
        req.set_body(SignableBody::UnsignedPayload);
 5620   7493   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 5621   7494   
 5622   7495   
        let settings = SigningSettings {
 5623   7496   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5624   7497   
            ..Default::default()
 5625   7498   
        };
 5626   7499   
        let identity = Credentials::for_tests().into();
 5627   7500   
        let signing_params = signing_params(&identity, settings);
 5628   7501   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5629   7502   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 5630   7503   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 5631   7504   
    }
 5632   7505   
 5633   7506   
    #[test]
 5634   7507   
    fn test_precomputed_payload() {
 5635   7508   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 5636         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7509  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7510  +
        let mut req = test.request();
 5637   7511   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 5638   7512   
        let req = SignableRequest::from(&req);
 5639   7513   
        let settings = SigningSettings {
 5640   7514   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5641   7515   
            ..Default::default()
 5642   7516   
        };
 5643   7517   
        let identity = Credentials::for_tests().into();
 5644   7518   
        let signing_params = signing_params(&identity, settings);
 5645   7519   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5646   7520   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 5647   7521   
        assert!(creq.to_string().ends_with(payload_hash));
 5648   7522   
    }
 5649   7523   
 5650   7524   
    #[test]
 5651   7525   
    fn test_generate_scope() {
 5652   7526   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 5653   7527   
        let scope = SigningScope {
 5654   7528   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5655   7529   
            region: "us-east-1",
 5656   7530   
            service: "iam",
 5657   7531   
        };
 5658   7532   
        assert_eq!(format!("{}\n", scope), expected);
 5659   7533   
    }
 5660   7534   
 5661   7535   
    #[test]
 5662   7536   
    fn test_string_to_sign() {
 5663   7537   
        let time = parse_date_time("20150830T123600Z").unwrap();
 5664         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 5665         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        7538  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7539  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        7540  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 5666   7541   
        let encoded = sha256_hex_string(creq.as_bytes());
 5667   7542   
 5668   7543   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 5669   7544   
        assert_eq!(expected_sts, actual.to_string());
 5670   7545   
    }
 5671   7546   
 5672   7547   
    #[test]
 5673   7548   
    fn test_digest_of_canonical_request() {
 5674         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        7549  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7550  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 5675   7551   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 5676   7552   
        let actual = sha256_hex_string(creq.as_bytes());
 5677   7553   
        assert_eq!(expected, actual);
 5678   7554   
    }
 5679   7555   
 5680   7556   
    #[test]
 5681   7557   
    fn test_double_url_encode_path() {
 5682         -
        let req = test::v4::test_request("double-encode-path");
        7558  +
        let test = SigningSuiteTest::v4("double-encode-path");
        7559  +
        let req = test.request();
 5683   7560   
        let req = SignableRequest::from(&req);
 5684   7561   
        let identity = Credentials::for_tests().into();
 5685   7562   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5686   7563   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5687   7564   
 5688         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        7565  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5689   7566   
        let actual = format!("{}", creq);
 5690   7567   
        assert_eq!(actual, expected);
 5691   7568   
    }
 5692   7569   
 5693   7570   
    #[test]
 5694   7571   
    fn test_double_url_encode() {
 5695         -
        let req = test::v4::test_request("double-url-encode");
        7572  +
        let test = SigningSuiteTest::v4("double-url-encode");
        7573  +
        let req = test.request();
 5696   7574   
        let req = SignableRequest::from(&req);
 5697   7575   
        let identity = Credentials::for_tests().into();
 5698   7576   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5699   7577   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5700         -
 5701         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        7578  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5702   7579   
        let actual = format!("{}", creq);
 5703   7580   
        assert_eq!(actual, expected);
 5704   7581   
    }
 5705   7582   
 5706   7583   
    #[test]
 5707   7584   
    fn test_tilde_in_uri() {
 5708   7585   
        let req = http0::Request::builder()
 5709   7586   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 5710   7587   
        let req = SignableRequest::from(&req);
 5711   7588   
        let identity = Credentials::for_tests().into();
 5712   7589   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5713   7590   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5714   7591   
        assert_eq!(
 5715   7592   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 5716   7593   
            creq.params.as_deref(),
 5717   7594   
        );
 5718   7595   
    }
 5719   7596   
 5720   7597   
    #[test]
 5721   7598   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 5722   7599   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 5723   7600   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 5724   7601   
 5725   7602   
        let mut query_writer = QueryWriter::new(&uri);
 5726   7603   
        query_writer.insert("list-type", "2");
 5727   7604   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 5728   7605   
 5729   7606   
        let req = http0::Request::builder()
 5730   7607   
            .uri(query_writer.build_uri())
 5731   7608   
            .body("")
 5732   7609   
            .unwrap()
 5733   7610   
            .into();
 5734   7611   
        let req = SignableRequest::from(&req);
 5735   7612   
        let identity = Credentials::for_tests().into();
 5736   7613   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5737   7614   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5738   7615   
 5739   7616   
        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~";
 5740   7617   
        let actual = creq.params.unwrap();
 5741   7618   
        assert_eq!(expected, actual);
 5742   7619   
    }
 5743   7620   
 5744   7621   
    #[test]
 5745   7622   
    fn test_omit_session_token() {
 5746         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7623  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7624  +
        let req = test.request();
 5747   7625   
        let req = SignableRequest::from(&req);
 5748   7626   
        let settings = SigningSettings {
 5749   7627   
            session_token_mode: SessionTokenMode::Include,
 5750   7628   
            ..Default::default()
 5751   7629   
        };
 5752   7630   
        let identity = Credentials::for_tests_with_session_token().into();
 5753   7631   
        let mut signing_params = signing_params(&identity, settings);
 5754   7632   
 5755   7633   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5756   7634   
        assert_eq!(
 5757   7635   
            creq.values.signed_headers().as_str(),
 5758   7636   
            "host;x-amz-date;x-amz-security-token"
 5759   7637   
        );
 5760   7638   
        assert_eq!(
 5761   7639   
            creq.headers.get("x-amz-security-token").unwrap(),
 5762   7640   
            "notarealsessiontoken"
 5763   7641   
        );
 5764   7642   
 5765   7643   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 5766   7644   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5767   7645   
        assert_eq!(
 5768   7646   
            creq.headers.get("x-amz-security-token").unwrap(),
 5769   7647   
            "notarealsessiontoken"
 5770   7648   
        );
 5771   7649   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5772   7650   
    }
 5773   7651   
 5774   7652   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 5775   7653   
    #[test]
 5776   7654   
    fn non_presigning_header_exclusion() {
 5777   7655   
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
 5778   7656   
index c4bbbee..363fc2c 100644
 5779         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        7657  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 5780   7658   
@@ -6,60 +6,62 @@
 5781   7659   
use super::error::SigningError;
 5782   7660   
use super::{PayloadChecksumKind, SignatureLocation};
 5783   7661   
use crate::http_request::canonical_request::header;
 5784   7662   
use crate::http_request::canonical_request::param;
 5785   7663   
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5786   7664   
use crate::http_request::error::CanonicalRequestError;
 5787   7665   
use crate::http_request::SigningParams;
 5788   7666   
use crate::sign::v4;
 5789   7667   
#[cfg(feature = "sigv4a")]
 5790   7668   
use crate::sign::v4a;
 5791   7669   
use crate::{SignatureVersion, SigningOutput};
 5792   7670   
use http0::Uri;
 5793   7671   
use std::borrow::Cow;
 5794   7672   
use std::fmt::{Debug, Formatter};
 5795   7673   
use std::str;
 5796   7674   
 5797   7675   
const LOG_SIGNABLE_BODY: &str = "LOG_SIGNABLE_BODY";
 5798   7676   
 5799   7677   
/// Represents all of the information necessary to sign an HTTP request.
 5800   7678   
#[derive(Debug)]
 5801   7679   
#[non_exhaustive]
 5802   7680   
pub struct SignableRequest<'a> {
 5803   7681   
    method: &'a str,
 5804   7682   
    uri: Uri,
 5805   7683   
    headers: Vec<(&'a str, &'a str)>,
 5806   7684   
    body: SignableBody<'a>,
 5807   7685   
}
 5808   7686   
 5809   7687   
impl<'a> SignableRequest<'a> {
 5810   7688   
    /// Creates a new `SignableRequest`.
        7689  +
    ///
        7690  +
    /// NOTE: The `uri` is expected to already in encoded form.
 5811   7691   
    pub fn new(
 5812   7692   
        method: &'a str,
 5813   7693   
        uri: impl Into<Cow<'a, str>>,
 5814   7694   
        headers: impl Iterator<Item = (&'a str, &'a str)>,
 5815   7695   
        body: SignableBody<'a>,
 5816   7696   
    ) -> Result<Self, SigningError> {
 5817   7697   
        let uri = uri
 5818   7698   
            .into()
 5819   7699   
            .parse()
 5820   7700   
            .map_err(|e| SigningError::from(CanonicalRequestError::from(e)))?;
 5821   7701   
        let headers = headers.collect();
 5822   7702   
        Ok(Self {
 5823   7703   
            method,
 5824   7704   
            uri,
 5825   7705   
            headers,
 5826   7706   
            body,
 5827   7707   
        })
 5828   7708   
    }
 5829   7709   
 5830   7710   
    /// Returns the signable URI
 5831   7711   
    pub(crate) fn uri(&self) -> &Uri {
 5832   7712   
        &self.uri
 5833   7713   
    }
 5834   7714   
 5835   7715   
    /// Returns the signable HTTP method
 5836   7716   
    pub(crate) fn method(&self) -> &str {
 5837   7717   
        self.method
 5838   7718   
    }
 5839   7719   
 5840   7720   
    /// Returns the request headers
 5841   7721   
@@ -478,436 +480,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 5842   7722   
        sensitive,
 5843   7723   
    });
 5844   7724   
}
 5845   7725   
 5846   7726   
// add signature to authorization header
 5847   7727   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 5848   7728   
fn build_authorization_header(
 5849   7729   
    access_key: &str,
 5850   7730   
    creq: &CanonicalRequest<'_>,
 5851   7731   
    sts: StringToSign<'_>,
 5852   7732   
    signature: &str,
 5853   7733   
    signature_version: SignatureVersion,
 5854   7734   
) -> String {
 5855   7735   
    let scope = match signature_version {
 5856   7736   
        SignatureVersion::V4 => sts.scope.to_string(),
 5857   7737   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 5858   7738   
    };
 5859   7739   
    format!(
 5860   7740   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 5861   7741   
        sts.algorithm,
 5862   7742   
        access_key,
 5863   7743   
        scope,
 5864   7744   
        creq.values.signed_headers().as_str(),
 5865   7745   
        signature
 5866   7746   
    )
 5867   7747   
}
 5868   7748   
#[cfg(test)]
 5869   7749   
mod tests {
 5870   7750   
    use crate::date_time::test_parsers::parse_date_time;
 5871   7751   
    use crate::http_request::sign::{add_header, SignableRequest};
        7752  +
    use crate::http_request::test::SigningSuiteTest;
 5872   7753   
    use crate::http_request::{
 5873         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        7754  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 5874   7755   
        SigningSettings,
 5875   7756   
    };
 5876   7757   
    use crate::sign::v4;
 5877   7758   
    use aws_credential_types::Credentials;
 5878   7759   
    use http0::{HeaderValue, Request};
 5879   7760   
    use pretty_assertions::assert_eq;
 5880   7761   
    use proptest::proptest;
 5881   7762   
    use std::borrow::Cow;
 5882   7763   
    use std::iter;
 5883         -
    use std::time::Duration;
 5884   7764   
 5885   7765   
    macro_rules! assert_req_eq {
 5886   7766   
        (http: $expected:expr, $actual:expr) => {
 5887   7767   
            let mut expected = ($expected).map(|_b|"body");
 5888   7768   
            let mut actual = ($actual).map(|_b|"body");
 5889   7769   
            make_headers_comparable(&mut expected);
 5890   7770   
            make_headers_comparable(&mut actual);
 5891   7771   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 5892   7772   
        };
 5893   7773   
        ($expected:tt, $actual:tt) => {
 5894   7774   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 5895   7775   
        };
 5896   7776   
    }
 5897   7777   
 5898   7778   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 5899   7779   
        for (_name, value) in request.headers_mut() {
 5900   7780   
            value.set_sensitive(false);
 5901   7781   
        }
 5902   7782   
    }
 5903   7783   
 5904         -
    #[test]
 5905         -
    fn test_sign_vanilla_with_headers() {
 5906         -
        let settings = SigningSettings::default();
 5907         -
        let identity = &Credentials::for_tests().into();
 5908         -
        let params = v4::SigningParams {
 5909         -
            identity,
 5910         -
            region: "us-east-1",
 5911         -
            name: "service",
 5912         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5913         -
            settings,
 5914         -
        }
 5915         -
        .into();
 5916         -
 5917         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5918         -
        let signable = SignableRequest::from(&original);
 5919         -
        let out = sign(signable, &params).unwrap();
 5920         -
        assert_eq!(
 5921         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 5922         -
            out.signature
 5923         -
        );
 5924         -
 5925         -
        let mut signed = original.as_http_request();
 5926         -
        out.output.apply_to_request_http0x(&mut signed);
 5927         -
 5928         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 5929         -
        assert_req_eq!(expected, signed);
 5930         -
    }
 5931         -
        7784  +
    // Sigv4A suite tests
 5932   7785   
    #[cfg(feature = "sigv4a")]
 5933         -
    mod sigv4a_tests {
 5934         -
        use super::*;
 5935         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5936         -
        use crate::http_request::{sign, test, SigningParams};
 5937         -
        use crate::sign::v4a;
 5938         -
        use p256::ecdsa::signature::{Signature, Verifier};
 5939         -
        use p256::ecdsa::{DerSignature, SigningKey};
 5940         -
        use pretty_assertions::assert_eq;
 5941         -
 5942         -
        fn new_v4a_signing_params_from_context(
 5943         -
            test_context: &'_ test::v4a::TestContext,
 5944         -
            signature_location: SignatureLocation,
 5945         -
        ) -> SigningParams<'_> {
 5946         -
            let mut params = v4a::SigningParams::from(test_context);
 5947         -
            params.settings.signature_location = signature_location;
 5948         -
 5949         -
            params.into()
 5950         -
        }
 5951         -
 5952         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 5953         -
            let tc = test::v4a::test_context(test_name);
 5954         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 5955         -
 5956         -
            let req = test::v4a::test_request(test_name);
 5957         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 5958         -
            let signable_req = SignableRequest::from(&req);
 5959         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        7786  +
    mod v4a_suite {
        7787  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 5960   7788   
 5961         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 5962         -
 5963         -
            let expected_string_to_sign =
 5964         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 5965         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 5966         -
            let actual_string_to_sign = StringToSign::new_v4a(
 5967         -
                *params.time(),
 5968         -
                params.region_set().unwrap(),
 5969         -
                params.name(),
 5970         -
                hashed_creq,
 5971         -
            )
 5972         -
            .to_string();
 5973         -
 5974         -
            assert_eq!(
 5975         -
                expected_string_to_sign, actual_string_to_sign,
 5976         -
                "'string to sign' didn't match"
 5977         -
            );
 5978         -
 5979         -
            let out = sign(signable_req, &params).unwrap();
 5980         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 5981         -
            out.output
 5982         -
                .apply_to_request_http0x(&mut req.as_http_request());
 5983         -
 5984         -
            let creds = params.credentials().unwrap();
 5985         -
            let signing_key =
 5986         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 5987         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 5988         -
            let sig = sig
 5989         -
                .try_into()
 5990         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 5991         -
 5992         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 5993         -
            let peer_public_key = signing_key.verifying_key();
 5994         -
            let sts = actual_string_to_sign.as_bytes();
 5995         -
            peer_public_key.verify(sts, &sig).unwrap();
        7789  +
        #[test]
        7790  +
        fn test_get_header_key_duplicate() {
        7791  +
            run_test_suite_v4a("get-header-key-duplicate")
 5996   7792   
        }
 5997   7793   
 5998   7794   
        #[test]
 5999         -
        fn test_get_header_key_duplicate() {
 6000         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        7795  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7796  +
        fn test_get_header_value_multiline() {
        7797  +
            run_test_suite_v4a("get-header-value-multiline")
 6001   7798   
        }
 6002   7799   
 6003   7800   
        #[test]
 6004   7801   
        fn test_get_header_value_order() {
 6005         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        7802  +
            run_test_suite_v4a("get-header-value-order")
 6006   7803   
        }
 6007   7804   
 6008   7805   
        #[test]
 6009   7806   
        fn test_get_header_value_trim() {
 6010         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        7807  +
            run_test_suite_v4a("get-header-value-trim");
 6011   7808   
        }
 6012   7809   
 6013   7810   
        #[test]
 6014   7811   
        fn test_get_relative_normalized() {
 6015         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        7812  +
            run_test_suite_v4a("get-relative-normalized");
 6016   7813   
        }
 6017   7814   
 6018   7815   
        #[test]
 6019   7816   
        fn test_get_relative_relative_normalized() {
 6020         -
            run_v4a_test_suite(
 6021         -
                "get-relative-relative-normalized",
 6022         -
                SignatureLocation::Headers,
 6023         -
            );
        7817  +
            run_test_suite_v4a("get-relative-relative-normalized");
 6024   7818   
        }
 6025   7819   
 6026   7820   
        #[test]
 6027   7821   
        fn test_get_relative_relative_unnormalized() {
 6028         -
            run_v4a_test_suite(
 6029         -
                "get-relative-relative-unnormalized",
 6030         -
                SignatureLocation::Headers,
 6031         -
            );
        7822  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 6032   7823   
        }
 6033   7824   
 6034   7825   
        #[test]
 6035   7826   
        fn test_get_relative_unnormalized() {
 6036         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        7827  +
            run_test_suite_v4a("get-relative-unnormalized");
 6037   7828   
        }
 6038   7829   
 6039   7830   
        #[test]
 6040   7831   
        fn test_get_slash_dot_slash_normalized() {
 6041         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        7832  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 6042   7833   
        }
 6043   7834   
 6044   7835   
        #[test]
 6045   7836   
        fn test_get_slash_dot_slash_unnormalized() {
 6046         -
            run_v4a_test_suite(
 6047         -
                "get-slash-dot-slash-unnormalized",
 6048         -
                SignatureLocation::Headers,
 6049         -
            );
        7837  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 6050   7838   
        }
 6051   7839   
 6052   7840   
        #[test]
 6053   7841   
        fn test_get_slash_normalized() {
 6054         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        7842  +
            run_test_suite_v4a("get-slash-normalized");
 6055   7843   
        }
 6056   7844   
 6057   7845   
        #[test]
 6058   7846   
        fn test_get_slash_pointless_dot_normalized() {
 6059         -
            run_v4a_test_suite(
 6060         -
                "get-slash-pointless-dot-normalized",
 6061         -
                SignatureLocation::Headers,
 6062         -
            );
        7847  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 6063   7848   
        }
 6064   7849   
 6065   7850   
        #[test]
 6066   7851   
        fn test_get_slash_pointless_dot_unnormalized() {
 6067         -
            run_v4a_test_suite(
 6068         -
                "get-slash-pointless-dot-unnormalized",
 6069         -
                SignatureLocation::Headers,
 6070         -
            );
        7852  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 6071   7853   
        }
 6072   7854   
 6073   7855   
        #[test]
 6074   7856   
        fn test_get_slash_unnormalized() {
 6075         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        7857  +
            run_test_suite_v4a("get-slash-unnormalized");
 6076   7858   
        }
 6077   7859   
 6078   7860   
        #[test]
 6079   7861   
        fn test_get_slashes_normalized() {
 6080         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        7862  +
            run_test_suite_v4a("get-slashes-normalized");
 6081   7863   
        }
 6082   7864   
 6083   7865   
        #[test]
 6084   7866   
        fn test_get_slashes_unnormalized() {
 6085         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        7867  +
            run_test_suite_v4a("get-slashes-unnormalized");
        7868  +
        }
        7869  +
        7870  +
        #[test]
        7871  +
        #[ignore = "relies on single encode of path segments"]
        7872  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7873  +
        // skipped until we add control over double_uri_encode in context.json
        7874  +
        fn test_get_space_normalized() {
        7875  +
            run_test_suite_v4a("get-space-normalized");
        7876  +
        }
        7877  +
        7878  +
        #[test]
        7879  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7880  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7881  +
        fn test_get_space_unnormalized() {
        7882  +
            run_test_suite_v4a("get-space-unnormalized");
 6086   7883   
        }
 6087   7884   
 6088   7885   
        #[test]
 6089   7886   
        fn test_get_unreserved() {
 6090         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        7887  +
            run_test_suite_v4a("get-unreserved");
        7888  +
        }
        7889  +
        7890  +
        #[test]
        7891  +
        #[ignore = "httparse fails on invalid uri character"]
        7892  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7893  +
        fn test_get_utf8() {
        7894  +
            run_test_suite_v4a("get-utf8");
 6091   7895   
        }
 6092   7896   
 6093   7897   
        #[test]
 6094   7898   
        fn test_get_vanilla() {
 6095         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        7899  +
            run_test_suite_v4a("get-vanilla");
 6096   7900   
        }
 6097   7901   
 6098   7902   
        #[test]
 6099   7903   
        fn test_get_vanilla_empty_query_key() {
 6100         -
            run_v4a_test_suite(
 6101         -
                "get-vanilla-empty-query-key",
 6102         -
                SignatureLocation::QueryParams,
 6103         -
            );
        7904  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 6104   7905   
        }
 6105   7906   
 6106   7907   
        #[test]
 6107   7908   
        fn test_get_vanilla_query() {
 6108         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        7909  +
            run_test_suite_v4a("get-vanilla-query");
        7910  +
        }
        7911  +
        7912  +
        #[test]
        7913  +
        fn test_get_vanilla_query_order_encoded() {
        7914  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 6109   7915   
        }
 6110   7916   
 6111   7917   
        #[test]
 6112   7918   
        fn test_get_vanilla_query_order_key_case() {
 6113         -
            run_v4a_test_suite(
 6114         -
                "get-vanilla-query-order-key-case",
 6115         -
                SignatureLocation::QueryParams,
 6116         -
            );
        7919  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 6117   7920   
        }
 6118   7921   
 6119   7922   
        #[test]
 6120   7923   
        fn test_get_vanilla_query_unreserved() {
 6121         -
            run_v4a_test_suite(
 6122         -
                "get-vanilla-query-unreserved",
 6123         -
                SignatureLocation::QueryParams,
 6124         -
            );
        7924  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        7925  +
        }
        7926  +
        7927  +
        #[test]
        7928  +
        #[ignore = "httparse fails on invalid uri character"]
        7929  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7930  +
        fn test_get_vanilla_utf8_query() {
        7931  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 6125   7932   
        }
 6126   7933   
 6127   7934   
        #[test]
 6128   7935   
        fn test_get_vanilla_with_session_token() {
 6129         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        7936  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 6130   7937   
        }
 6131   7938   
 6132   7939   
        #[test]
 6133   7940   
        fn test_post_header_key_case() {
 6134         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        7941  +
            run_test_suite_v4a("post-header-key-case");
 6135   7942   
        }
 6136   7943   
 6137   7944   
        #[test]
 6138   7945   
        fn test_post_header_key_sort() {
 6139         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        7946  +
            run_test_suite_v4a("post-header-key-sort");
 6140   7947   
        }
 6141   7948   
 6142   7949   
        #[test]
 6143   7950   
        fn test_post_header_value_case() {
 6144         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        7951  +
            run_test_suite_v4a("post-header-value-case");
 6145   7952   
        }
 6146   7953   
 6147   7954   
        #[test]
 6148   7955   
        fn test_post_sts_header_after() {
 6149         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        7956  +
            run_test_suite_v4a("post-sts-header-after");
 6150   7957   
        }
 6151   7958   
 6152   7959   
        #[test]
 6153   7960   
        fn test_post_sts_header_before() {
 6154         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        7961  +
            run_test_suite_v4a("post-sts-header-before");
 6155   7962   
        }
 6156   7963   
 6157   7964   
        #[test]
 6158   7965   
        fn test_post_vanilla() {
 6159         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        7966  +
            run_test_suite_v4a("post-vanilla");
 6160   7967   
        }
 6161   7968   
 6162   7969   
        #[test]
 6163   7970   
        fn test_post_vanilla_empty_query_value() {
 6164         -
            run_v4a_test_suite(
 6165         -
                "post-vanilla-empty-query-value",
 6166         -
                SignatureLocation::QueryParams,
 6167         -
            );
        7971  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 6168   7972   
        }
 6169   7973   
 6170   7974   
        #[test]
 6171   7975   
        fn test_post_vanilla_query() {
 6172         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        7976  +
            run_test_suite_v4a("post-vanilla-query");
 6173   7977   
        }
 6174   7978   
 6175   7979   
        #[test]
 6176   7980   
        fn test_post_x_www_form_urlencoded() {
 6177         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        7981  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 6178   7982   
        }
 6179   7983   
 6180   7984   
        #[test]
 6181   7985   
        fn test_post_x_www_form_urlencoded_parameters() {
 6182         -
            run_v4a_test_suite(
 6183         -
                "post-x-www-form-urlencoded-parameters",
 6184         -
                SignatureLocation::QueryParams,
 6185         -
            );
        7986  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 6186   7987   
        }
 6187   7988   
    }
 6188   7989   
 6189   7990   
    #[test]
 6190   7991   
    fn test_sign_url_escape() {
 6191         -
        let test = "double-encode-path";
        7992  +
        let test = SigningSuiteTest::v4("double-encode-path");
 6192   7993   
        let settings = SigningSettings::default();
 6193   7994   
        let identity = &Credentials::for_tests().into();
 6194   7995   
        let params = v4::SigningParams {
 6195   7996   
            identity,
 6196   7997   
            region: "us-east-1",
 6197   7998   
            name: "service",
 6198   7999   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6199   8000   
            settings,
 6200   8001   
        }
 6201   8002   
        .into();
 6202   8003   
 6203         -
        let original = test::v4::test_request(test);
        8004  +
        let original = test.request();
 6204   8005   
        let signable = SignableRequest::from(&original);
 6205   8006   
        let out = sign(signable, &params).unwrap();
 6206   8007   
        assert_eq!(
 6207   8008   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 6208   8009   
            out.signature
 6209   8010   
        );
 6210   8011   
 6211   8012   
        let mut signed = original.as_http_request();
 6212   8013   
        out.output.apply_to_request_http0x(&mut signed);
 6213   8014   
 6214         -
        let expected = test::v4::test_signed_request(test);
 6215         -
        assert_req_eq!(expected, signed);
 6216         -
    }
 6217         -
 6218         -
    #[test]
 6219         -
    fn test_sign_vanilla_with_query_params() {
 6220         -
        let settings = SigningSettings {
 6221         -
            signature_location: SignatureLocation::QueryParams,
 6222         -
            expires_in: Some(Duration::from_secs(35)),
 6223         -
            ..Default::default()
 6224         -
        };
 6225         -
        let identity = &Credentials::for_tests().into();
 6226         -
        let params = v4::SigningParams {
 6227         -
            identity,
 6228         -
            region: "us-east-1",
 6229         -
            name: "service",
 6230         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6231         -
            settings,
 6232         -
        }
 6233         -
        .into();
 6234         -
 6235         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6236         -
        let signable = SignableRequest::from(&original);
 6237         -
        let out = sign(signable, &params).unwrap();
 6238         -
        assert_eq!(
 6239         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 6240         -
            out.signature
 6241         -
        );
 6242         -
 6243         -
        let mut signed = original.as_http_request();
 6244         -
        out.output.apply_to_request_http0x(&mut signed);
 6245         -
 6246         -
        let expected =
 6247         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        8015  +
        let expected = test.signed_request(SignatureLocation::Headers);
 6248   8016   
        assert_req_eq!(expected, signed);
 6249   8017   
    }
 6250   8018   
 6251   8019   
    #[test]
 6252   8020   
    fn test_sign_headers_utf8() {
 6253   8021   
        let settings = SigningSettings::default();
 6254   8022   
        let identity = &Credentials::for_tests().into();
 6255   8023   
        let params = v4::SigningParams {
 6256   8024   
            identity,
 6257   8025   
            region: "us-east-1",
 6258   8026   
            name: "service",
 6259   8027   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6260   8028   
            settings,
 6261   8029   
        }
 6262   8030   
        .into();
 6263   8031   
 6264   8032   
        let original = http0::Request::builder()
 6265   8033   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 6266   8034   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 6267   8035   
            .body("")
 6268   8036   
            .unwrap()
 6269   8037   
            .into();
 6270   8038   
        let signable = SignableRequest::from(&original);
 6271   8039   
        let out = sign(signable, &params).unwrap();
 6272   8040   
        assert_eq!(
 6273   8041   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 6274   8042   
            out.signature
 6275   8043   
        );
 6276   8044   
 6277   8045   
        let mut signed = original.as_http_request();
 6278   8046   
@@ -1138,31 +1028,236 @@ mod tests {
 6279   8047   
        let mut request = http::Request::builder()
 6280   8048   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 6281   8049   
            .body("")
 6282   8050   
            .unwrap();
 6283   8051   
 6284   8052   
        instructions.apply_to_request_http1x(&mut request);
 6285   8053   
 6286   8054   
        assert_eq!(
 6287   8055   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 6288   8056   
            request.uri().path_and_query().unwrap().to_string()
 6289   8057   
        );
 6290   8058   
    }
 6291   8059   
 6292   8060   
    #[test]
 6293   8061   
    fn test_debug_signable_body() {
 6294   8062   
        let sut = SignableBody::Bytes(b"hello signable body");
 6295   8063   
        assert_eq!(
 6296   8064   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 6297   8065   
            format!("{sut:?}")
 6298   8066   
        );
 6299   8067   
 6300   8068   
        let sut = SignableBody::UnsignedPayload;
 6301   8069   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 6302   8070   
 6303   8071   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 6304   8072   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 6305   8073   
 6306   8074   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 6307   8075   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 6308   8076   
    }
        8077  +
        8078  +
    // v4 test suite
        8079  +
    mod v4_suite {
        8080  +
        use crate::http_request::test::run_test_suite_v4;
        8081  +
        8082  +
        #[test]
        8083  +
        fn test_get_header_key_duplicate() {
        8084  +
            run_test_suite_v4("get-header-key-duplicate");
        8085  +
        }
        8086  +
        8087  +
        #[test]
        8088  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8089  +
        fn test_get_header_value_multiline() {
        8090  +
            run_test_suite_v4("get-header-value-multiline");
        8091  +
        }
        8092  +
        8093  +
        #[test]
        8094  +
        fn test_get_header_value_order() {
        8095  +
            run_test_suite_v4("get-header-value-order");
        8096  +
        }
        8097  +
        8098  +
        #[test]
        8099  +
        fn test_get_header_value_trim() {
        8100  +
            run_test_suite_v4("get-header-value-trim");
        8101  +
        }
        8102  +
        8103  +
        #[test]
        8104  +
        fn test_get_relative_normalized() {
        8105  +
            run_test_suite_v4("get-relative-normalized");
        8106  +
        }
        8107  +
        8108  +
        #[test]
        8109  +
        fn test_get_relative_relative_normalized() {
        8110  +
            run_test_suite_v4("get-relative-relative-normalized");
        8111  +
        }
        8112  +
        8113  +
        #[test]
        8114  +
        fn test_get_relative_relative_unnormalized() {
        8115  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        8116  +
        }
        8117  +
        8118  +
        #[test]
        8119  +
        fn test_get_relative_unnormalized() {
        8120  +
            run_test_suite_v4("get-relative-unnormalized");
        8121  +
        }
        8122  +
        8123  +
        #[test]
        8124  +
        fn test_get_slash_dot_slash_normalized() {
        8125  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        8126  +
        }
        8127  +
        8128  +
        #[test]
        8129  +
        fn test_get_slash_dot_slash_unnormalized() {
        8130  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        8131  +
        }
        8132  +
        8133  +
        #[test]
        8134  +
        fn test_get_slash_normalized() {
        8135  +
            run_test_suite_v4("get-slash-normalized");
        8136  +
        }
        8137  +
        8138  +
        #[test]
        8139  +
        fn test_get_slash_pointless_dot_normalized() {
        8140  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        8141  +
        }
        8142  +
        8143  +
        #[test]
        8144  +
        fn test_get_slash_pointless_dot_unnormalized() {
        8145  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        8146  +
        }
        8147  +
        8148  +
        #[test]
        8149  +
        fn test_get_slash_unnormalized() {
        8150  +
            run_test_suite_v4("get-slash-unnormalized");
        8151  +
        }
        8152  +
        8153  +
        #[test]
        8154  +
        fn test_get_slashes_normalized() {
        8155  +
            run_test_suite_v4("get-slashes-normalized");
        8156  +
        }
        8157  +
        8158  +
        #[test]
        8159  +
        fn test_get_slashes_unnormalized() {
        8160  +
            run_test_suite_v4("get-slashes-unnormalized");
        8161  +
        }
        8162  +
        8163  +
        #[test]
        8164  +
        #[ignore = "relies on single encode of path segments"]
        8165  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8166  +
        // skipped until we add control over double_uri_encode in context.json
        8167  +
        fn test_get_space_normalized() {
        8168  +
            run_test_suite_v4("get-space-normalized");
        8169  +
        }
        8170  +
        8171  +
        #[test]
        8172  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8173  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8174  +
        fn test_get_space_unnormalized() {
        8175  +
            run_test_suite_v4("get-space-unnormalized");
        8176  +
        }
        8177  +
        8178  +
        #[test]
        8179  +
        fn test_get_unreserved() {
        8180  +
            run_test_suite_v4("get-unreserved");
        8181  +
        }
        8182  +
        8183  +
        #[test]
        8184  +
        #[ignore = "httparse fails on invalid uri character"]
        8185  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8186  +
        fn test_get_utf8() {
        8187  +
            run_test_suite_v4("get-utf8");
        8188  +
        }
        8189  +
        8190  +
        #[test]
        8191  +
        fn test_get_vanilla() {
        8192  +
            run_test_suite_v4("get-vanilla");
        8193  +
        }
        8194  +
        8195  +
        #[test]
        8196  +
        fn test_get_vanilla_empty_query_key() {
        8197  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        8198  +
        }
        8199  +
        8200  +
        #[test]
        8201  +
        fn test_get_vanilla_query() {
        8202  +
            run_test_suite_v4("get-vanilla-query");
        8203  +
        }
        8204  +
        8205  +
        #[test]
        8206  +
        fn test_get_vanilla_query_order_encoded() {
        8207  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        8208  +
        }
        8209  +
        8210  +
        #[test]
        8211  +
        fn test_get_vanilla_query_order_key_case() {
        8212  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        8213  +
        }
        8214  +
        8215  +
        #[test]
        8216  +
        fn test_get_vanilla_query_unreserved() {
        8217  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        8218  +
        }
        8219  +
        8220  +
        #[test]
        8221  +
        #[ignore = "httparse fails on invalid uri character"]
        8222  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8223  +
        fn test_get_vanilla_utf8_query() {
        8224  +
            run_test_suite_v4("get-vanilla-utf8-query");
        8225  +
        }
        8226  +
        8227  +
        #[test]
        8228  +
        fn test_get_vanilla_with_session_token() {
        8229  +
            run_test_suite_v4("get-vanilla-with-session-token");
        8230  +
        }
        8231  +
        8232  +
        #[test]
        8233  +
        fn test_post_header_key_case() {
        8234  +
            run_test_suite_v4("post-header-key-case");
        8235  +
        }
        8236  +
        8237  +
        #[test]
        8238  +
        fn test_post_header_key_sort() {
        8239  +
            run_test_suite_v4("post-header-key-sort");
        8240  +
        }
        8241  +
        8242  +
        #[test]
        8243  +
        fn test_post_header_value_case() {
        8244  +
            run_test_suite_v4("post-header-value-case");
        8245  +
        }
        8246  +
        8247  +
        #[test]
        8248  +
        fn test_post_sts_header_after() {
        8249  +
            run_test_suite_v4("post-sts-header-after");
        8250  +
        }
        8251  +
        8252  +
        #[test]
        8253  +
        fn test_post_sts_header_before() {
        8254  +
            run_test_suite_v4("post-sts-header-before");
        8255  +
        }
        8256  +
        8257  +
        #[test]
        8258  +
        fn test_post_vanilla() {
        8259  +
            run_test_suite_v4("post-vanilla");
        8260  +
        }
        8261  +
        8262  +
        #[test]
        8263  +
        fn test_post_vanilla_empty_query_value() {
        8264  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        8265  +
        }
        8266  +
        8267  +
        #[test]
        8268  +
        fn test_post_vanilla_query() {
        8269  +
            run_test_suite_v4("post-vanilla-query");
        8270  +
        }
        8271  +
        8272  +
        #[test]
        8273  +
        fn test_post_x_www_form_urlencoded() {
        8274  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        8275  +
        }
        8276  +
        8277  +
        #[test]
        8278  +
        fn test_post_x_www_form_urlencoded_parameters() {
        8279  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        8280  +
        }
        8281  +
    }
 6309   8282   
}
 6310   8283   
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
 6311   8284   
index be6c496..86eec20 100644
 6312         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        8285  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 6313   8286   
@@ -1,242 +1,453 @@
 6314   8287   
/*
 6315   8288   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 6316   8289   
 * SPDX-License-Identifier: Apache-2.0
 6317   8290   
 */
 6318   8291   
 6319   8292   
//! Functions shared between the tests of several modules.
 6320   8293   
 6321         -
use crate::http_request::{SignableBody, SignableRequest};
        8294  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        8295  +
use crate::http_request::{
        8296  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        8297  +
    SigningSettings,
        8298  +
};
        8299  +
use aws_credential_types::Credentials;
        8300  +
use aws_smithy_runtime_api::client::identity::Identity;
 6322   8301   
use http0::{Method, Uri};
        8302  +
use std::borrow::Cow;
 6323   8303   
use std::error::Error as StdError;
        8304  +
use std::time::{Duration, SystemTime};
        8305  +
use time::format_description::well_known::Rfc3339;
        8306  +
use time::OffsetDateTime;
        8307  +
        8308  +
/// Common test suite collection
        8309  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        8310  +
enum Collection {
        8311  +
    V4,
        8312  +
    V4A,
        8313  +
}
 6324   8314   
 6325         -
pub(crate) mod v4 {
 6326         -
    use super::*;
        8315  +
/// A test from the common CRT test suite
        8316  +
#[derive(Debug, Clone)]
        8317  +
pub(crate) struct SigningSuiteTest {
        8318  +
    test_name: &'static str,
        8319  +
    collection: Collection,
        8320  +
}
 6327   8321   
 6328         -
    fn path(name: &str, ext: &str) -> String {
 6329         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        8322  +
impl SigningSuiteTest {
        8323  +
    /// Create a new test from the V4 test suite
        8324  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        8325  +
        Self {
        8326  +
            test_name,
        8327  +
            collection: Collection::V4,
 6330   8328   
        }
 6331         -
 6332         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 6333         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 6334         -
        read(&path(name, "creq")).trim().to_string()
 6335   8329   
    }
 6336   8330   
 6337         -
    pub(crate) fn test_sts(name: &str) -> String {
 6338         -
        read(&path(name, "sts"))
        8331  +
    /// Create a new test from the V4a test suite
        8332  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        8333  +
        Self {
        8334  +
            test_name,
        8335  +
            collection: Collection::V4A,
 6339   8336   
        }
 6340         -
 6341         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6342         -
        test_parsed_request(name, "req")
 6343   8337   
    }
 6344   8338   
 6345         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 6346         -
        test_parsed_request(name, "sreq")
        8339  +
    /// Get the path to a file in this test suite directory
        8340  +
    fn path(&self, filename: &str) -> String {
        8341  +
        let dir = match self.collection {
        8342  +
            Collection::V4 => "v4",
        8343  +
            Collection::V4A => "v4a",
        8344  +
        };
        8345  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 6347   8346   
    }
 6348   8347   
 6349         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 6350         -
        test_parsed_request(name, "qpsreq")
        8348  +
    /// Get the HTTP request for the test
        8349  +
    pub(crate) fn request(&self) -> TestRequest {
        8350  +
        test_parsed_request(&self.path("request.txt"))
 6351   8351   
    }
 6352   8352   
 6353         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 6354         -
        let path = path(name, ext);
 6355         -
        match parse_request(read(&path).as_bytes()) {
 6356         -
            Ok(parsed) => parsed,
 6357         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        8353  +
    /// Get the signed HTTP request for the test
        8354  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        8355  +
        match signature_location {
        8356  +
            SignatureLocation::QueryParams => {
        8357  +
                test_parsed_request(&self.path("query-signed-request.txt"))
 6358   8358   
            }
        8359  +
            SignatureLocation::Headers => {
        8360  +
                test_parsed_request(&self.path("header-signed-request.txt"))
 6359   8361   
            }
 6360         -
 6361         -
    #[test]
 6362         -
    fn test_parse() {
 6363         -
        test_request("post-header-key-case");
 6364   8362   
        }
 6365         -
 6366         -
    #[test]
 6367         -
    fn test_read_query_params() {
 6368         -
        test_request("get-vanilla-query-order-key-case");
 6369   8363   
    }
 6370         -
}
 6371         -
 6372         -
#[cfg(feature = "sigv4a")]
 6373         -
pub(crate) mod v4a {
 6374         -
    use super::*;
 6375         -
    use crate::http_request::{
 6376         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 6377         -
    };
 6378         -
    use aws_credential_types::Credentials;
 6379         -
    use aws_smithy_runtime_api::client::identity::Identity;
 6380         -
    use serde_derive::Deserialize;
 6381         -
    use std::time::{Duration, SystemTime};
 6382         -
    use time::format_description::well_known::Rfc3339;
 6383         -
    use time::OffsetDateTime;
 6384   8364   
 6385         -
    fn path(test_name: &str, definition_name: &str) -> String {
 6386         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        8365  +
    /// Get the canonical request for the test
        8366  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        8367  +
        match signature_location {
        8368  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        8369  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
 6387   8370   
        }
 6388         -
 6389         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6390         -
        test_parsed_request(&path(name, "request"))
 6391   8371   
    }
 6392   8372   
 6393         -
    pub(crate) fn test_canonical_request(
 6394         -
        name: &str,
 6395         -
        signature_location: SignatureLocation,
 6396         -
    ) -> String {
        8373  +
    /// Get the string to sign for the test
        8374  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
 6397   8375   
        match signature_location {
 6398         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 6399         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        8376  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        8377  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 6400   8378   
        }
 6401   8379   
    }
 6402   8380   
 6403         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
        8381  +
    /// Get the signature for the test
        8382  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
 6404   8383   
        match signature_location {
 6405         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 6406         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        8384  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        8385  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        8386  +
        }
 6407   8387   
    }
        8388  +
        8389  +
    /// Get the test context for the test
        8390  +
    pub(crate) fn context(&self) -> TestContext {
        8391  +
        let context = read(&self.path("context.json"));
        8392  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        8393  +
        tc_builder.build()
 6408   8394   
    }
        8395  +
}
 6409   8396   
 6410         -
    fn test_parsed_request(path: &str) -> TestRequest {
        8397  +
fn test_parsed_request(path: &str) -> TestRequest {
 6411   8398   
    match parse_request(read(path).as_bytes()) {
 6412   8399   
        Ok(parsed) => parsed,
 6413   8400   
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 6414   8401   
    }
 6415         -
    }
        8402  +
}
 6416   8403   
 6417         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 6418         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 6419         -
        let context = read(&path);
 6420         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 6421         -
        tc_builder.build()
 6422         -
    }
        8404  +
fn new_v4_signing_params_from_context(
        8405  +
    test_context: &'_ TestContext,
        8406  +
    signature_location: SignatureLocation,
        8407  +
) -> crate::http_request::SigningParams<'_> {
        8408  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        8409  +
    params.settings.signature_location = signature_location;
        8410  +
    params.into()
        8411  +
}
        8412  +
        8413  +
/// Run the given test from the v4 suite for both header and query
        8414  +
/// signature locations
        8415  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        8416  +
    run_v4_test(test_name, SignatureLocation::Headers);
        8417  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        8418  +
}
        8419  +
        8420  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        8421  +
    assert_eq!(expected.scheme(), actual.scheme());
        8422  +
    assert_eq!(expected.authority(), actual.authority());
        8423  +
    assert_eq!(expected.path(), actual.path());
        8424  +
        8425  +
    // query params may be out of order
        8426  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8427  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        8428  +
    expected_params.sort();
        8429  +
        8430  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8431  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        8432  +
    actual_params.sort();
        8433  +
        8434  +
    assert_eq!(expected_params, actual_params);
        8435  +
}
 6423   8436   
 6424         -
    pub(crate) struct TestContext {
        8437  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        8438  +
    let expected = expected.as_http_request();
        8439  +
    let actual = actual;
        8440  +
    assert_eq!(expected.method(), actual.method());
        8441  +
    assert_eq!(
        8442  +
        expected.headers().len(),
        8443  +
        actual.headers().len(),
        8444  +
        "extra or missing headers"
        8445  +
    );
        8446  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        8447  +
    assert_uri_eq(expected.uri(), actual.uri());
        8448  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        8449  +
}
        8450  +
        8451  +
/// Run the given test from the v4 suite for the given signature location
        8452  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        8453  +
    let test = SigningSuiteTest::v4(test_name);
        8454  +
    let tc = test.context();
        8455  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        8456  +
        8457  +
    let req = test.request();
        8458  +
    let expected_creq = test.canonical_request(signature_location);
        8459  +
    let signable_req = SignableRequest::from(&req);
        8460  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8461  +
        8462  +
    // check canonical request
        8463  +
    assert_eq!(
        8464  +
        expected_creq,
        8465  +
        actual_creq.to_string(),
        8466  +
        "canonical request didn't match (signature location: {signature_location:?})"
        8467  +
    );
        8468  +
        8469  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        8470  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8471  +
    let actual_string_to_sign = StringToSign::new_v4(
        8472  +
        *params.time(),
        8473  +
        params.region().unwrap(),
        8474  +
        params.name(),
        8475  +
        hashed_creq,
        8476  +
    )
        8477  +
    .to_string();
        8478  +
        8479  +
    // check string to sign
        8480  +
    assert_eq!(
        8481  +
        expected_string_to_sign, actual_string_to_sign,
        8482  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        8483  +
    );
        8484  +
        8485  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        8486  +
    let mut signed = req.as_http_request();
        8487  +
    out.output.apply_to_request_http0x(&mut signed);
        8488  +
        8489  +
    // check signature
        8490  +
    assert_eq!(
        8491  +
        test.signature(signature_location),
        8492  +
        out.signature,
        8493  +
        "signature didn't match (signature location: {signature_location:?})"
        8494  +
    );
        8495  +
        8496  +
    let expected = test.signed_request(signature_location);
        8497  +
    assert_requests_eq(expected, signed);
        8498  +
}
        8499  +
        8500  +
/// Test suite context.json
        8501  +
pub(crate) struct TestContext {
 6425   8502   
    pub(crate) identity: Identity,
 6426   8503   
    pub(crate) expiration_in_seconds: u64,
 6427   8504   
    pub(crate) normalize: bool,
 6428   8505   
    pub(crate) region: String,
 6429   8506   
    pub(crate) service: String,
 6430   8507   
    pub(crate) timestamp: String,
 6431   8508   
    pub(crate) omit_session_token: bool,
 6432   8509   
    pub(crate) sign_body: bool,
 6433         -
    }
 6434         -
 6435         -
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 6436         -
        fn from(tc: &'a TestContext) -> Self {
 6437         -
            crate::sign::v4a::SigningParams {
 6438         -
                identity: &tc.identity,
 6439         -
                region_set: &tc.region,
 6440         -
                name: &tc.service,
 6441         -
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 6442         -
                    .unwrap()
 6443         -
                    .into(),
 6444         -
                settings: SigningSettings {
 6445         -
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6446         -
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 6447         -
                    uri_path_normalization_mode: tc.normalize.into(),
 6448         -
                    session_token_mode: if tc.omit_session_token {
 6449         -
                        SessionTokenMode::Exclude
 6450         -
                    } else {
 6451         -
                        SessionTokenMode::Include
 6452         -
                    },
 6453         -
                    payload_checksum_kind: if tc.sign_body {
 6454         -
                        PayloadChecksumKind::XAmzSha256
 6455         -
                    } else {
 6456         -
                        PayloadChecksumKind::NoHeader
 6457         -
                    },
 6458         -
                    ..Default::default()
 6459         -
                },
 6460         -
            }
 6461         -
        }
 6462         -
    }
        8510  +
}
 6463   8511   
 6464         -
    // Serde has limitations requiring this odd workaround.
 6465         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 6466         -
    fn return_true() -> bool {
        8512  +
// Serde has limitations requiring this odd workaround.
        8513  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        8514  +
fn return_true() -> bool {
 6467   8515   
    true
 6468         -
    }
        8516  +
}
 6469   8517   
 6470         -
    #[derive(Deserialize)]
 6471         -
    pub(crate) struct TestContextBuilder {
        8518  +
#[derive(serde_derive::Deserialize)]
        8519  +
pub(crate) struct TestContextBuilder {
 6472   8520   
    credentials: TestContextCreds,
 6473   8521   
    expiration_in_seconds: u64,
 6474   8522   
    normalize: bool,
 6475   8523   
    region: String,
 6476   8524   
    service: String,
 6477   8525   
    timestamp: String,
 6478   8526   
    #[serde(default)]
 6479   8527   
    omit_session_token: bool,
 6480   8528   
    #[serde(default = "return_true")]
 6481   8529   
    sign_body: bool,
 6482         -
    }
        8530  +
}
 6483   8531   
 6484         -
    impl TestContextBuilder {
        8532  +
impl TestContextBuilder {
 6485   8533   
    pub(crate) fn build(self) -> TestContext {
 6486   8534   
        let identity = Identity::new(
 6487   8535   
            Credentials::from_keys(
 6488   8536   
                &self.credentials.access_key_id,
 6489   8537   
                &self.credentials.secret_access_key,
 6490   8538   
                self.credentials.token.clone(),
 6491   8539   
            ),
 6492   8540   
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 6493   8541   
        );
 6494   8542   
 6495   8543   
        TestContext {
 6496   8544   
            identity,
 6497   8545   
            expiration_in_seconds: self.expiration_in_seconds,
 6498   8546   
            normalize: self.normalize,
 6499   8547   
            region: self.region,
 6500   8548   
            service: self.service,
 6501   8549   
            timestamp: self.timestamp,
 6502   8550   
            omit_session_token: self.omit_session_token,
 6503   8551   
            sign_body: self.sign_body,
 6504   8552   
        }
 6505   8553   
    }
 6506         -
    }
        8554  +
}
 6507   8555   
 6508         -
    #[derive(Deserialize)]
 6509         -
    pub(crate) struct TestContextCreds {
        8556  +
#[derive(serde_derive::Deserialize)]
        8557  +
pub(crate) struct TestContextCreds {
 6510   8558   
    access_key_id: String,
 6511   8559   
    secret_access_key: String,
 6512   8560   
    token: Option<String>,
        8561  +
}
        8562  +
        8563  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        8564  +
    fn from(tc: &'a TestContext) -> Self {
        8565  +
        crate::sign::v4::SigningParams {
        8566  +
            identity: &tc.identity,
        8567  +
            region: &tc.region,
        8568  +
            name: &tc.service,
        8569  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8570  +
                .unwrap()
        8571  +
                .into(),
        8572  +
            settings: SigningSettings {
        8573  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8574  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8575  +
                uri_path_normalization_mode: tc.normalize.into(),
        8576  +
                session_token_mode: if tc.omit_session_token {
        8577  +
                    SessionTokenMode::Exclude
        8578  +
                } else {
        8579  +
                    SessionTokenMode::Include
        8580  +
                },
        8581  +
                payload_checksum_kind: if tc.sign_body {
        8582  +
                    PayloadChecksumKind::XAmzSha256
        8583  +
                } else {
        8584  +
                    PayloadChecksumKind::NoHeader
        8585  +
                },
        8586  +
                ..Default::default()
        8587  +
            },
        8588  +
        }
        8589  +
    }
        8590  +
}
        8591  +
        8592  +
#[cfg(feature = "sigv4a")]
        8593  +
pub(crate) mod v4a {
        8594  +
    use super::*;
        8595  +
    use crate::http_request::{
        8596  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        8597  +
    };
        8598  +
    use crate::sign::v4a;
        8599  +
    use p256::ecdsa::signature::{Signature, Verifier};
        8600  +
    use p256::ecdsa::{DerSignature, SigningKey};
        8601  +
    use std::time::Duration;
        8602  +
    use time::format_description::well_known::Rfc3339;
        8603  +
    use time::OffsetDateTime;
        8604  +
        8605  +
    fn new_v4a_signing_params_from_context(
        8606  +
        test_context: &'_ TestContext,
        8607  +
        signature_location: SignatureLocation,
        8608  +
    ) -> crate::http_request::SigningParams<'_> {
        8609  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        8610  +
        params.settings.signature_location = signature_location;
        8611  +
        params.into()
        8612  +
    }
        8613  +
        8614  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        8615  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        8616  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
        8617  +
    }
        8618  +
        8619  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        8620  +
        let test = SigningSuiteTest::v4a(test_name);
        8621  +
        let tc = test.context();
        8622  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        8623  +
        8624  +
        let req = test.request();
        8625  +
        let expected_creq = test.canonical_request(signature_location);
        8626  +
        let signable_req = SignableRequest::from(&req);
        8627  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8628  +
        8629  +
        assert_eq!(
        8630  +
            expected_creq,
        8631  +
            actual_creq.to_string(),
        8632  +
            "canonical request didn't match (signature location: {signature_location:?})"
        8633  +
        );
        8634  +
        8635  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        8636  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8637  +
        let actual_string_to_sign = StringToSign::new_v4a(
        8638  +
            *params.time(),
        8639  +
            params.region_set().unwrap(),
        8640  +
            params.name(),
        8641  +
            hashed_creq,
        8642  +
        )
        8643  +
        .to_string();
        8644  +
        8645  +
        assert_eq!(
        8646  +
            expected_string_to_sign, actual_string_to_sign,
        8647  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        8648  +
        );
        8649  +
        8650  +
        let out = sign(signable_req, &params).unwrap();
        8651  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        8652  +
        out.output
        8653  +
            .apply_to_request_http0x(&mut req.as_http_request());
        8654  +
        8655  +
        let creds = params.credentials().unwrap();
        8656  +
        let signing_key =
        8657  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        8658  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        8659  +
        let sig = sig
        8660  +
            .try_into()
        8661  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        8662  +
        8663  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        8664  +
        let peer_public_key = signing_key.verifying_key();
        8665  +
        let sts = actual_string_to_sign.as_bytes();
        8666  +
        peer_public_key.verify(sts, &sig).unwrap();
        8667  +
        // TODO(sigv4a) - use public.key.json as verifying key?
        8668  +
    }
        8669  +
        8670  +
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
        8671  +
        fn from(tc: &'a TestContext) -> Self {
        8672  +
            crate::sign::v4a::SigningParams {
        8673  +
                identity: &tc.identity,
        8674  +
                region_set: &tc.region,
        8675  +
                name: &tc.service,
        8676  +
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8677  +
                    .unwrap()
        8678  +
                    .into(),
        8679  +
                settings: SigningSettings {
        8680  +
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8681  +
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8682  +
                    uri_path_normalization_mode: tc.normalize.into(),
        8683  +
                    session_token_mode: if tc.omit_session_token {
        8684  +
                        SessionTokenMode::Exclude
        8685  +
                    } else {
        8686  +
                        SessionTokenMode::Include
        8687  +
                    },
        8688  +
                    payload_checksum_kind: if tc.sign_body {
        8689  +
                        PayloadChecksumKind::XAmzSha256
        8690  +
                    } else {
        8691  +
                        PayloadChecksumKind::NoHeader
        8692  +
                    },
        8693  +
                    ..Default::default()
        8694  +
                },
        8695  +
            }
        8696  +
        }
 6513   8697   
    }
 6514   8698   
 6515   8699   
    #[test]
 6516   8700   
    fn test_parse() {
 6517         -
        let req = test_request("post-header-key-case");
        8701  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 6518   8702   
        assert_eq!(req.method, "POST");
 6519   8703   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6520   8704   
        assert!(req.headers.is_empty());
 6521   8705   
    }
 6522   8706   
 6523   8707   
    #[test]
 6524   8708   
    fn test_read_query_params() {
 6525         -
        let req = test_request("get-header-value-trim");
        8709  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 6526   8710   
        assert_eq!(req.method, "GET");
 6527   8711   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6528   8712   
        assert!(!req.headers.is_empty());
 6529   8713   
    }
 6530   8714   
}
 6531   8715   
 6532   8716   
fn read(path: &str) -> String {
 6533   8717   
    println!("Loading `{}` for test case...", path);
 6534   8718   
    let v = {
 6535   8719   
        match std::fs::read_to_string(path) {
 6536   8720   
            // This replacement is necessary for tests to pass on Windows, as reading the
 6537   8721   
            // test snapshots from the file system results in CRLF line endings being inserted.
 6538   8722   
            Ok(value) => value.replace("\r\n", "\n"),
 6539   8723   
            Err(err) => {
 6540   8724   
                panic!("failed to load test case `{}`: {}", path, err);
 6541   8725   
            }
 6542   8726   
        }
 6543   8727   
    };
 6544   8728   
 6545   8729   
    v.trim().to_string()
 6546   8730   
}
 6547   8731   
 6548   8732   
pub(crate) struct TestRequest {
 6549   8733   
    pub(crate) uri: String,
 6550   8734   
    pub(crate) method: String,
 6551   8735   
    pub(crate) headers: Vec<(String, String)>,
 6552   8736   
    pub(crate) body: TestSignedBody,
 6553   8737   
}
 6554   8738   
 6555   8739   
pub(crate) enum TestSignedBody {
 6556   8740   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 6557   8741   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 6558   8742   
                    )
 6559   8743   
                })
 6560   8744   
                .collect::<Vec<_>>(),
 6561   8745   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 6562   8746   
        }
 6563   8747   
    }
 6564   8748   
}
 6565   8749   
 6566   8750   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 6567   8751   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 6568   8752   
        SignableRequest::new(
 6569   8753   
            &request.method,
 6570   8754   
            &request.uri,
 6571   8755   
            request
 6572   8756   
                .headers
 6573   8757   
                .iter()
 6574   8758   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 6575   8759   
            request.body.as_signable_body(),
 6576   8760   
        )
 6577   8761   
        .expect("URI MUST be valid")
 6578   8762   
    }
 6579   8763   
}
 6580   8764   
 6581   8765   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 6582   8766   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 6583   8767   
    // httparse 1.5 requires two trailing newlines to head the header section.
 6584   8768   
    let mut with_newline = Vec::from(s);
 6585   8769   
    with_newline.push(b'\n');
 6586   8770   
    let mut req = httparse::Request::new(&mut headers);
 6587         -
    let _ = req.parse(&with_newline).unwrap();
        8771  +
    let status = req.parse(&with_newline).unwrap();
        8772  +
        8773  +
    let body = if status.is_complete() {
        8774  +
        let body_offset = status.unwrap();
        8775  +
        // ignore the newline we added, take from original
        8776  +
        &s[body_offset..]
        8777  +
    } else {
        8778  +
        &[]
        8779  +
    };
 6588   8780   
 6589   8781   
    let mut uri_builder = Uri::builder().scheme("https");
 6590   8782   
    if let Some(path) = req.path {
 6591   8783   
        uri_builder = uri_builder.path_and_query(path);
 6592   8784   
    }
 6593   8785   
 6594   8786   
    let mut headers = vec![];
 6595   8787   
    for header in req.headers {
 6596   8788   
        let name = header.name.to_lowercase();
 6597   8789   
        if name == "host" {
 6598   8790   
            uri_builder = uri_builder.authority(header.value);
 6599   8791   
        } else if !name.is_empty() {
 6600   8792   
            headers.push((
 6601   8793   
                header.name.to_string(),
 6602   8794   
                std::str::from_utf8(header.value)?.to_string(),
 6603   8795   
            ));
 6604   8796   
        }
 6605   8797   
    }
 6606   8798   
 6607   8799   
    Ok(TestRequest {
 6608   8800   
        uri: uri_builder.build()?.to_string(),
 6609   8801   
        method: req.method.unwrap().to_string(),
 6610   8802   
        headers,
 6611         -
        body: TestSignedBody::Bytes(vec![]),
        8803  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 6612   8804   
    })
 6613   8805   
}
 6614   8806   
 6615   8807   
#[test]
 6616   8808   
fn test_parse_headers() {
 6617   8809   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 6618   8810   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 6619   8811   
    assert_eq!(
 6620   8812   
        httparse::parse_headers(buf, &mut headers),
 6621   8813   
        Ok(httparse::Status::Complete((
 6622   8814   
            56,
 6623   8815   
            &[
 6624   8816   
                httparse::Header {
 6625   8817   
                    name: "Host",
 6626   8818   
                    value: b"example.amazonaws.com",
 6627   8819   
                },
 6628   8820   
                httparse::Header {
 6629   8821   
                    name: "X-Amz-Date",
 6630   8822   
                    value: b"20150830T123600Z",
 6631   8823   
                }
 6632   8824   
            ][..]
 6633   8825   
        )))
 6634   8826   
    );
 6635   8827   
}
 6636   8828   
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
 6637   8829   
index a208453..fc00249 100644
 6638         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        8830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 6639   8831   
@@ -168,52 +168,54 @@ pub mod signing_params {
 6640   8832   
        );
 6641   8833   
 6642   8834   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 6643   8835   
        /// a required argument was not given.
 6644   8836   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 6645   8837   
            Ok(SigningParams {
 6646   8838   
                identity: self
 6647   8839   
                    .identity
 6648   8840   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 6649   8841   
                region: self
 6650   8842   
                    .region
 6651   8843   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 6652   8844   
                name: self
 6653   8845   
                    .name
 6654   8846   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 6655   8847   
                time: self
 6656   8848   
                    .time
 6657   8849   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 6658   8850   
                settings: self
 6659   8851   
                    .settings
 6660   8852   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 6661   8853   
            })
 6662   8854   
        }
 6663   8855   
    }
 6664   8856   
}
 6665   8857   
 6666   8858   
#[cfg(test)]
 6667   8859   
mod tests {
 6668   8860   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 6669   8861   
    use crate::date_time::test_parsers::parse_date_time;
 6670         -
    use crate::http_request::test;
 6671   8862   
 6672   8863   
    #[test]
 6673   8864   
    fn test_signature_calculation() {
 6674   8865   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 6675         -
        let creq = test::v4::test_canonical_request("iam");
        8866  +
        let creq = r#"AWS4-HMAC-SHA256
        8867  +
20150830T123600Z
        8868  +
20150830/us-east-1/iam/aws4_request
        8869  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 6676   8870   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6677   8871   
 6678   8872   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 6679   8873   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 6680   8874   
 6681   8875   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 6682   8876   
        assert_eq!(expected, &signature);
 6683   8877   
    }
 6684   8878   
 6685   8879   
    #[test]
 6686   8880   
    fn sign_payload_empty_string() {
 6687   8881   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 6688   8882   
        let actual = sha256_hex_string([]);
 6689   8883   
        assert_eq!(expected, actual);
 6690   8884   
    }
 6691   8885   
}
 6692   8886   
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
 6693   8887   
index ce78c38..8c2f591 100644
 6694         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        8888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 6695   8889   
@@ -1,43 +1,43 @@
 6696   8890   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6697   8891   
[package]
 6698   8892   
name = "aws-smithy-checksums"
 6699   8893   
version = "0.63.5"
 6700   8894   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 6701   8895   
description = "Checksum calculation and verification callbacks"
 6702   8896   
edition = "2021"
 6703   8897   
license = "Apache-2.0"
 6704   8898   
repository = "https://github.com/smithy-lang/smithy-rs"
 6705   8899   
[package.metadata.docs.rs]
 6706   8900   
all-features = true
 6707   8901   
targets = ["x86_64-unknown-linux-gnu"]
 6708   8902   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6709   8903   
rustdoc-args = ["--cfg", "docsrs"]
 6710   8904   
 6711   8905   
[dependencies]
 6712   8906   
bytes = "1.10.0"
 6713   8907   
crc-fast = "1.3.0"
 6714   8908   
hex = "0.4.3"
 6715   8909   
http = "0.2.9"
 6716   8910   
http-body = "0.4.5"
 6717   8911   
md-5 = "0.10"
 6718   8912   
pin-project-lite = "0.2.14"
 6719   8913   
sha1 = "0.10"
 6720   8914   
sha2 = "0.10"
 6721   8915   
tracing = "0.1.40"
 6722   8916   
 6723   8917   
[dependencies.aws-smithy-http]
 6724   8918   
path = "../aws-smithy-http"
 6725         -
version = "0.62.2"
        8919  +
version = "0.62.3"
 6726   8920   
 6727   8921   
[dependencies.aws-smithy-types]
 6728   8922   
path = "../aws-smithy-types"
 6729   8923   
version = "1.3.2"
 6730   8924   
 6731   8925   
[dev-dependencies]
 6732   8926   
bytes-utils = "0.1.2"
 6733   8927   
pretty_assertions = "1.3"
 6734   8928   
tracing-test = "0.2.1"
 6735   8929   
 6736   8930   
[dev-dependencies.tokio]
 6737   8931   
version = "1.23.1"
 6738   8932   
features = ["macros", "rt"]
 6739   8933   
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
 6740   8934   
index 970c99e..d3c7a49 100644
 6741         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        8935  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 6742   8936   
@@ -1,34 +1,34 @@
 6743   8937   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6744   8938   
[package]
 6745   8939   
name = "aws-smithy-http"
 6746         -
version = "0.62.2"
        8940  +
version = "0.62.3"
 6747   8941   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6748   8942   
description = "Smithy HTTP logic for smithy-rs."
 6749   8943   
edition = "2021"
 6750   8944   
license = "Apache-2.0"
 6751   8945   
repository = "https://github.com/smithy-lang/smithy-rs"
 6752   8946   
[package.metadata.docs.rs]
 6753   8947   
all-features = true
 6754   8948   
targets = ["x86_64-unknown-linux-gnu"]
 6755   8949   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6756   8950   
rustdoc-args = ["--cfg", "docsrs"]
 6757   8951   
 6758   8952   
[features]
 6759   8953   
event-stream = ["aws-smithy-eventstream"]
 6760   8954   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 6761   8955   
 6762   8956   
[dependencies]
 6763   8957   
bytes = "1.10.0"
 6764   8958   
bytes-utils = "0.1"
 6765   8959   
percent-encoding = "2.3.1"
 6766   8960   
pin-project-lite = "0.2.14"
 6767   8961   
pin-utils = "0.1.0"
 6768   8962   
tracing = "0.1.40"
 6769   8963   
futures-core = "0.3.31"
 6770   8964   
 6771   8965   
[dependencies.aws-smithy-eventstream]
 6772   8966   
path = "../aws-smithy-eventstream"
 6773   8967   
optional = true
 6774   8968   
version = "0.60.10"
 6775   8969   
 6776   8970   
[dependencies.aws-smithy-runtime-api]
 6777   8971   
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
 6778   8972   
index 508f7a2..361545e 100644
 6779         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        8973  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 6780   8974   
@@ -1,27 +1,27 @@
 6781   8975   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6782   8976   
[[bin]]
 6783   8977   
name = "read_many_from_str"
 6784   8978   
path = "fuzz_targets/read_many_from_str.rs"
 6785   8979   
test = false
 6786   8980   
doc = false
 6787   8981   
 6788   8982   
[package]
 6789   8983   
name = "aws-smithy-http-fuzz"
 6790   8984   
version = "0.0.0"
 6791   8985   
authors = ["Automatically generated"]
 6792   8986   
publish = false
 6793   8987   
edition = "2021"
 6794   8988   
 6795   8989   
[package.metadata]
 6796   8990   
cargo-fuzz = true
 6797   8991   
 6798   8992   
[dependencies]
 6799   8993   
libfuzzer-sys = "=0.4.7"
 6800   8994   
http = "0.2.3"
 6801   8995   
 6802   8996   
[dependencies.aws-smithy-http]
 6803   8997   
path = ".."
 6804         -
version = "0.62.2"
        8998  +
version = "0.62.3"
 6805   8999   
 6806   9000   
[workspace]
 6807   9001   
members = ["."]
 6808   9002   
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
 6809   9003   
index fef41d0..7694da6 100644
 6810         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        9004  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 6811   9005   
@@ -25,68 +25,73 @@ impl QueryWriter {
 6812   9006   
    pub fn new(uri: &Uri) -> Self {
 6813   9007   
        let new_path_and_query = uri
 6814   9008   
            .path_and_query()
 6815   9009   
            .map(|pq| pq.to_string())
 6816   9010   
            .unwrap_or_default();
 6817   9011   
        let prefix = if uri.query().is_none() {
 6818   9012   
            Some('?')
 6819   9013   
        } else if !uri.query().unwrap_or_default().is_empty() {
 6820   9014   
            Some('&')
 6821   9015   
        } else {
 6822   9016   
            None
 6823   9017   
        };
 6824   9018   
        QueryWriter {
 6825   9019   
            base_uri: uri.clone(),
 6826   9020   
            new_path_and_query,
 6827   9021   
            prefix,
 6828   9022   
        }
 6829   9023   
    }
 6830   9024   
 6831   9025   
    /// Clears all query parameters.
 6832   9026   
    pub fn clear_params(&mut self) {
 6833   9027   
        if let Some(index) = self.new_path_and_query.find('?') {
 6834   9028   
            self.new_path_and_query.truncate(index);
 6835   9029   
            self.prefix = Some('?');
 6836   9030   
        }
 6837   9031   
    }
 6838   9032   
 6839   9033   
    /// Inserts a new query parameter. The key and value are percent encoded
 6840   9034   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 6841   9035   
    pub fn insert(&mut self, k: &str, v: &str) {
        9036  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        9037  +
    }
        9038  +
        9039  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        9040  +
    /// as is.
        9041  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 6842   9042   
        if let Some(prefix) = self.prefix {
 6843   9043   
            self.new_path_and_query.push(prefix);
 6844   9044   
        }
 6845   9045   
        self.prefix = Some('&');
 6846         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        9046  +
        self.new_path_and_query.push_str(encoded_k);
 6847   9047   
        self.new_path_and_query.push('=');
 6848         -
 6849         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
        9048  +
        self.new_path_and_query.push_str(encoded_v)
 6850   9049   
    }
 6851   9050   
 6852   9051   
    /// Returns just the built query string.
 6853   9052   
    pub fn build_query(self) -> String {
 6854   9053   
        self.build_uri().query().unwrap_or_default().to_string()
 6855   9054   
    }
 6856   9055   
 6857   9056   
    /// Returns a full [`Uri`] with the query string updated.
 6858   9057   
    pub fn build_uri(self) -> Uri {
 6859   9058   
        let mut parts = self.base_uri.into_parts();
 6860   9059   
        parts.path_and_query = Some(
 6861   9060   
            self.new_path_and_query
 6862   9061   
                .parse()
 6863   9062   
                .expect("adding query should not invalidate URI"),
 6864   9063   
        );
 6865   9064   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 6866   9065   
    }
 6867   9066   
}
 6868   9067   
 6869   9068   
#[cfg(test)]
 6870   9069   
mod test {
 6871   9070   
    use super::QueryWriter;
 6872   9071   
    use http_02x::Uri;
 6873   9072   
 6874   9073   
    #[test]
 6875   9074   
    fn empty_uri() {
 6876   9075   
        let uri = Uri::from_static("http://www.example.com");
 6877   9076   
        let mut query_writer = QueryWriter::new(&uri);
 6878   9077   
        query_writer.insert("key", "val%ue");
 6879   9078   
        query_writer.insert("another", "value");
 6880   9079   
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
 6881   9080   
index f108978..df7a9fe 100644
 6882         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        9081  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 6883   9082   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 6884   9083   
 6885   9084   
[package.metadata.smithy-rs-release-tooling]
 6886   9085   
stable = true
 6887   9086   
[package.metadata.cargo-udeps.ignore]
 6888   9087   
normal = ["aws-smithy-http"]
 6889   9088   
 6890   9089   
[features]
 6891   9090   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 6892   9091   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 6893   9092   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 6894   9093   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 6895   9094   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 6896   9095   
rt-tokio = ["tokio/rt"]
 6897   9096   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 6898   9097   
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"]
 6899   9098   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 6900   9099   
 6901   9100   
[dependencies]
 6902   9101   
bytes = "1.10.0"
 6903   9102   
fastrand = "2.3.0"
 6904   9103   
pin-project-lite = "0.2.14"
 6905   9104   
pin-utils = "0.1.0"
 6906   9105   
tracing = "0.1.40"
 6907   9106   
 6908   9107   
[dependencies.aws-smithy-async]
 6909   9108   
path = "../aws-smithy-async"
 6910   9109   
version = "1.2.5"
 6911   9110   
 6912   9111   
[dependencies.aws-smithy-http]
 6913   9112   
path = "../aws-smithy-http"
 6914         -
version = "0.62.2"
        9113  +
version = "0.62.3"
 6915   9114   
 6916   9115   
[dependencies.aws-smithy-observability]
 6917   9116   
path = "../aws-smithy-observability"
 6918   9117   
version = "0.1.3"
 6919   9118   
 6920   9119   
[dependencies.aws-smithy-runtime-api]
 6921   9120   
path = "../aws-smithy-runtime-api"
 6922   9121   
version = "1.8.5"
 6923   9122   
 6924   9123   
[dependencies.aws-smithy-types]
 6925   9124   
path = "../aws-smithy-types"
 6926   9125   
features = ["http-body-0-4-x"]
 6927   9126   
version = "1.3.2"
 6928   9127   
 6929   9128   
[dependencies.aws-smithy-http-client]
 6930   9129   
path = "../aws-smithy-http-client"
 6931   9130   
optional = true
 6932   9131   
version = "1.0.6"
 6933   9132   
 6934   9133   
[dependencies.http-02x]
 6935   9134   
package = "http"
 6936   9135   
version = "0.2.9"
 6937   9136   
 6938   9137   
[dependencies.http-1x]
 6939   9138   
package = "http"
 6940   9139   
version = "1"
 6941   9140   
 6942   9141   
[dependencies.http-body-04x]
 6943   9142   
package = "http-body"
 6944   9143   
version = "0.4.5"
 6945   9144   
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
 6946   9145   
index 4e050c6..f58eb1c 100644
 6947         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
        9146  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 6948   9147   
@@ -1,33 +1,33 @@
 6949   9148   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6950   9149   
[package]
 6951   9150   
name = "aws-smithy-wasm"
 6952   9151   
version = "0.1.4"
 6953   9152   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 6954   9153   
description = "Smithy WebAssembly configuration for smithy-rs."
 6955   9154   
edition = "2021"
 6956   9155   
license = "Apache-2.0"
 6957   9156   
repository = "https://github.com/awslabs/smithy-rs"
 6958   9157   
[package.metadata.docs.rs]
 6959   9158   
all-features = true
 6960   9159   
targets = ["x86_64-unknown-linux-gnu"]
 6961   9160   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6962   9161   
rustdoc-args = ["--cfg", "docsrs"]
 6963   9162   
 6964   9163   
[dependencies]
 6965   9164   
bytes = "1.10.0"
 6966   9165   
http = "1.0.0"
 6967   9166   
tracing = "0.1.40"
 6968   9167   
wasi = "0.12.1"
 6969   9168   
 6970   9169   
[dependencies.aws-smithy-runtime-api]
 6971   9170   
path = "../aws-smithy-runtime-api"
 6972   9171   
features = ["http-1x"]
 6973   9172   
version = "1.8.5"
 6974   9173   
 6975   9174   
[dependencies.aws-smithy-http]
 6976   9175   
path = "../aws-smithy-http"
 6977         -
version = "0.62.2"
        9176  +
version = "0.62.3"
 6978   9177   
 6979   9178   
[dependencies.aws-smithy-types]
 6980   9179   
path = "../aws-smithy-types"
 6981   9180   
version = "1.3.2"
 6982   9181   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6983   9182   
index a880648..139e808 100644
 6984         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
        9183  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6985   9184   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 6986   9185   
edition = "2021"
 6987   9186   
license = "Apache-2.0"
 6988   9187   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6989   9188   
rust-version = "1.86.0"
 6990   9189   
readme = "README.md"
 6991   9190   
[package.metadata.smithy]
 6992   9191   
codegen-version = "ci"
 6993   9192   
[package.metadata.docs.rs]
 6994   9193   
all-features = true
 6995   9194   
targets = ["x86_64-unknown-linux-gnu"]
 6996   9195   
[dependencies.aws-credential-types]
 6997   9196   
path = "../aws-credential-types"
 6998   9197   
version = "1.2.4"
 6999   9198   
 7000   9199   
[dependencies.aws-runtime]
 7001   9200   
path = "../aws-runtime"
 7002   9201   
features = ["event-stream"]
 7003   9202   
version = "1.5.9"
 7004   9203   
 7005   9204   
[dependencies.aws-smithy-async]
 7006   9205   
path = "../aws-smithy-async"
 7007   9206   
version = "1.2.5"
 7008   9207   
 7009   9208   
[dependencies.aws-smithy-eventstream]
 7010   9209   
path = "../aws-smithy-eventstream"
 7011   9210   
version = "0.60.10"
 7012   9211   
 7013   9212   
[dependencies.aws-smithy-http]
 7014   9213   
path = "../aws-smithy-http"
 7015   9214   
features = ["event-stream"]
 7016         -
version = "0.62.2"
        9215  +
version = "0.62.3"
 7017   9216   
 7018   9217   
[dependencies.aws-smithy-json]
 7019   9218   
path = "../aws-smithy-json"
 7020   9219   
version = "0.61.4"
 7021   9220   
 7022   9221   
[dependencies.aws-smithy-runtime]
 7023   9222   
path = "../aws-smithy-runtime"
 7024   9223   
features = ["client"]
 7025   9224   
version = "1.8.5"
 7026   9225   
 7027   9226   
[dependencies.aws-smithy-runtime-api]
 7028   9227   
path = "../aws-smithy-runtime-api"
 7029   9228   
features = ["client", "http-02x"]
 7030   9229   
version = "1.8.5"
 7031   9230   
 7032   9231   
[dependencies.aws-smithy-types]
 7033   9232   
path = "../aws-smithy-types"
 7034   9233   
version = "1.3.2"
 7035   9234   
 7036   9235   
[dependencies.aws-types]
 7037   9236   
path = "../aws-types"
 7038   9237   
version = "1.3.8"
 7039   9238   
 7040   9239   
[dependencies.bytes]
 7041   9240   
version = "1.4.0"
 7042   9241   
 7043   9242   
[dependencies.fastrand]
 7044   9243   
version = "2.0.0"
 7045   9244   
 7046   9245   
[dependencies.http]
 7047   9246   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7048   9247   
index 415ecc9..667d12b 100644
 7049         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
        9248  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7050   9249   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 7051   9250   
edition = "2021"
 7052   9251   
license = "Apache-2.0"
 7053   9252   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7054   9253   
rust-version = "1.86.0"
 7055   9254   
readme = "README.md"
 7056   9255   
[package.metadata.smithy]
 7057   9256   
codegen-version = "ci"
 7058   9257   
[package.metadata.docs.rs]
 7059   9258   
all-features = true
 7060   9259   
targets = ["x86_64-unknown-linux-gnu"]
 7061   9260   
[dependencies.aws-credential-types]
 7062   9261   
path = "../aws-credential-types"
 7063   9262   
version = "1.2.4"
 7064   9263   
 7065   9264   
[dependencies.aws-runtime]
 7066   9265   
path = "../aws-runtime"
 7067   9266   
features = ["event-stream"]
 7068   9267   
version = "1.5.9"
 7069   9268   
 7070   9269   
[dependencies.aws-smithy-async]
 7071   9270   
path = "../aws-smithy-async"
 7072   9271   
version = "1.2.5"
 7073   9272   
 7074   9273   
[dependencies.aws-smithy-eventstream]
 7075   9274   
path = "../aws-smithy-eventstream"
 7076   9275   
version = "0.60.10"
 7077   9276   
 7078   9277   
[dependencies.aws-smithy-http]
 7079   9278   
path = "../aws-smithy-http"
 7080   9279   
features = ["event-stream"]
 7081         -
version = "0.62.2"
        9280  +
version = "0.62.3"
 7082   9281   
 7083   9282   
[dependencies.aws-smithy-json]
 7084   9283   
path = "../aws-smithy-json"
 7085   9284   
version = "0.61.4"
 7086   9285   
 7087   9286   
[dependencies.aws-smithy-runtime]
 7088   9287   
path = "../aws-smithy-runtime"
 7089   9288   
features = ["client"]
 7090   9289   
version = "1.8.5"
 7091   9290   
 7092   9291   
[dependencies.aws-smithy-runtime-api]
 7093   9292   
path = "../aws-smithy-runtime-api"
 7094   9293   
features = ["client", "http-02x"]
 7095   9294   
version = "1.8.5"
 7096   9295   
 7097   9296   
[dependencies.aws-smithy-types]
 7098   9297   
path = "../aws-smithy-types"
 7099   9298   
version = "1.3.2"
 7100   9299   
 7101   9300   
[dependencies.aws-types]
 7102   9301   
path = "../aws-types"
 7103   9302   
version = "1.3.8"
 7104   9303   
 7105   9304   
[dependencies.bytes]
 7106   9305   
version = "1.4.0"
 7107   9306   
 7108   9307   
[dependencies.fastrand]
 7109   9308   
version = "2.0.0"
 7110   9309   
 7111   9310   
[dependencies.http]
 7112   9311   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7113   9312   
index 8871cab..ed88de6 100644
 7114         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
        9313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7115   9314   
@@ -1,61 +1,61 @@
 7116   9315   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7117   9316   
[package]
 7118   9317   
name = "aws-sdk-codecatalyst"
 7119   9318   
version = "0.0.0-local"
 7120   9319   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7121   9320   
description = "AWS SDK for Amazon CodeCatalyst"
 7122   9321   
edition = "2021"
 7123   9322   
license = "Apache-2.0"
 7124   9323   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7125   9324   
rust-version = "1.86.0"
 7126   9325   
readme = "README.md"
 7127   9326   
[package.metadata.smithy]
 7128   9327   
codegen-version = "ci"
 7129   9328   
[package.metadata.docs.rs]
 7130   9329   
all-features = true
 7131   9330   
targets = ["x86_64-unknown-linux-gnu"]
 7132   9331   
[dependencies.aws-credential-types]
 7133   9332   
path = "../aws-credential-types"
 7134   9333   
version = "1.2.4"
 7135   9334   
 7136   9335   
[dependencies.aws-runtime]
 7137   9336   
path = "../aws-runtime"
 7138   9337   
version = "1.5.9"
 7139   9338   
 7140   9339   
[dependencies.aws-smithy-async]
 7141   9340   
path = "../aws-smithy-async"
 7142   9341   
version = "1.2.5"
 7143   9342   
 7144   9343   
[dependencies.aws-smithy-http]
 7145   9344   
path = "../aws-smithy-http"
 7146         -
version = "0.62.2"
        9345  +
version = "0.62.3"
 7147   9346   
 7148   9347   
[dependencies.aws-smithy-json]
 7149   9348   
path = "../aws-smithy-json"
 7150   9349   
version = "0.61.4"
 7151   9350   
 7152   9351   
[dependencies.aws-smithy-runtime]
 7153   9352   
path = "../aws-smithy-runtime"
 7154   9353   
features = ["client", "http-auth"]
 7155   9354   
version = "1.8.5"
 7156   9355   
 7157   9356   
[dependencies.aws-smithy-runtime-api]
 7158   9357   
path = "../aws-smithy-runtime-api"
 7159   9358   
features = ["client", "http-02x", "http-auth"]
 7160   9359   
version = "1.8.5"
 7161   9360   
 7162   9361   
[dependencies.aws-smithy-types]
 7163   9362   
path = "../aws-smithy-types"
 7164   9363   
version = "1.3.2"
 7165   9364   
 7166   9365   
[dependencies.aws-types]
 7167   9366   
path = "../aws-types"
 7168   9367   
version = "1.3.8"
 7169   9368   
 7170   9369   
[dependencies.bytes]
 7171   9370   
version = "1.4.0"
 7172   9371   
 7173   9372   
[dependencies.fastrand]
 7174   9373   
version = "2.0.0"
 7175   9374   
 7176   9375   
[dependencies.http]
 7177   9376   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7178   9377   
index 89573ff..05238af 100644
 7179         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
        9378  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7180   9379   
@@ -1,61 +1,61 @@
 7181   9380   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7182   9381   
[package]
 7183   9382   
name = "aws-sdk-config"
 7184   9383   
version = "0.0.0-local"
 7185   9384   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7186   9385   
description = "AWS SDK for AWS Config"
 7187   9386   
edition = "2021"
 7188   9387   
license = "Apache-2.0"
 7189   9388   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7190   9389   
rust-version = "1.86.0"
 7191   9390   
readme = "README.md"
 7192   9391   
[package.metadata.smithy]
 7193   9392   
codegen-version = "ci"
 7194   9393   
[package.metadata.docs.rs]
 7195   9394   
all-features = true
 7196   9395   
targets = ["x86_64-unknown-linux-gnu"]
 7197   9396   
[dependencies.aws-credential-types]
 7198   9397   
path = "../aws-credential-types"
 7199   9398   
version = "1.2.4"
 7200   9399   
 7201   9400   
[dependencies.aws-runtime]
 7202   9401   
path = "../aws-runtime"
 7203   9402   
version = "1.5.9"
 7204   9403   
 7205   9404   
[dependencies.aws-smithy-async]
 7206   9405   
path = "../aws-smithy-async"
 7207   9406   
version = "1.2.5"
 7208   9407   
 7209   9408   
[dependencies.aws-smithy-http]
 7210   9409   
path = "../aws-smithy-http"
 7211         -
version = "0.62.2"
        9410  +
version = "0.62.3"
 7212   9411   
 7213   9412   
[dependencies.aws-smithy-json]
 7214   9413   
path = "../aws-smithy-json"
 7215   9414   
version = "0.61.4"
 7216   9415   
 7217   9416   
[dependencies.aws-smithy-runtime]
 7218   9417   
path = "../aws-smithy-runtime"
 7219   9418   
features = ["client"]
 7220   9419   
version = "1.8.5"
 7221   9420   
 7222   9421   
[dependencies.aws-smithy-runtime-api]
 7223   9422   
path = "../aws-smithy-runtime-api"
 7224   9423   
features = ["client", "http-02x"]
 7225   9424   
version = "1.8.5"
 7226   9425   
 7227   9426   
[dependencies.aws-smithy-types]
 7228   9427   
path = "../aws-smithy-types"
 7229   9428   
version = "1.3.2"
 7230   9429   
 7231   9430   
[dependencies.aws-types]
 7232   9431   
path = "../aws-types"
 7233   9432   
version = "1.3.8"
 7234   9433   
 7235   9434   
[dependencies.bytes]
 7236   9435   
version = "1.4.0"
 7237   9436   
 7238   9437   
[dependencies.fastrand]
 7239   9438   
version = "2.0.0"
 7240   9439   
 7241   9440   
[dependencies.http]
 7242   9441   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7243   9442   
index d397c58..2c1062b 100644
 7244         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
        9443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7245   9444   
@@ -1,61 +1,61 @@
 7246   9445   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7247   9446   
[package]
 7248   9447   
name = "aws-sdk-dynamodb"
 7249   9448   
version = "0.0.0-local"
 7250   9449   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7251   9450   
description = "AWS SDK for Amazon DynamoDB"
 7252   9451   
edition = "2021"
 7253   9452   
license = "Apache-2.0"
 7254   9453   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7255   9454   
rust-version = "1.86.0"
 7256   9455   
readme = "README.md"
 7257   9456   
[package.metadata.smithy]
 7258   9457   
codegen-version = "ci"
 7259   9458   
[package.metadata.docs.rs]
 7260   9459   
all-features = true
 7261   9460   
targets = ["x86_64-unknown-linux-gnu"]
 7262   9461   
[dependencies.aws-credential-types]
 7263   9462   
path = "../aws-credential-types"
 7264   9463   
version = "1.2.4"
 7265   9464   
 7266   9465   
[dependencies.aws-runtime]
 7267   9466   
path = "../aws-runtime"
 7268   9467   
version = "1.5.9"
 7269   9468   
 7270   9469   
[dependencies.aws-smithy-async]
 7271   9470   
path = "../aws-smithy-async"
 7272   9471   
version = "1.2.5"
 7273   9472   
 7274   9473   
[dependencies.aws-smithy-http]
 7275   9474   
path = "../aws-smithy-http"
 7276         -
version = "0.62.2"
        9475  +
version = "0.62.3"
 7277   9476   
 7278   9477   
[dependencies.aws-smithy-json]
 7279   9478   
path = "../aws-smithy-json"
 7280   9479   
version = "0.61.4"
 7281   9480   
 7282   9481   
[dependencies.aws-smithy-runtime]
 7283   9482   
path = "../aws-smithy-runtime"
 7284   9483   
features = ["client"]
 7285   9484   
version = "1.8.5"
 7286   9485   
 7287   9486   
[dependencies.aws-smithy-runtime-api]
 7288   9487   
path = "../aws-smithy-runtime-api"
 7289   9488   
features = ["client", "http-02x"]
 7290   9489   
version = "1.8.5"
 7291   9490   
 7292   9491   
[dependencies.aws-smithy-types]
 7293   9492   
path = "../aws-smithy-types"
 7294   9493   
version = "1.3.2"
 7295   9494   
 7296   9495   
[dependencies.aws-types]
 7297   9496   
path = "../aws-types"
 7298   9497   
version = "1.3.8"
 7299   9498   
 7300   9499   
[dependencies.bytes]
 7301   9500   
version = "1.4.0"
 7302   9501   
 7303   9502   
[dependencies.fastrand]
 7304   9503   
version = "2.0.0"
 7305   9504   
 7306   9505   
[dependencies.http]
 7307   9506   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7308   9507   
index c0ba315..46168af 100644
 7309         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
        9508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7310   9509   
@@ -1,61 +1,61 @@
 7311   9510   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7312   9511   
[package]
 7313   9512   
name = "aws-sdk-ec2"
 7314   9513   
version = "0.0.0-local"
 7315   9514   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7316   9515   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 7317   9516   
edition = "2021"
 7318   9517   
license = "Apache-2.0"
 7319   9518   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7320   9519   
rust-version = "1.86.0"
 7321   9520   
readme = "README.md"
 7322   9521   
[package.metadata.smithy]
 7323   9522   
codegen-version = "ci"
 7324   9523   
[package.metadata.docs.rs]
 7325   9524   
all-features = true
 7326   9525   
targets = ["x86_64-unknown-linux-gnu"]
 7327   9526   
[dependencies.aws-credential-types]
 7328   9527   
path = "../aws-credential-types"
 7329   9528   
version = "1.2.4"
 7330   9529   
 7331   9530   
[dependencies.aws-runtime]
 7332   9531   
path = "../aws-runtime"
 7333   9532   
version = "1.5.9"
 7334   9533   
 7335   9534   
[dependencies.aws-smithy-async]
 7336   9535   
path = "../aws-smithy-async"
 7337   9536   
version = "1.2.5"
 7338   9537   
 7339   9538   
[dependencies.aws-smithy-http]
 7340   9539   
path = "../aws-smithy-http"
 7341         -
version = "0.62.2"
        9540  +
version = "0.62.3"
 7342   9541   
 7343   9542   
[dependencies.aws-smithy-json]
 7344   9543   
path = "../aws-smithy-json"
 7345   9544   
version = "0.61.4"
 7346   9545   
 7347   9546   
[dependencies.aws-smithy-query]
 7348   9547   
path = "../aws-smithy-query"
 7349   9548   
version = "0.60.7"
 7350   9549   
 7351   9550   
[dependencies.aws-smithy-runtime]
 7352   9551   
path = "../aws-smithy-runtime"
 7353   9552   
features = ["client"]
 7354   9553   
version = "1.8.5"
 7355   9554   
 7356   9555   
[dependencies.aws-smithy-runtime-api]
 7357   9556   
path = "../aws-smithy-runtime-api"
 7358   9557   
features = ["client", "http-02x"]
 7359   9558   
version = "1.8.5"
 7360   9559   
 7361   9560   
[dependencies.aws-smithy-types]
 7362   9561   
path = "../aws-smithy-types"
 7363   9562   
version = "1.3.2"
 7364   9563   
 7365   9564   
[dependencies.aws-smithy-xml]
 7366   9565   
path = "../aws-smithy-xml"
 7367   9566   
version = "0.60.10"
 7368   9567   
 7369   9568   
[dependencies.aws-types]
 7370   9569   
path = "../aws-types"
 7371   9570   
version = "1.3.8"
 7372   9571   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7373   9572   
index 4474d17..095d40e 100644
 7374         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
        9573  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7375   9574   
@@ -1,61 +1,61 @@
 7376   9575   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7377   9576   
[package]
 7378   9577   
name = "aws-sdk-ecs"
 7379   9578   
version = "0.0.0-local"
 7380   9579   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7381   9580   
description = "AWS SDK for Amazon EC2 Container Service"
 7382   9581   
edition = "2021"
 7383   9582   
license = "Apache-2.0"
 7384   9583   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7385   9584   
rust-version = "1.86.0"
 7386   9585   
readme = "README.md"
 7387   9586   
[package.metadata.smithy]
 7388   9587   
codegen-version = "ci"
 7389   9588   
[package.metadata.docs.rs]
 7390   9589   
all-features = true
 7391   9590   
targets = ["x86_64-unknown-linux-gnu"]
 7392   9591   
[dependencies.aws-credential-types]
 7393   9592   
path = "../aws-credential-types"
 7394   9593   
version = "1.2.4"
 7395   9594   
 7396   9595   
[dependencies.aws-runtime]
 7397   9596   
path = "../aws-runtime"
 7398   9597   
version = "1.5.9"
 7399   9598   
 7400   9599   
[dependencies.aws-smithy-async]
 7401   9600   
path = "../aws-smithy-async"
 7402   9601   
version = "1.2.5"
 7403   9602   
 7404   9603   
[dependencies.aws-smithy-http]
 7405   9604   
path = "../aws-smithy-http"
 7406         -
version = "0.62.2"
        9605  +
version = "0.62.3"
 7407   9606   
 7408   9607   
[dependencies.aws-smithy-json]
 7409   9608   
path = "../aws-smithy-json"
 7410   9609   
version = "0.61.4"
 7411   9610   
 7412   9611   
[dependencies.aws-smithy-runtime]
 7413   9612   
path = "../aws-smithy-runtime"
 7414   9613   
features = ["client"]
 7415   9614   
version = "1.8.5"
 7416   9615   
 7417   9616   
[dependencies.aws-smithy-runtime-api]
 7418   9617   
path = "../aws-smithy-runtime-api"
 7419   9618   
features = ["client", "http-02x"]
 7420   9619   
version = "1.8.5"
 7421   9620   
 7422   9621   
[dependencies.aws-smithy-types]
 7423   9622   
path = "../aws-smithy-types"
 7424   9623   
version = "1.3.2"
 7425   9624   
 7426   9625   
[dependencies.aws-types]
 7427   9626   
path = "../aws-types"
 7428   9627   
version = "1.3.8"
 7429   9628   
 7430   9629   
[dependencies.bytes]
 7431   9630   
version = "1.4.0"
 7432   9631   
 7433   9632   
[dependencies.fastrand]
 7434   9633   
version = "2.0.0"
 7435   9634   
 7436   9635   
[dependencies.http]
 7437   9636   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7438   9637   
index 15b1d77..16d7d89 100644
 7439         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
        9638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7440   9639   
@@ -1,65 +1,65 @@
 7441   9640   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7442   9641   
[package]
 7443   9642   
name = "aws-sdk-glacier"
 7444   9643   
version = "0.0.0-local"
 7445   9644   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7446   9645   
description = "AWS SDK for Amazon Glacier"
 7447   9646   
edition = "2021"
 7448   9647   
license = "Apache-2.0"
 7449   9648   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7450   9649   
rust-version = "1.86.0"
 7451   9650   
readme = "README.md"
 7452   9651   
[package.metadata.smithy]
 7453   9652   
codegen-version = "ci"
 7454   9653   
[package.metadata.docs.rs]
 7455   9654   
all-features = true
 7456   9655   
targets = ["x86_64-unknown-linux-gnu"]
 7457   9656   
[dependencies.aws-credential-types]
 7458   9657   
path = "../aws-credential-types"
 7459   9658   
version = "1.2.4"
 7460   9659   
 7461   9660   
[dependencies.aws-runtime]
 7462   9661   
path = "../aws-runtime"
 7463   9662   
version = "1.5.9"
 7464   9663   
 7465   9664   
[dependencies.aws-sigv4]
 7466   9665   
path = "../aws-sigv4"
 7467         -
version = "1.3.3"
        9666  +
version = "1.3.4"
 7468   9667   
 7469   9668   
[dependencies.aws-smithy-async]
 7470   9669   
path = "../aws-smithy-async"
 7471   9670   
version = "1.2.5"
 7472   9671   
 7473   9672   
[dependencies.aws-smithy-http]
 7474   9673   
path = "../aws-smithy-http"
 7475         -
version = "0.62.2"
        9674  +
version = "0.62.3"
 7476   9675   
 7477   9676   
[dependencies.aws-smithy-json]
 7478   9677   
path = "../aws-smithy-json"
 7479   9678   
version = "0.61.4"
 7480   9679   
 7481   9680   
[dependencies.aws-smithy-runtime]
 7482   9681   
path = "../aws-smithy-runtime"
 7483   9682   
features = ["client"]
 7484   9683   
version = "1.8.5"
 7485   9684   
 7486   9685   
[dependencies.aws-smithy-runtime-api]
 7487   9686   
path = "../aws-smithy-runtime-api"
 7488   9687   
features = ["client", "http-02x"]
 7489   9688   
version = "1.8.5"
 7490   9689   
 7491   9690   
[dependencies.aws-smithy-types]
 7492   9691   
path = "../aws-smithy-types"
 7493   9692   
version = "1.3.2"
 7494   9693   
 7495   9694   
[dependencies.aws-types]
 7496   9695   
path = "../aws-types"
 7497   9696   
version = "1.3.8"
 7498   9697   
 7499   9698   
[dependencies.bytes]
 7500   9699   
version = "1.4.0"
 7501   9700   
 7502   9701   
[dependencies.fastrand]
 7503   9702   
version = "2.0.0"
 7504   9703   
 7505   9704   
[dependencies.hex]
 7506   9705   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7507   9706   
index d718a3a..65e6f24 100644
 7508         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
        9707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7509   9708   
@@ -1,61 +1,61 @@
 7510   9709   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7511   9710   
[package]
 7512   9711   
name = "aws-sdk-iam"
 7513   9712   
version = "0.0.0-local"
 7514   9713   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7515   9714   
description = "AWS SDK for AWS Identity and Access Management"
 7516   9715   
edition = "2021"
 7517   9716   
license = "Apache-2.0"
 7518   9717   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7519   9718   
rust-version = "1.86.0"
 7520   9719   
readme = "README.md"
 7521   9720   
[package.metadata.smithy]
 7522   9721   
codegen-version = "ci"
 7523   9722   
[package.metadata.docs.rs]
 7524   9723   
all-features = true
 7525   9724   
targets = ["x86_64-unknown-linux-gnu"]
 7526   9725   
[dependencies.aws-credential-types]
 7527   9726   
path = "../aws-credential-types"
 7528   9727   
version = "1.2.4"
 7529   9728   
 7530   9729   
[dependencies.aws-runtime]
 7531   9730   
path = "../aws-runtime"
 7532   9731   
version = "1.5.9"
 7533   9732   
 7534   9733   
[dependencies.aws-smithy-async]
 7535   9734   
path = "../aws-smithy-async"
 7536   9735   
version = "1.2.5"
 7537   9736   
 7538   9737   
[dependencies.aws-smithy-http]
 7539   9738   
path = "../aws-smithy-http"
 7540         -
version = "0.62.2"
        9739  +
version = "0.62.3"
 7541   9740   
 7542   9741   
[dependencies.aws-smithy-json]
 7543   9742   
path = "../aws-smithy-json"
 7544   9743   
version = "0.61.4"
 7545   9744   
 7546   9745   
[dependencies.aws-smithy-query]
 7547   9746   
path = "../aws-smithy-query"
 7548   9747   
version = "0.60.7"
 7549   9748   
 7550   9749   
[dependencies.aws-smithy-runtime]
 7551   9750   
path = "../aws-smithy-runtime"
 7552   9751   
features = ["client"]
 7553   9752   
version = "1.8.5"
 7554   9753   
 7555   9754   
[dependencies.aws-smithy-runtime-api]
 7556   9755   
path = "../aws-smithy-runtime-api"
 7557   9756   
features = ["client", "http-02x"]
 7558   9757   
version = "1.8.5"
 7559   9758   
 7560   9759   
[dependencies.aws-smithy-types]
 7561   9760   
path = "../aws-smithy-types"
 7562   9761   
version = "1.3.2"
 7563   9762   
 7564   9763   
[dependencies.aws-smithy-xml]
 7565   9764   
path = "../aws-smithy-xml"
 7566   9765   
version = "0.60.10"
 7567   9766   
 7568   9767   
[dependencies.aws-types]
 7569   9768   
path = "../aws-types"
 7570   9769   
version = "1.3.8"
 7571   9770   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7572   9771   
index 0ed4302..3d828a5 100644
 7573         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
        9772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7574   9773   
@@ -1,61 +1,61 @@
 7575   9774   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7576   9775   
[package]
 7577   9776   
name = "aws-sdk-kms"
 7578   9777   
version = "0.0.0-local"
 7579   9778   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7580   9779   
description = "AWS SDK for AWS Key Management Service"
 7581   9780   
edition = "2021"
 7582   9781   
license = "Apache-2.0"
 7583   9782   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7584   9783   
rust-version = "1.86.0"
 7585   9784   
readme = "README.md"
 7586   9785   
[package.metadata.smithy]
 7587   9786   
codegen-version = "ci"
 7588   9787   
[package.metadata.docs.rs]
 7589   9788   
all-features = true
 7590   9789   
targets = ["x86_64-unknown-linux-gnu"]
 7591   9790   
[dependencies.aws-credential-types]
 7592   9791   
path = "../aws-credential-types"
 7593   9792   
version = "1.2.4"
 7594   9793   
 7595   9794   
[dependencies.aws-runtime]
 7596   9795   
path = "../aws-runtime"
 7597   9796   
version = "1.5.9"
 7598   9797   
 7599   9798   
[dependencies.aws-smithy-async]
 7600   9799   
path = "../aws-smithy-async"
 7601   9800   
version = "1.2.5"
 7602   9801   
 7603   9802   
[dependencies.aws-smithy-http]
 7604   9803   
path = "../aws-smithy-http"
 7605         -
version = "0.62.2"
        9804  +
version = "0.62.3"
 7606   9805   
 7607   9806   
[dependencies.aws-smithy-json]
 7608   9807   
path = "../aws-smithy-json"
 7609   9808   
version = "0.61.4"
 7610   9809   
 7611   9810   
[dependencies.aws-smithy-runtime]
 7612   9811   
path = "../aws-smithy-runtime"
 7613   9812   
features = ["client"]
 7614   9813   
version = "1.8.5"
 7615   9814   
 7616   9815   
[dependencies.aws-smithy-runtime-api]
 7617   9816   
path = "../aws-smithy-runtime-api"
 7618   9817   
features = ["client", "http-02x"]
 7619   9818   
version = "1.8.5"
 7620   9819   
 7621   9820   
[dependencies.aws-smithy-types]
 7622   9821   
path = "../aws-smithy-types"
 7623   9822   
version = "1.3.2"
 7624   9823   
 7625   9824   
[dependencies.aws-types]
 7626   9825   
path = "../aws-types"
 7627   9826   
version = "1.3.8"
 7628   9827   
 7629   9828   
[dependencies.bytes]
 7630   9829   
version = "1.4.0"
 7631   9830   
 7632   9831   
[dependencies.fastrand]
 7633   9832   
version = "2.0.0"
 7634   9833   
 7635   9834   
[dependencies.http]
 7636   9835   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7637   9836   
index 6518dfc..6b94752 100644
 7638         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
        9837  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7639   9838   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 7640   9839   
edition = "2021"
 7641   9840   
license = "Apache-2.0"
 7642   9841   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7643   9842   
rust-version = "1.86.0"
 7644   9843   
readme = "README.md"
 7645   9844   
[package.metadata.smithy]
 7646   9845   
codegen-version = "ci"
 7647   9846   
[package.metadata.docs.rs]
 7648   9847   
all-features = true
 7649   9848   
targets = ["x86_64-unknown-linux-gnu"]
 7650   9849   
[dependencies.aws-credential-types]
 7651   9850   
path = "../aws-credential-types"
 7652   9851   
version = "1.2.4"
 7653   9852   
 7654   9853   
[dependencies.aws-runtime]
 7655   9854   
path = "../aws-runtime"
 7656   9855   
features = ["event-stream"]
 7657   9856   
version = "1.5.9"
 7658   9857   
 7659   9858   
[dependencies.aws-smithy-async]
 7660   9859   
path = "../aws-smithy-async"
 7661   9860   
version = "1.2.5"
 7662   9861   
 7663   9862   
[dependencies.aws-smithy-eventstream]
 7664   9863   
path = "../aws-smithy-eventstream"
 7665   9864   
version = "0.60.10"
 7666   9865   
 7667   9866   
[dependencies.aws-smithy-http]
 7668   9867   
path = "../aws-smithy-http"
 7669   9868   
features = ["event-stream"]
 7670         -
version = "0.62.2"
        9869  +
version = "0.62.3"
 7671   9870   
 7672   9871   
[dependencies.aws-smithy-json]
 7673   9872   
path = "../aws-smithy-json"
 7674   9873   
version = "0.61.4"
 7675   9874   
 7676   9875   
[dependencies.aws-smithy-runtime]
 7677   9876   
path = "../aws-smithy-runtime"
 7678   9877   
features = ["client"]
 7679   9878   
version = "1.8.5"
 7680   9879   
 7681   9880   
[dependencies.aws-smithy-runtime-api]
 7682   9881   
path = "../aws-smithy-runtime-api"
 7683   9882   
features = ["client", "http-02x"]
 7684   9883   
version = "1.8.5"
 7685   9884   
 7686   9885   
[dependencies.aws-smithy-types]
 7687   9886   
path = "../aws-smithy-types"
 7688   9887   
version = "1.3.2"
 7689   9888   
 7690   9889   
[dependencies.aws-types]
 7691   9890   
path = "../aws-types"
 7692   9891   
version = "1.3.8"
 7693   9892   
 7694   9893   
[dependencies.bytes]
 7695   9894   
version = "1.4.0"
 7696   9895   
 7697   9896   
[dependencies.fastrand]
 7698   9897   
version = "2.0.0"
 7699   9898   
 7700   9899   
[dependencies.http]
 7701   9900   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7702   9901   
index dabb0e0..34cbc15 100644
 7703         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
        9902  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7704   9903   
@@ -1,65 +1,65 @@
 7705   9904   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7706   9905   
[package]
 7707   9906   
name = "aws-sdk-polly"
 7708   9907   
version = "0.0.0-local"
 7709   9908   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7710   9909   
description = "AWS SDK for Amazon Polly"
 7711   9910   
edition = "2021"
 7712   9911   
license = "Apache-2.0"
 7713   9912   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7714   9913   
rust-version = "1.86.0"
 7715   9914   
readme = "README.md"
 7716   9915   
[package.metadata.smithy]
 7717   9916   
codegen-version = "ci"
 7718   9917   
[package.metadata.docs.rs]
 7719   9918   
all-features = true
 7720   9919   
targets = ["x86_64-unknown-linux-gnu"]
 7721   9920   
[dependencies.aws-credential-types]
 7722   9921   
path = "../aws-credential-types"
 7723   9922   
version = "1.2.4"
 7724   9923   
 7725   9924   
[dependencies.aws-runtime]
 7726   9925   
path = "../aws-runtime"
 7727   9926   
version = "1.5.9"
 7728   9927   
 7729   9928   
[dependencies.aws-sigv4]
 7730   9929   
path = "../aws-sigv4"
 7731         -
version = "1.3.3"
        9930  +
version = "1.3.4"
 7732   9931   
 7733   9932   
[dependencies.aws-smithy-async]
 7734   9933   
path = "../aws-smithy-async"
 7735   9934   
version = "1.2.5"
 7736   9935   
 7737   9936   
[dependencies.aws-smithy-http]
 7738   9937   
path = "../aws-smithy-http"
 7739         -
version = "0.62.2"
        9938  +
version = "0.62.3"
 7740   9939   
 7741   9940   
[dependencies.aws-smithy-json]
 7742   9941   
path = "../aws-smithy-json"
 7743   9942   
version = "0.61.4"
 7744   9943   
 7745   9944   
[dependencies.aws-smithy-runtime]
 7746   9945   
path = "../aws-smithy-runtime"
 7747   9946   
features = ["client"]
 7748   9947   
version = "1.8.5"
 7749   9948   
 7750   9949   
[dependencies.aws-smithy-runtime-api]
 7751   9950   
path = "../aws-smithy-runtime-api"
 7752   9951   
features = ["client", "http-02x"]
 7753   9952   
version = "1.8.5"
 7754   9953   
 7755   9954   
[dependencies.aws-smithy-types]
 7756   9955   
path = "../aws-smithy-types"
 7757   9956   
version = "1.3.2"
 7758   9957   
 7759   9958   
[dependencies.aws-types]
 7760   9959   
path = "../aws-types"
 7761   9960   
version = "1.3.8"
 7762   9961   
 7763   9962   
[dependencies.bytes]
 7764   9963   
version = "1.4.0"
 7765   9964   
 7766   9965   
[dependencies.fastrand]
 7767   9966   
version = "2.0.0"
 7768   9967   
 7769   9968   
[dependencies.http]
 7770   9969   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7771   9970   
index a884716..f3d8713 100644
 7772         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
        9971  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7773   9972   
@@ -1,61 +1,61 @@
 7774   9973   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7775   9974   
[package]
 7776   9975   
name = "aws-sdk-qldbsession"
 7777   9976   
version = "0.0.0-local"
 7778   9977   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7779   9978   
description = "AWS SDK for Amazon QLDB Session"
 7780   9979   
edition = "2021"
 7781   9980   
license = "Apache-2.0"
 7782   9981   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7783   9982   
rust-version = "1.86.0"
 7784   9983   
readme = "README.md"
 7785   9984   
[package.metadata.smithy]
 7786   9985   
codegen-version = "ci"
 7787   9986   
[package.metadata.docs.rs]
 7788   9987   
all-features = true
 7789   9988   
targets = ["x86_64-unknown-linux-gnu"]
 7790   9989   
[dependencies.aws-credential-types]
 7791   9990   
path = "../aws-credential-types"
 7792   9991   
version = "1.2.4"
 7793   9992   
 7794   9993   
[dependencies.aws-runtime]
 7795   9994   
path = "../aws-runtime"
 7796   9995   
version = "1.5.9"
 7797   9996   
 7798   9997   
[dependencies.aws-smithy-async]
 7799   9998   
path = "../aws-smithy-async"
 7800   9999   
version = "1.2.5"
 7801  10000   
 7802  10001   
[dependencies.aws-smithy-http]
 7803  10002   
path = "../aws-smithy-http"
 7804         -
version = "0.62.2"
       10003  +
version = "0.62.3"
 7805  10004   
 7806  10005   
[dependencies.aws-smithy-json]
 7807  10006   
path = "../aws-smithy-json"
 7808  10007   
version = "0.61.4"
 7809  10008   
 7810  10009   
[dependencies.aws-smithy-runtime]
 7811  10010   
path = "../aws-smithy-runtime"
 7812  10011   
features = ["client"]
 7813  10012   
version = "1.8.5"
 7814  10013   
 7815  10014   
[dependencies.aws-smithy-runtime-api]
 7816  10015   
path = "../aws-smithy-runtime-api"
 7817  10016   
features = ["client", "http-02x"]
 7818  10017   
version = "1.8.5"
 7819  10018   
 7820  10019   
[dependencies.aws-smithy-types]
 7821  10020   
path = "../aws-smithy-types"
 7822  10021   
version = "1.3.2"
 7823  10022   
 7824  10023   
[dependencies.aws-types]
 7825  10024   
path = "../aws-types"
 7826  10025   
version = "1.3.8"
 7827  10026   
 7828  10027   
[dependencies.bytes]
 7829  10028   
version = "1.4.0"
 7830  10029   
 7831  10030   
[dependencies.fastrand]
 7832  10031   
version = "2.0.0"
 7833  10032   
 7834  10033   
[dependencies.http]
 7835  10034   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7836  10035   
index 32a7dc9..a2c752d 100644
 7837         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
       10036  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7838  10037   
@@ -1,61 +1,61 @@
 7839  10038   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7840  10039   
[package]
 7841  10040   
name = "aws-sdk-route53"
 7842  10041   
version = "0.0.0-local"
 7843  10042   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7844  10043   
description = "AWS SDK for Amazon Route 53"
 7845  10044   
edition = "2021"
 7846  10045   
license = "Apache-2.0"
 7847  10046   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7848  10047   
rust-version = "1.86.0"
 7849  10048   
readme = "README.md"
 7850  10049   
[package.metadata.smithy]
 7851  10050   
codegen-version = "ci"
 7852  10051   
[package.metadata.docs.rs]
 7853  10052   
all-features = true
 7854  10053   
targets = ["x86_64-unknown-linux-gnu"]
 7855  10054   
[dependencies.aws-credential-types]
 7856  10055   
path = "../aws-credential-types"
 7857  10056   
version = "1.2.4"
 7858  10057   
 7859  10058   
[dependencies.aws-runtime]
 7860  10059   
path = "../aws-runtime"
 7861  10060   
version = "1.5.9"
 7862  10061   
 7863  10062   
[dependencies.aws-smithy-async]
 7864  10063   
path = "../aws-smithy-async"
 7865  10064   
version = "1.2.5"
 7866  10065   
 7867  10066   
[dependencies.aws-smithy-http]
 7868  10067   
path = "../aws-smithy-http"
 7869         -
version = "0.62.2"
       10068  +
version = "0.62.3"
 7870  10069   
 7871  10070   
[dependencies.aws-smithy-json]
 7872  10071   
path = "../aws-smithy-json"
 7873  10072   
version = "0.61.4"
 7874  10073   
 7875  10074   
[dependencies.aws-smithy-runtime]
 7876  10075   
path = "../aws-smithy-runtime"
 7877  10076   
features = ["client"]
 7878  10077   
version = "1.8.5"
 7879  10078   
 7880  10079   
[dependencies.aws-smithy-runtime-api]
 7881  10080   
path = "../aws-smithy-runtime-api"
 7882  10081   
features = ["client", "http-02x"]
 7883  10082   
version = "1.8.5"
 7884  10083   
 7885  10084   
[dependencies.aws-smithy-types]
 7886  10085   
path = "../aws-smithy-types"
 7887  10086   
version = "1.3.2"
 7888  10087   
 7889  10088   
[dependencies.aws-smithy-xml]
 7890  10089   
path = "../aws-smithy-xml"
 7891  10090   
version = "0.60.10"
 7892  10091   
 7893  10092   
[dependencies.aws-types]
 7894  10093   
path = "../aws-types"
 7895  10094   
version = "1.3.8"
 7896  10095   
 7897  10096   
[dependencies.fastrand]
 7898  10097   
version = "2.0.0"
 7899  10098   
 7900  10099   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7901  10100   
index f65e261..2f6bec0 100644
 7902         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       10101  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7903  10102   
@@ -1,75 +1,75 @@
 7904  10103   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7905  10104   
[package]
 7906  10105   
name = "aws-sdk-s3"
 7907  10106   
version = "0.0.0-local"
 7908  10107   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7909  10108   
description = "AWS SDK for Amazon Simple Storage Service"
 7910  10109   
edition = "2021"
 7911  10110   
license = "Apache-2.0"
 7912  10111   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7913  10112   
rust-version = "1.86.0"
 7914  10113   
readme = "README.md"
 7915  10114   
[package.metadata.smithy]
 7916  10115   
codegen-version = "ci"
 7917  10116   
[package.metadata.docs.rs]
 7918  10117   
all-features = true
 7919  10118   
targets = ["x86_64-unknown-linux-gnu"]
 7920  10119   
[dependencies.aws-credential-types]
 7921  10120   
path = "../aws-credential-types"
 7922  10121   
version = "1.2.4"
 7923  10122   
 7924  10123   
[dependencies.aws-runtime]
 7925  10124   
path = "../aws-runtime"
 7926  10125   
features = ["event-stream", "http-02x"]
 7927  10126   
version = "1.5.9"
 7928  10127   
 7929  10128   
[dependencies.aws-sigv4]
 7930  10129   
path = "../aws-sigv4"
 7931         -
version = "1.3.3"
       10130  +
version = "1.3.4"
 7932  10131   
 7933  10132   
[dependencies.aws-smithy-async]
 7934  10133   
path = "../aws-smithy-async"
 7935  10134   
version = "1.2.5"
 7936  10135   
 7937  10136   
[dependencies.aws-smithy-checksums]
 7938  10137   
path = "../aws-smithy-checksums"
 7939  10138   
version = "0.63.5"
 7940  10139   
 7941  10140   
[dependencies.aws-smithy-eventstream]
 7942  10141   
path = "../aws-smithy-eventstream"
 7943  10142   
version = "0.60.10"
 7944  10143   
 7945  10144   
[dependencies.aws-smithy-http]
 7946  10145   
path = "../aws-smithy-http"
 7947  10146   
features = ["event-stream"]
 7948         -
version = "0.62.2"
       10147  +
version = "0.62.3"
 7949  10148   
 7950  10149   
[dependencies.aws-smithy-json]
 7951  10150   
path = "../aws-smithy-json"
 7952  10151   
version = "0.61.4"
 7953  10152   
 7954  10153   
[dependencies.aws-smithy-runtime]
 7955  10154   
path = "../aws-smithy-runtime"
 7956  10155   
features = ["client"]
 7957  10156   
version = "1.8.5"
 7958  10157   
 7959  10158   
[dependencies.aws-smithy-runtime-api]
 7960  10159   
path = "../aws-smithy-runtime-api"
 7961  10160   
features = ["client", "http-02x"]
 7962  10161   
version = "1.8.5"
 7963  10162   
 7964  10163   
[dependencies.aws-smithy-types]
 7965  10164   
path = "../aws-smithy-types"
 7966  10165   
version = "1.3.2"
 7967  10166   
 7968  10167   
[dependencies.aws-smithy-xml]
 7969  10168   
path = "../aws-smithy-xml"
 7970  10169   
version = "0.60.10"
 7971  10170   
 7972  10171   
[dependencies.aws-types]
 7973  10172   
path = "../aws-types"
 7974  10173   
version = "1.3.8"
 7975  10174   
 7976  10175   
[dependencies.bytes]
 7977  10176   
version = "1.4.0"
 7978  10177   
 7979  10178   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7980  10179   
index b4d1cdd..861c0cc 100644
 7981         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       10180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7982  10181   
@@ -1,61 +1,61 @@
 7983  10182   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7984  10183   
[package]
 7985  10184   
name = "aws-sdk-s3control"
 7986  10185   
version = "0.0.0-local"
 7987  10186   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7988  10187   
description = "AWS SDK for AWS S3 Control"
 7989  10188   
edition = "2021"
 7990  10189   
license = "Apache-2.0"
 7991  10190   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7992  10191   
rust-version = "1.86.0"
 7993  10192   
readme = "README.md"
 7994  10193   
[package.metadata.smithy]
 7995  10194   
codegen-version = "ci"
 7996  10195   
[package.metadata.docs.rs]
 7997  10196   
all-features = true
 7998  10197   
targets = ["x86_64-unknown-linux-gnu"]
 7999  10198   
[dependencies.aws-credential-types]
 8000  10199   
path = "../aws-credential-types"
 8001  10200   
version = "1.2.4"
 8002  10201   
 8003  10202   
[dependencies.aws-runtime]
 8004  10203   
path = "../aws-runtime"
 8005  10204   
version = "1.5.9"
 8006  10205   
 8007  10206   
[dependencies.aws-smithy-async]
 8008  10207   
path = "../aws-smithy-async"
 8009  10208   
version = "1.2.5"
 8010  10209   
 8011  10210   
[dependencies.aws-smithy-http]
 8012  10211   
path = "../aws-smithy-http"
 8013         -
version = "0.62.2"
       10212  +
version = "0.62.3"
 8014  10213   
 8015  10214   
[dependencies.aws-smithy-json]
 8016  10215   
path = "../aws-smithy-json"
 8017  10216   
version = "0.61.4"
 8018  10217   
 8019  10218   
[dependencies.aws-smithy-runtime]
 8020  10219   
path = "../aws-smithy-runtime"
 8021  10220   
features = ["client"]
 8022  10221   
version = "1.8.5"
 8023  10222   
 8024  10223   
[dependencies.aws-smithy-runtime-api]
 8025  10224   
path = "../aws-smithy-runtime-api"
 8026  10225   
features = ["client", "http-02x"]
 8027  10226   
version = "1.8.5"
 8028  10227   
 8029  10228   
[dependencies.aws-smithy-types]
 8030  10229   
path = "../aws-smithy-types"
 8031  10230   
version = "1.3.2"
 8032  10231   
 8033  10232   
[dependencies.aws-smithy-xml]
 8034  10233   
path = "../aws-smithy-xml"
 8035  10234   
version = "0.60.10"
 8036  10235   
 8037  10236   
[dependencies.aws-types]
 8038  10237   
path = "../aws-types"
 8039  10238   
version = "1.3.8"
 8040  10239   
 8041  10240   
[dependencies.fastrand]
 8042  10241   
version = "2.0.0"
 8043  10242   
 8044  10243   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8045  10244   
index 2cde182..fc367f4 100644
 8046         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       10245  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8047  10246   
@@ -1,61 +1,61 @@
 8048  10247   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8049  10248   
[package]
 8050  10249   
name = "aws-sdk-sso"
 8051  10250   
version = "0.0.0-local"
 8052  10251   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8053  10252   
description = "AWS SDK for AWS Single Sign-On"
 8054  10253   
edition = "2021"
 8055  10254   
license = "Apache-2.0"
 8056  10255   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8057  10256   
rust-version = "1.86.0"
 8058  10257   
readme = "README.md"
 8059  10258   
[package.metadata.smithy]
 8060  10259   
codegen-version = "ci"
 8061  10260   
[package.metadata.docs.rs]
 8062  10261   
all-features = true
 8063  10262   
targets = ["x86_64-unknown-linux-gnu"]
 8064  10263   
[dependencies.aws-credential-types]
 8065  10264   
path = "../aws-credential-types"
 8066  10265   
version = "1.2.4"
 8067  10266   
 8068  10267   
[dependencies.aws-runtime]
 8069  10268   
path = "../aws-runtime"
 8070  10269   
version = "1.5.9"
 8071  10270   
 8072  10271   
[dependencies.aws-smithy-async]
 8073  10272   
path = "../aws-smithy-async"
 8074  10273   
version = "1.2.5"
 8075  10274   
 8076  10275   
[dependencies.aws-smithy-http]
 8077  10276   
path = "../aws-smithy-http"
 8078         -
version = "0.62.2"
       10277  +
version = "0.62.3"
 8079  10278   
 8080  10279   
[dependencies.aws-smithy-json]
 8081  10280   
path = "../aws-smithy-json"
 8082  10281   
version = "0.61.4"
 8083  10282   
 8084  10283   
[dependencies.aws-smithy-runtime]
 8085  10284   
path = "../aws-smithy-runtime"
 8086  10285   
features = ["client"]
 8087  10286   
version = "1.8.5"
 8088  10287   
 8089  10288   
[dependencies.aws-smithy-runtime-api]
 8090  10289   
path = "../aws-smithy-runtime-api"
 8091  10290   
features = ["client", "http-02x"]
 8092  10291   
version = "1.8.5"
 8093  10292   
 8094  10293   
[dependencies.aws-smithy-types]
 8095  10294   
path = "../aws-smithy-types"
 8096  10295   
version = "1.3.2"
 8097  10296   
 8098  10297   
[dependencies.aws-types]
 8099  10298   
path = "../aws-types"
 8100  10299   
version = "1.3.8"
 8101  10300   
 8102  10301   
[dependencies.bytes]
 8103  10302   
version = "1.4.0"
 8104  10303   
 8105  10304   
[dependencies.fastrand]
 8106  10305   
version = "2.0.0"
 8107  10306   
 8108  10307   
[dependencies.http]
 8109  10308   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8110  10309   
index 7a34c16..588d0bd 100644
 8111         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       10310  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8112  10311   
@@ -1,61 +1,61 @@
 8113  10312   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8114  10313   
[package]
 8115  10314   
name = "aws-sdk-ssooidc"
 8116  10315   
version = "0.0.0-local"
 8117  10316   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8118  10317   
description = "AWS SDK for AWS SSO OIDC"
 8119  10318   
edition = "2021"
 8120  10319   
license = "Apache-2.0"
 8121  10320   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8122  10321   
rust-version = "1.86.0"
 8123  10322   
readme = "README.md"
 8124  10323   
[package.metadata.smithy]
 8125  10324   
codegen-version = "ci"
 8126  10325   
[package.metadata.docs.rs]
 8127  10326   
all-features = true
 8128  10327   
targets = ["x86_64-unknown-linux-gnu"]
 8129  10328   
[dependencies.aws-credential-types]
 8130  10329   
path = "../aws-credential-types"
 8131  10330   
version = "1.2.4"
 8132  10331   
 8133  10332   
[dependencies.aws-runtime]
 8134  10333   
path = "../aws-runtime"
 8135  10334   
version = "1.5.9"
 8136  10335   
 8137  10336   
[dependencies.aws-smithy-async]
 8138  10337   
path = "../aws-smithy-async"
 8139  10338   
version = "1.2.5"
 8140  10339   
 8141  10340   
[dependencies.aws-smithy-http]
 8142  10341   
path = "../aws-smithy-http"
 8143         -
version = "0.62.2"
       10342  +
version = "0.62.3"
 8144  10343   
 8145  10344   
[dependencies.aws-smithy-json]
 8146  10345   
path = "../aws-smithy-json"
 8147  10346   
version = "0.61.4"
 8148  10347   
 8149  10348   
[dependencies.aws-smithy-runtime]
 8150  10349   
path = "../aws-smithy-runtime"
 8151  10350   
features = ["client"]
 8152  10351   
version = "1.8.5"
 8153  10352   
 8154  10353   
[dependencies.aws-smithy-runtime-api]
 8155  10354   
path = "../aws-smithy-runtime-api"
 8156  10355   
features = ["client", "http-02x"]
 8157  10356   
version = "1.8.5"
 8158  10357   
 8159  10358   
[dependencies.aws-smithy-types]
 8160  10359   
path = "../aws-smithy-types"
 8161  10360   
version = "1.3.2"
 8162  10361   
 8163  10362   
[dependencies.aws-types]
 8164  10363   
path = "../aws-types"
 8165  10364   
version = "1.3.8"
 8166  10365   
 8167  10366   
[dependencies.bytes]
 8168  10367   
version = "1.4.0"
 8169  10368   
 8170  10369   
[dependencies.fastrand]
 8171  10370   
version = "2.0.0"
 8172  10371   
 8173  10372   
[dependencies.http]
 8174  10373   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8175  10374   
index 895dfb3..f2ce34e 100644
 8176         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       10375  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8177  10376   
@@ -1,61 +1,61 @@
 8178  10377   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8179  10378   
[package]
 8180  10379   
name = "aws-sdk-sts"
 8181  10380   
version = "0.0.0-local"
 8182  10381   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8183  10382   
description = "AWS SDK for AWS Security Token Service"
 8184  10383   
edition = "2021"
 8185  10384   
license = "Apache-2.0"
 8186  10385   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8187  10386   
rust-version = "1.86.0"
 8188  10387   
readme = "README.md"
 8189  10388   
[package.metadata.smithy]
 8190  10389   
codegen-version = "ci"
 8191  10390   
[package.metadata.docs.rs]
 8192  10391   
all-features = true
 8193  10392   
targets = ["x86_64-unknown-linux-gnu"]
 8194  10393   
[dependencies.aws-credential-types]
 8195  10394   
path = "../aws-credential-types"
 8196  10395   
version = "1.2.4"
 8197  10396   
 8198  10397   
[dependencies.aws-runtime]
 8199  10398   
path = "../aws-runtime"
 8200  10399   
version = "1.5.9"
 8201  10400   
 8202  10401   
[dependencies.aws-smithy-async]
 8203  10402   
path = "../aws-smithy-async"
 8204  10403   
version = "1.2.5"
 8205  10404   
 8206  10405   
[dependencies.aws-smithy-http]
 8207  10406   
path = "../aws-smithy-http"
 8208         -
version = "0.62.2"
       10407  +
version = "0.62.3"
 8209  10408   
 8210  10409   
[dependencies.aws-smithy-json]
 8211  10410   
path = "../aws-smithy-json"
 8212  10411   
version = "0.61.4"
 8213  10412   
 8214  10413   
[dependencies.aws-smithy-query]
 8215  10414   
path = "../aws-smithy-query"
 8216  10415   
version = "0.60.7"
 8217  10416   
 8218  10417   
[dependencies.aws-smithy-runtime]
 8219  10418   
path = "../aws-smithy-runtime"
 8220  10419   
features = ["client"]
 8221  10420   
version = "1.8.5"
 8222  10421   
 8223  10422   
[dependencies.aws-smithy-runtime-api]
 8224  10423   
path = "../aws-smithy-runtime-api"
 8225  10424   
features = ["client", "http-02x"]
 8226  10425   
version = "1.8.5"
 8227  10426   
 8228  10427   
[dependencies.aws-smithy-types]
 8229  10428   
path = "../aws-smithy-types"
 8230  10429   
version = "1.3.2"
 8231  10430   
 8232  10431   
[dependencies.aws-smithy-xml]
 8233  10432   
path = "../aws-smithy-xml"
 8234  10433   
version = "0.60.10"
 8235  10434   
 8236  10435   
[dependencies.aws-types]
 8237  10436   
path = "../aws-types"
 8238  10437   
version = "1.3.8"
 8239  10438   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8240  10439   
index d556561..91178b6 100644
 8241         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       10440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8242  10441   
@@ -1,61 +1,61 @@
 8243  10442   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8244  10443   
[package]
 8245  10444   
name = "aws-sdk-timestreamquery"
 8246  10445   
version = "0.0.0-local"
 8247  10446   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8248  10447   
description = "AWS SDK for Amazon Timestream Query"
 8249  10448   
edition = "2021"
 8250  10449   
license = "Apache-2.0"
 8251  10450   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8252  10451   
rust-version = "1.86.0"
 8253  10452   
readme = "README.md"
 8254  10453   
[package.metadata.smithy]
 8255  10454   
codegen-version = "ci"
 8256  10455   
[package.metadata.docs.rs]
 8257  10456   
all-features = true
 8258  10457   
targets = ["x86_64-unknown-linux-gnu"]
 8259  10458   
[dependencies.aws-credential-types]
 8260  10459   
path = "../aws-credential-types"
 8261  10460   
version = "1.2.4"
 8262  10461   
 8263  10462   
[dependencies.aws-runtime]
 8264  10463   
path = "../aws-runtime"
 8265  10464   
version = "1.5.9"
 8266  10465   
 8267  10466   
[dependencies.aws-smithy-async]
 8268  10467   
path = "../aws-smithy-async"
 8269  10468   
version = "1.2.5"
 8270  10469   
 8271  10470   
[dependencies.aws-smithy-http]
 8272  10471   
path = "../aws-smithy-http"
 8273         -
version = "0.62.2"
       10472  +
version = "0.62.3"
 8274  10473   
 8275  10474   
[dependencies.aws-smithy-json]
 8276  10475   
path = "../aws-smithy-json"
 8277  10476   
version = "0.61.4"
 8278  10477   
 8279  10478   
[dependencies.aws-smithy-runtime]
 8280  10479   
path = "../aws-smithy-runtime"
 8281  10480   
features = ["client"]
 8282  10481   
version = "1.8.5"
 8283  10482   
 8284  10483   
[dependencies.aws-smithy-runtime-api]
 8285  10484   
path = "../aws-smithy-runtime-api"
 8286  10485   
features = ["client", "http-02x"]
 8287  10486   
version = "1.8.5"
 8288  10487   
 8289  10488   
[dependencies.aws-smithy-types]
 8290  10489   
path = "../aws-smithy-types"
 8291  10490   
version = "1.3.2"
 8292  10491   
 8293  10492   
[dependencies.aws-types]
 8294  10493   
path = "../aws-types"
 8295  10494   
version = "1.3.8"
 8296  10495   
 8297  10496   
[dependencies.bytes]
 8298  10497   
version = "1.4.0"
 8299  10498   
 8300  10499   
[dependencies.fastrand]
 8301  10500   
version = "2.0.0"
 8302  10501   
 8303  10502   
[dependencies.http]
 8304  10503   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8305  10504   
index 0c56e4c..95731e3 100644
 8306         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       10505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8307  10506   
@@ -1,61 +1,61 @@
 8308  10507   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8309  10508   
[package]
 8310  10509   
name = "aws-sdk-timestreamwrite"
 8311  10510   
version = "0.0.0-local"
 8312  10511   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8313  10512   
description = "AWS SDK for Amazon Timestream Write"
 8314  10513   
edition = "2021"
 8315  10514   
license = "Apache-2.0"
 8316  10515   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8317  10516   
rust-version = "1.86.0"
 8318  10517   
readme = "README.md"
 8319  10518   
[package.metadata.smithy]
 8320  10519   
codegen-version = "ci"
 8321  10520   
[package.metadata.docs.rs]
 8322  10521   
all-features = true
 8323  10522   
targets = ["x86_64-unknown-linux-gnu"]
 8324  10523   
[dependencies.aws-credential-types]
 8325  10524   
path = "../aws-credential-types"
 8326  10525   
version = "1.2.4"
 8327  10526   
 8328  10527   
[dependencies.aws-runtime]
 8329  10528   
path = "../aws-runtime"
 8330  10529   
version = "1.5.9"
 8331  10530   
 8332  10531   
[dependencies.aws-smithy-async]
 8333  10532   
path = "../aws-smithy-async"
 8334  10533   
version = "1.2.5"
 8335  10534   
 8336  10535   
[dependencies.aws-smithy-http]
 8337  10536   
path = "../aws-smithy-http"
 8338         -
version = "0.62.2"
       10537  +
version = "0.62.3"
 8339  10538   
 8340  10539   
[dependencies.aws-smithy-json]
 8341  10540   
path = "../aws-smithy-json"
 8342  10541   
version = "0.61.4"
 8343  10542   
 8344  10543   
[dependencies.aws-smithy-runtime]
 8345  10544   
path = "../aws-smithy-runtime"
 8346  10545   
features = ["client"]
 8347  10546   
version = "1.8.5"
 8348  10547   
 8349  10548   
[dependencies.aws-smithy-runtime-api]
 8350  10549   
path = "../aws-smithy-runtime-api"
 8351  10550   
features = ["client", "http-02x"]
 8352  10551   
version = "1.8.5"
 8353  10552   
 8354  10553   
[dependencies.aws-smithy-types]
 8355  10554   
path = "../aws-smithy-types"
 8356  10555   
version = "1.3.2"
 8357  10556   
 8358  10557   
[dependencies.aws-types]
 8359  10558   
path = "../aws-types"
 8360  10559   
version = "1.3.8"
 8361  10560   
 8362  10561   
[dependencies.bytes]
 8363  10562   
version = "1.4.0"
 8364  10563   
 8365  10564   
[dependencies.fastrand]
 8366  10565   
version = "2.0.0"
 8367  10566   
 8368  10567   
[dependencies.http]
 8369  10568   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8370  10569   
index 5b35037..9fb220a 100644
 8371         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       10570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8372  10571   
@@ -1,71 +1,71 @@
 8373  10572   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8374  10573   
[package]
 8375  10574   
name = "aws-sdk-transcribestreaming"
 8376  10575   
version = "0.0.0-local"
 8377  10576   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8378  10577   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 8379  10578   
edition = "2021"
 8380  10579   
license = "Apache-2.0"
 8381  10580   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8382  10581   
rust-version = "1.86.0"
 8383  10582   
readme = "README.md"
 8384  10583   
[package.metadata.smithy]
 8385  10584   
codegen-version = "ci"
 8386  10585   
[package.metadata.docs.rs]
 8387  10586   
all-features = true
 8388  10587   
targets = ["x86_64-unknown-linux-gnu"]
 8389  10588   
[dependencies.aws-credential-types]
 8390  10589   
path = "../aws-credential-types"
 8391  10590   
version = "1.2.4"
 8392  10591   
 8393  10592   
[dependencies.aws-runtime]
 8394  10593   
path = "../aws-runtime"
 8395  10594   
features = ["event-stream"]
 8396  10595   
version = "1.5.9"
 8397  10596   
 8398  10597   
[dependencies.aws-sigv4]
 8399  10598   
path = "../aws-sigv4"
 8400         -
version = "1.3.3"
       10599  +
version = "1.3.4"
 8401  10600   
 8402  10601   
[dependencies.aws-smithy-async]
 8403  10602   
path = "../aws-smithy-async"
 8404  10603   
version = "1.2.5"
 8405  10604   
 8406  10605   
[dependencies.aws-smithy-eventstream]
 8407  10606   
path = "../aws-smithy-eventstream"
 8408  10607   
version = "0.60.10"
 8409  10608   
 8410  10609   
[dependencies.aws-smithy-http]
 8411  10610   
path = "../aws-smithy-http"
 8412  10611   
features = ["event-stream"]
 8413         -
version = "0.62.2"
       10612  +
version = "0.62.3"
 8414  10613   
 8415  10614   
[dependencies.aws-smithy-json]
 8416  10615   
path = "../aws-smithy-json"
 8417  10616   
version = "0.61.4"
 8418  10617   
 8419  10618   
[dependencies.aws-smithy-runtime]
 8420  10619   
path = "../aws-smithy-runtime"
 8421  10620   
features = ["client"]
 8422  10621   
version = "1.8.5"
 8423  10622