AWS SDK

AWS SDK

rev. 3964b40d6806bc3f52bd311e2c791030c3325f2c (ignoring whitespace)

Files changed:

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

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

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

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

  317         -
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
  318    205   
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
  319    206   
deleted file mode 100644
  320    207   
index 89e572e..0000000
  321         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
         208  +
++ /dev/null
  322    209   
@@ -1 +0,0 @@
  323         -
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
  324    210   
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
  325    211   
deleted file mode 100644
  326    212   
index fcf23ce..0000000
  327         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
         213  +
++ /dev/null
  328    214   
@@ -1,4 +0,0 @@
  329         -
POST / HTTP/1.1
  330         -
Host:example.amazonaws.com
  331         -
X-Amz-Date:20150830T123600Z
  332         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
  333    215   
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
  334    216   
deleted file mode 100644
  335    217   
index a62589f..0000000
  336         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
         218  +
++ /dev/null
  337    219   
@@ -1 +0,0 @@
  338         -
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
  339    220   
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
  340    221   
deleted file mode 100644
  341    222   
index b4b78a1..0000000
  342         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
         223  +
++ /dev/null
  343    224   
@@ -1,5 +0,0 @@
  344         -
POST / HTTP/1.1
  345         -
Host:example.amazonaws.com
  346         -
My-Header1:value1
  347         -
X-Amz-Date:20150830T123600Z
  348         -
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
  349    225   
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
  350    226   
deleted file mode 100644
  351    227   
index d9e52a3..0000000
  352         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
         228  +
++ /dev/null
  353    229   
@@ -1 +0,0 @@
  354         -
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
  355    230   
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
  356    231   
deleted file mode 100644
  357    232   
index 99c3210..0000000
  358         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
         233  +
++ /dev/null
  359    234   
@@ -1,5 +0,0 @@
  360         -
POST / HTTP/1.1
  361         -
Host:example.amazonaws.com
  362         -
My-Header1:VALUE1
  363         -
X-Amz-Date:20150830T123600Z
  364         -
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
  365    235   
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
  366    236   
deleted file mode 100644
  367    237   
index 89e572e..0000000
  368         -
-- 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
         238  +
++ /dev/null
  369    239   
@@ -1 +0,0 @@
  370         -
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
  371    240   
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
  372    241   
deleted file mode 100644
  373    242   
index 64aa046..0000000
  374         -
-- 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
         243  +
++ /dev/null
  375    244   
@@ -1 +0,0 @@
  376         -
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
  377    245   
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
  378    246   
deleted file mode 100644
  379    247   
index cc34282..0000000
  380         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
         248  +
++ /dev/null
  381    249   
@@ -1,15 +0,0 @@
  382         -
A note about using temporary security credentials:
  383         -

  384         -
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).
  385         -

  386         -
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.
  387         -

  388         -
The test suite has 2 examples:
  389         -

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

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

  394         -
The test suite uses this example value for X-Amz-Security-Token:
  395         -

  396         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
  397    250   
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
  398    251   
deleted file mode 100644
  399    252   
index 44280cd..0000000
  400         -
-- 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
         253  +
++ /dev/null
  401    254   
@@ -1 +0,0 @@
  402         -
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
  403    255   
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
  404    256   
deleted file mode 100644
  405    257   
index 82af150..0000000
  406         -
-- 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
         258  +
++ /dev/null
  407    259   
@@ -1,4 +0,0 @@
  408         -
POST /?Param1=value1 HTTP/1.1
  409         -
Host:example.amazonaws.com
  410         -
X-Amz-Date:20150830T123600Z
  411         -
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
  412    260   
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
  413    261   
deleted file mode 100644
  414    262   
index 44280cd..0000000
  415         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
         263  +
++ /dev/null
  416    264   
@@ -1 +0,0 @@
  417         -
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
  418    265   
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
  419    266   
deleted file mode 100644
  420    267   
index 82af150..0000000
  421         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
         268  +
++ /dev/null
  422    269   
@@ -1,4 +0,0 @@
  423         -
POST /?Param1=value1 HTTP/1.1
  424         -
Host:example.amazonaws.com
  425         -
X-Amz-Date:20150830T123600Z
  426         -
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
  427    270   
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
  428    271   
deleted file mode 100644
  429    272   
index 89e572e..0000000
  430         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
         273  +
++ /dev/null
  431    274   
@@ -1 +0,0 @@
  432         -
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
  433    275   
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
  434    276   
deleted file mode 100644
  435    277   
index a5ada0d..0000000
  436         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
         278  +
++ /dev/null
  437    279   
@@ -1,4 +0,0 @@
  438         -
POST / HTTP/1.1
  439         -
Host:example.amazonaws.com
  440         -
X-Amz-Date:20150830T123600Z
  441         -
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
  442    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.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
  443    281   
deleted file mode 100644
  444    282   
index df90ca3..0000000
  445         -
-- 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
         283  +
++ /dev/null
  446    284   
@@ -1 +0,0 @@
  447         -
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
  448    285   
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
  449    286   
deleted file mode 100644
  450    287   
index 457b0d5..0000000
  451         -
-- 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
         288  +
++ /dev/null
  452    289   
@@ -1,9 +0,0 @@
  453         -
POST
  454         -
/
  455         -
Param1=value1
  456         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  457         -
host:example.amazonaws.com
  458         -
x-amz-date:20150830T123600Z
  459         -
  460         -
content-type;host;x-amz-date
  461         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  462    290   
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
  463    291   
deleted file mode 100644
  464    292   
index b8ecb89..0000000
  465         -
-- 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
         293  +
++ /dev/null
  466    294   
@@ -1,7 +0,0 @@
  467         -
POST / HTTP/1.1
  468         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  469         -
Host:example.amazonaws.com
  470         -
X-Amz-Date:20150830T123600Z
  471         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  472         -
  473         -
Param1=value1
              \
 No newline at end of file
  474    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.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
  475    296   
deleted file mode 100644
  476    297   
index 79077d2..0000000
  477         -
-- 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
         298  +
++ /dev/null
  478    299   
@@ -1 +0,0 @@
  479         -
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
  480    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.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
  481    301   
deleted file mode 100644
  482    302   
index 7852617..0000000
  483         -
-- 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
         303  +
++ /dev/null
  484    304   
@@ -1,4 +0,0 @@
  485         -
POST / HTTP/1.1
  486         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  487         -
Host:example.amazonaws.com
  488         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  489    305   
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
  490    306   
deleted file mode 100644
  491    307   
index 3e2e571..0000000
  492         -
-- 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
         308  +
++ /dev/null
  493    309   
@@ -1,4 +0,0 @@
  494         -
POST / HTTP/1.1
  495         -
Host:example.amazonaws.com
  496         -
X-Amz-Date:20150830T123600Z
  497         -
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
  498    310   
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
  499    311   
deleted file mode 100644
  500    312   
index 89ceae8..0000000
  501         -
-- 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
         313  +
++ /dev/null
  502    314   
@@ -1,4 +0,0 @@
  503         -
AWS4-HMAC-SHA256
  504         -
20150830T123600Z
  505         -
20150830/us-east-1/service/aws4_request
  506         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  507    315   
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
  508    316   
deleted file mode 100755
  509    317   
index d645695..0000000
  510         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
         318  +
++ /dev/null
  511    319   
@@ -1,202 +0,0 @@
  512         -
  513         -
                                 Apache License
  514         -
                           Version 2.0, January 2004
  515         -
                        http://www.apache.org/licenses/
  516         -
  517         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  518         -
  519         -
   1. Definitions.
  520         -
  521         -
      "License" shall mean the terms and conditions for use, reproduction,
  522         -
      and distribution as defined by Sections 1 through 9 of this document.
  523         -
  524         -
      "Licensor" shall mean the copyright owner or entity authorized by
  525         -
      the copyright owner that is granting the License.
  526         -
  527         -
      "Legal Entity" shall mean the union of the acting entity and all
  528         -
      other entities that control, are controlled by, or are under common
  529         -
      control with that entity. For the purposes of this definition,
  530         -
      "control" means (i) the power, direct or indirect, to cause the
  531         -
      direction or management of such entity, whether by contract or
  532         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  533         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  534         -
  535         -
      "You" (or "Your") shall mean an individual or Legal Entity
  536         -
      exercising permissions granted by this License.
  537         -
  538         -
      "Source" form shall mean the preferred form for making modifications,
  539         -
      including but not limited to software source code, documentation
  540         -
      source, and configuration files.
  541         -
  542         -
      "Object" form shall mean any form resulting from mechanical
  543         -
      transformation or translation of a Source form, including but
  544         -
      not limited to compiled object code, generated documentation,
  545         -
      and conversions to other media types.
  546         -
  547         -
      "Work" shall mean the work of authorship, whether in Source or
  548         -
      Object form, made available under the License, as indicated by a
  549         -
      copyright notice that is included in or attached to the work
  550         -
      (an example is provided in the Appendix below).
  551         -
  552         -
      "Derivative Works" shall mean any work, whether in Source or Object
  553         -
      form, that is based on (or derived from) the Work and for which the
  554         -
      editorial revisions, annotations, elaborations, or other modifications
  555         -
      represent, as a whole, an original work of authorship. For the purposes
  556         -
      of this License, Derivative Works shall not include works that remain
  557         -
      separable from, or merely link (or bind by name) to the interfaces of,
  558         -
      the Work and Derivative Works thereof.
  559         -
  560         -
      "Contribution" shall mean any work of authorship, including
  561         -
      the original version of the Work and any modifications or additions
  562         -
      to that Work or Derivative Works thereof, that is intentionally
  563         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  564         -
      or by an individual or Legal Entity authorized to submit on behalf of
  565         -
      the copyright owner. For the purposes of this definition, "submitted"
  566         -
      means any form of electronic, verbal, or written communication sent
  567         -
      to the Licensor or its representatives, including but not limited to
  568         -
      communication on electronic mailing lists, source code control systems,
  569         -
      and issue tracking systems that are managed by, or on behalf of, the
  570         -
      Licensor for the purpose of discussing and improving the Work, but
  571         -
      excluding communication that is conspicuously marked or otherwise
  572         -
      designated in writing by the copyright owner as "Not a Contribution."
  573         -
  574         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  575         -
      on behalf of whom a Contribution has been received by Licensor and
  576         -
      subsequently incorporated within the Work.
  577         -
  578         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  579         -
      this License, each Contributor hereby grants to You a perpetual,
  580         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  581         -
      copyright license to reproduce, prepare Derivative Works of,
  582         -
      publicly display, publicly perform, sublicense, and distribute the
  583         -
      Work and such Derivative Works in Source or Object form.
  584         -
  585         -
   3. Grant of Patent License. Subject to the terms and conditions of
  586         -
      this License, each Contributor hereby grants to You a perpetual,
  587         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  588         -
      (except as stated in this section) patent license to make, have made,
  589         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  590         -
      where such license applies only to those patent claims licensable
  591         -
      by such Contributor that are necessarily infringed by their
  592         -
      Contribution(s) alone or by combination of their Contribution(s)
  593         -
      with the Work to which such Contribution(s) was submitted. If You
  594         -
      institute patent litigation against any entity (including a
  595         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  596         -
      or a Contribution incorporated within the Work constitutes direct
  597         -
      or contributory patent infringement, then any patent licenses
  598         -
      granted to You under this License for that Work shall terminate
  599         -
      as of the date such litigation is filed.
  600         -
  601         -
   4. Redistribution. You may reproduce and distribute copies of the
  602         -
      Work or Derivative Works thereof in any medium, with or without
  603         -
      modifications, and in Source or Object form, provided that You
  604         -
      meet the following conditions:
  605         -
  606         -
      (a) You must give any other recipients of the Work or
  607         -
          Derivative Works a copy of this License; and
  608         -
  609         -
      (b) You must cause any modified files to carry prominent notices
  610         -
          stating that You changed the files; and
  611         -
  612         -
      (c) You must retain, in the Source form of any Derivative Works
  613         -
          that You distribute, all copyright, patent, trademark, and
  614         -
          attribution notices from the Source form of the Work,
  615         -
          excluding those notices that do not pertain to any part of
  616         -
          the Derivative Works; and
  617         -
  618         -
      (d) If the Work includes a "NOTICE" text file as part of its
  619         -
          distribution, then any Derivative Works that You distribute must
  620         -
          include a readable copy of the attribution notices contained
  621         -
          within such NOTICE file, excluding those notices that do not
  622         -
          pertain to any part of the Derivative Works, in at least one
  623         -
          of the following places: within a NOTICE text file distributed
  624         -
          as part of the Derivative Works; within the Source form or
  625         -
          documentation, if provided along with the Derivative Works; or,
  626         -
          within a display generated by the Derivative Works, if and
  627         -
          wherever such third-party notices normally appear. The contents
  628         -
          of the NOTICE file are for informational purposes only and
  629         -
          do not modify the License. You may add Your own attribution
  630         -
          notices within Derivative Works that You distribute, alongside
  631         -
          or as an addendum to the NOTICE text from the Work, provided
  632         -
          that such additional attribution notices cannot be construed
  633         -
          as modifying the License.
  634         -
  635         -
      You may add Your own copyright statement to Your modifications and
  636         -
      may provide additional or different license terms and conditions
  637         -
      for use, reproduction, or distribution of Your modifications, or
  638         -
      for any such Derivative Works as a whole, provided Your use,
  639         -
      reproduction, and distribution of the Work otherwise complies with
  640         -
      the conditions stated in this License.
  641         -
  642         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  643         -
      any Contribution intentionally submitted for inclusion in the Work
  644         -
      by You to the Licensor shall be under the terms and conditions of
  645         -
      this License, without any additional terms or conditions.
  646         -
      Notwithstanding the above, nothing herein shall supersede or modify
  647         -
      the terms of any separate license agreement you may have executed
  648         -
      with Licensor regarding such Contributions.
  649         -
  650         -
   6. Trademarks. This License does not grant permission to use the trade
  651         -
      names, trademarks, service marks, or product names of the Licensor,
  652         -
      except as required for reasonable and customary use in describing the
  653         -
      origin of the Work and reproducing the content of the NOTICE file.
  654         -
  655         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  656         -
      agreed to in writing, Licensor provides the Work (and each
  657         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  658         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  659         -
      implied, including, without limitation, any warranties or conditions
  660         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  661         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  662         -
      appropriateness of using or redistributing the Work and assume any
  663         -
      risks associated with Your exercise of permissions under this License.
  664         -
  665         -
   8. Limitation of Liability. In no event and under no legal theory,
  666         -
      whether in tort (including negligence), contract, or otherwise,
  667         -
      unless required by applicable law (such as deliberate and grossly
  668         -
      negligent acts) or agreed to in writing, shall any Contributor be
  669         -
      liable to You for damages, including any direct, indirect, special,
  670         -
      incidental, or consequential damages of any character arising as a
  671         -
      result of this License or out of the use or inability to use the
  672         -
      Work (including but not limited to damages for loss of goodwill,
  673         -
      work stoppage, computer failure or malfunction, or any and all
  674         -
      other commercial damages or losses), even if such Contributor
  675         -
      has been advised of the possibility of such damages.
  676         -
  677         -
   9. Accepting Warranty or Additional Liability. While redistributing
  678         -
      the Work or Derivative Works thereof, You may choose to offer,
  679         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  680         -
      or other liability obligations and/or rights consistent with this
  681         -
      License. However, in accepting such obligations, You may act only
  682         -
      on Your own behalf and on Your sole responsibility, not on behalf
  683         -
      of any other Contributor, and only if You agree to indemnify,
  684         -
      defend, and hold each Contributor harmless for any liability
  685         -
      incurred by, or claims asserted against, such Contributor by reason
  686         -
      of your accepting any such warranty or additional liability.
  687         -
  688         -
   END OF TERMS AND CONDITIONS
  689         -
  690         -
   APPENDIX: How to apply the Apache License to your work.
  691         -
  692         -
      To apply the Apache License to your work, attach the following
  693         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  694         -
      replaced with your own identifying information. (Don't include
  695         -
      the brackets!)  The text should be enclosed in the appropriate
  696         -
      comment syntax for the file format. We also recommend that a
  697         -
      file or class name and description of purpose be included on the
  698         -
      same "printed page" as the copyright notice for easier
  699         -
      identification within third-party archives.
  700         -
  701         -
   Copyright [yyyy] [name of copyright owner]
  702         -
  703         -
   Licensed under the Apache License, Version 2.0 (the "License");
  704         -
   you may not use this file except in compliance with the License.
  705         -
   You may obtain a copy of the License at
  706         -
  707         -
       http://www.apache.org/licenses/LICENSE-2.0
  708         -
  709         -
   Unless required by applicable law or agreed to in writing, software
  710         -
   distributed under the License is distributed on an "AS IS" BASIS,
  711         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  712         -
   See the License for the specific language governing permissions and
  713         -
   limitations under the License.
  714    320   
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
  715    321   
deleted file mode 100755
  716    322   
index d85f69e..0000000
  717         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         323  +
++ /dev/null
  718    324   
@@ -1,2 +0,0 @@
  719         -
AWS Signature Version 4a Test Suite
  720         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  721    325   
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
  722    326   
deleted file mode 100644
  723    327   
index c716622..0000000
  724         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         328  +
++ /dev/null
  725    329   
@@ -1,24 +0,0 @@
  726         -
Where did the files in this directory come from?
  727         -
================================================
  728         -
  729         -
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.
  730         -
  731         -
Signature Version 4A Test Suite
  732         -
------------------------------
  733         -
  734         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  735         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  736         -
  737         -
Each test group contains several files that you can use to validate most of the tasks described in
  738         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  739         -
  740         -
- context.json - Credentials and signer options to use when signing test requests
  741         -
- request.txt - The web request to be signed.
  742         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  743         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  744         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  745         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  746         -
  747         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  748         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  749         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  750    330   
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
  751    331   
deleted file mode 100644
  752    332   
index 45771c7..0000000
  753         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         333  +
++ /dev/null
  754    334   
@@ -1,12 +0,0 @@
  755         -
{
  756         -
    "credentials": {
  757         -
        "access_key_id": "AKIDEXAMPLE",
  758         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  759         -
    },
  760         -
    "expiration_in_seconds": 3600,
  761         -
    "normalize": true,
  762         -
    "region": "us-east-1",
  763         -
    "service": "service",
  764         -
    "sign_body": false,
  765         -
    "timestamp": "2015-08-30T12:36:00Z"
  766         -
}
  767    335   
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
  768    336   
deleted file mode 100644
  769    337   
index 45771c7..0000000
  770         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         338  +
++ /dev/null
  771    339   
@@ -1,12 +0,0 @@
  772         -
{
  773         -
    "credentials": {
  774         -
        "access_key_id": "AKIDEXAMPLE",
  775         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  776         -
    },
  777         -
    "expiration_in_seconds": 3600,
  778         -
    "normalize": true,
  779         -
    "region": "us-east-1",
  780         -
    "service": "service",
  781         -
    "sign_body": false,
  782         -
    "timestamp": "2015-08-30T12:36:00Z"
  783         -
}
  784    340   
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
  785    341   
deleted file mode 100644
  786    342   
index 45771c7..0000000
  787         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         343  +
++ /dev/null
  788    344   
@@ -1,12 +0,0 @@
  789         -
{
  790         -
    "credentials": {
  791         -
        "access_key_id": "AKIDEXAMPLE",
  792         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  793         -
    },
  794         -
    "expiration_in_seconds": 3600,
  795         -
    "normalize": true,
  796         -
    "region": "us-east-1",
  797         -
    "service": "service",
  798         -
    "sign_body": false,
  799         -
    "timestamp": "2015-08-30T12:36:00Z"
  800         -
}
  801    345   
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
  802    346   
deleted file mode 100644
  803    347   
index 45771c7..0000000
  804         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         348  +
++ /dev/null
  805    349   
@@ -1,12 +0,0 @@
  806         -
{
  807         -
    "credentials": {
  808         -
        "access_key_id": "AKIDEXAMPLE",
  809         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  810         -
    },
  811         -
    "expiration_in_seconds": 3600,
  812         -
    "normalize": true,
  813         -
    "region": "us-east-1",
  814         -
    "service": "service",
  815         -
    "sign_body": false,
  816         -
    "timestamp": "2015-08-30T12:36:00Z"
  817         -
}
  818    350   
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
  819    351   
deleted file mode 100644
  820    352   
index afe367b..0000000
  821         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         353  +
++ /dev/null
  822    354   
@@ -1,12 +0,0 @@
  823         -
{
  824         -
    "credentials": {
  825         -
        "access_key_id": "AKIDEXAMPLE",
  826         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  827         -
    },
  828         -
    "expiration_in_seconds": 3600,
  829         -
    "normalize": false,
  830         -
    "region": "us-east-1",
  831         -
    "service": "service",
  832         -
    "sign_body": false,
  833         -
    "timestamp": "2015-08-30T12:36:00Z"
  834         -
}
  835    355   
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
  836    356   
deleted file mode 100644
  837    357   
index 45771c7..0000000
  838         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         358  +
++ /dev/null
  839    359   
@@ -1,12 +0,0 @@
  840         -
{
  841         -
    "credentials": {
  842         -
        "access_key_id": "AKIDEXAMPLE",
  843         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  844         -
    },
  845         -
    "expiration_in_seconds": 3600,
  846         -
    "normalize": true,
  847         -
    "region": "us-east-1",
  848         -
    "service": "service",
  849         -
    "sign_body": false,
  850         -
    "timestamp": "2015-08-30T12:36:00Z"
  851         -
}
  852    360   
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
  853    361   
deleted file mode 100644
  854    362   
index afe367b..0000000
  855         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         363  +
++ /dev/null
  856    364   
@@ -1,12 +0,0 @@
  857         -
{
  858         -
    "credentials": {
  859         -
        "access_key_id": "AKIDEXAMPLE",
  860         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  861         -
    },
  862         -
    "expiration_in_seconds": 3600,
  863         -
    "normalize": false,
  864         -
    "region": "us-east-1",
  865         -
    "service": "service",
  866         -
    "sign_body": false,
  867         -
    "timestamp": "2015-08-30T12:36:00Z"
  868         -
}
  869    365   
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
  870    366   
deleted file mode 100644
  871    367   
index 45771c7..0000000
  872         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         368  +
++ /dev/null
  873    369   
@@ -1,12 +0,0 @@
  874         -
{
  875         -
    "credentials": {
  876         -
        "access_key_id": "AKIDEXAMPLE",
  877         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  878         -
    },
  879         -
    "expiration_in_seconds": 3600,
  880         -
    "normalize": true,
  881         -
    "region": "us-east-1",
  882         -
    "service": "service",
  883         -
    "sign_body": false,
  884         -
    "timestamp": "2015-08-30T12:36:00Z"
  885         -
}
  886    370   
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
  887    371   
deleted file mode 100644
  888    372   
index 45771c7..0000000
  889         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         373  +
++ /dev/null
  890    374   
@@ -1,12 +0,0 @@
  891         -
{
  892         -
    "credentials": {
  893         -
        "access_key_id": "AKIDEXAMPLE",
  894         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  895         -
    },
  896         -
    "expiration_in_seconds": 3600,
  897         -
    "normalize": true,
  898         -
    "region": "us-east-1",
  899         -
    "service": "service",
  900         -
    "sign_body": false,
  901         -
    "timestamp": "2015-08-30T12:36:00Z"
  902         -
}
  903    375   
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
  904    376   
deleted file mode 100644
  905    377   
index 45771c7..0000000
  906         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         378  +
++ /dev/null
  907    379   
@@ -1,12 +0,0 @@
  908         -
{
  909         -
    "credentials": {
  910         -
        "access_key_id": "AKIDEXAMPLE",
  911         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  912         -
    },
  913         -
    "expiration_in_seconds": 3600,
  914         -
    "normalize": true,
  915         -
    "region": "us-east-1",
  916         -
    "service": "service",
  917         -
    "sign_body": false,
  918         -
    "timestamp": "2015-08-30T12:36:00Z"
  919         -
}
  920    380   
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
  921    381   
deleted file mode 100644
  922    382   
index 45771c7..0000000
  923         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         383  +
++ /dev/null
  924    384   
@@ -1,12 +0,0 @@
  925         -
{
  926         -
    "credentials": {
  927         -
        "access_key_id": "AKIDEXAMPLE",
  928         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  929         -
    },
  930         -
    "expiration_in_seconds": 3600,
  931         -
    "normalize": true,
  932         -
    "region": "us-east-1",
  933         -
    "service": "service",
  934         -
    "sign_body": false,
  935         -
    "timestamp": "2015-08-30T12:36:00Z"
  936         -
}
  937    385   
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
  938    386   
deleted file mode 100644
  939    387   
index 45771c7..0000000
  940         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         388  +
++ /dev/null
  941    389   
@@ -1,12 +0,0 @@
  942         -
{
  943         -
    "credentials": {
  944         -
        "access_key_id": "AKIDEXAMPLE",
  945         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  946         -
    },
  947         -
    "expiration_in_seconds": 3600,
  948         -
    "normalize": true,
  949         -
    "region": "us-east-1",
  950         -
    "service": "service",
  951         -
    "sign_body": false,
  952         -
    "timestamp": "2015-08-30T12:36:00Z"
  953         -
}
  954    390   
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
  955    391   
deleted file mode 100644
  956    392   
index 47e7128..0000000
  957         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         393  +
++ /dev/null
  958    394   
@@ -1,9 +0,0 @@
  959         -
GET
  960         -
/
  961         -
  962         -
host:example.amazonaws.com
  963         -
x-amz-date:20150830T123600Z
  964         -
x-amz-region-set:us-east-1
  965         -
  966         -
host;x-amz-date;x-amz-region-set
  967         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  968    395   
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
  969    396   
deleted file mode 100644
  970    397   
index 95d7219..0000000
  971         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         398  +
++ /dev/null
  972    399   
@@ -1,4 +0,0 @@
  973         -
AWS4-ECDSA-P256-SHA256
  974         -
20150830T123600Z
  975         -
20150830/service/aws4_request
  976         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  977    400   
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
  978    401   
deleted file mode 100644
  979    402   
index a34ea26..0000000
  980         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         403  +
++ /dev/null
  981    404   
@@ -1,7 +0,0 @@
  982         -
GET
  983         -
/
  984         -
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
  985         -
host:example.amazonaws.com
  986         -
  987         -
host
  988         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  989    405   
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
  990    406   
deleted file mode 100644
  991    407   
index 48f855c..0000000
  992         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         408  +
++ /dev/null
  993    409   
@@ -1,4 +0,0 @@
  994         -
AWS4-ECDSA-P256-SHA256
  995         -
20150830T123600Z
  996         -
20150830/service/aws4_request
  997         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  998    410   
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
  999    411   
deleted file mode 100644
 1000    412   
index 45771c7..0000000
 1001         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         413  +
++ /dev/null
 1002    414   
@@ -1,12 +0,0 @@
 1003         -
{
 1004         -
    "credentials": {
 1005         -
        "access_key_id": "AKIDEXAMPLE",
 1006         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1007         -
    },
 1008         -
    "expiration_in_seconds": 3600,
 1009         -
    "normalize": true,
 1010         -
    "region": "us-east-1",
 1011         -
    "service": "service",
 1012         -
    "sign_body": false,
 1013         -
    "timestamp": "2015-08-30T12:36:00Z"
 1014         -
}
 1015    415   
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
 1016    416   
deleted file mode 100644
 1017    417   
index 47e7128..0000000
 1018         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         418  +
++ /dev/null
 1019    419   
@@ -1,9 +0,0 @@
 1020         -
GET
 1021         -
/
 1022         -
 1023         -
host:example.amazonaws.com
 1024         -
x-amz-date:20150830T123600Z
 1025         -
x-amz-region-set:us-east-1
 1026         -
 1027         -
host;x-amz-date;x-amz-region-set
 1028         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
 1029    420   
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
 1030    421   
deleted file mode 100644
 1031    422   
index 95d7219..0000000
 1032         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         423  +
++ /dev/null
 1033    424   
@@ -1,4 +0,0 @@
 1034         -
AWS4-ECDSA-P256-SHA256
 1035         -
20150830T123600Z
 1036         -
20150830/service/aws4_request
 1037         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
 1038    425   
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
 1039    426   
deleted file mode 100644
 1040    427   
index a34ea26..0000000
 1041         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         428  +
++ /dev/null
 1042    429   
@@ -1,7 +0,0 @@
 1043         -
GET
 1044         -
/
 1045         -
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
 1046         -
host:example.amazonaws.com
 1047         -
 1048         -
host
 1049         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
 1050    430   
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
 1051    431   
deleted file mode 100644
 1052    432   
index 48f855c..0000000
 1053         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         433  +
++ /dev/null
 1054    434   
@@ -1,4 +0,0 @@
 1055         -
AWS4-ECDSA-P256-SHA256
 1056         -
20150830T123600Z
 1057         -
20150830/service/aws4_request
 1058         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
 1059    435   
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
 1060    436   
deleted file mode 100644
 1061    437   
index 45771c7..0000000
 1062         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         438  +
++ /dev/null
 1063    439   
@@ -1,12 +0,0 @@
 1064         -
{
 1065         -
    "credentials": {
 1066         -
        "access_key_id": "AKIDEXAMPLE",
 1067         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1068         -
    },
 1069         -
    "expiration_in_seconds": 3600,
 1070         -
    "normalize": true,
 1071         -
    "region": "us-east-1",
 1072         -
    "service": "service",
 1073         -
    "sign_body": false,
 1074         -
    "timestamp": "2015-08-30T12:36:00Z"
 1075         -
}
 1076    440   
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
 1077    441   
deleted file mode 100644
 1078    442   
index 45771c7..0000000
 1079         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         443  +
++ /dev/null
 1080    444   
@@ -1,12 +0,0 @@
 1081         -
{
 1082         -
    "credentials": {
 1083         -
        "access_key_id": "AKIDEXAMPLE",
 1084         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1085         -
    },
 1086         -
    "expiration_in_seconds": 3600,
 1087         -
    "normalize": true,
 1088         -
    "region": "us-east-1",
 1089         -
    "service": "service",
 1090         -
    "sign_body": false,
 1091         -
    "timestamp": "2015-08-30T12:36:00Z"
 1092         -
}
 1093    445   
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
 1094    446   
deleted file mode 100644
 1095    447   
index 45771c7..0000000
 1096         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         448  +
++ /dev/null
 1097    449   
@@ -1,12 +0,0 @@
 1098         -
{
 1099         -
    "credentials": {
 1100         -
        "access_key_id": "AKIDEXAMPLE",
 1101         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1102         -
    },
 1103         -
    "expiration_in_seconds": 3600,
 1104         -
    "normalize": true,
 1105         -
    "region": "us-east-1",
 1106         -
    "service": "service",
 1107         -
    "sign_body": false,
 1108         -
    "timestamp": "2015-08-30T12:36:00Z"
 1109         -
}
 1110    450   
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
 1111    451   
deleted file mode 100644
 1112    452   
index 45771c7..0000000
 1113         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         453  +
++ /dev/null
 1114    454   
@@ -1,12 +0,0 @@
 1115         -
{
 1116         -
    "credentials": {
 1117         -
        "access_key_id": "AKIDEXAMPLE",
 1118         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1119         -
    },
 1120         -
    "expiration_in_seconds": 3600,
 1121         -
    "normalize": true,
 1122         -
    "region": "us-east-1",
 1123         -
    "service": "service",
 1124         -
    "sign_body": false,
 1125         -
    "timestamp": "2015-08-30T12:36:00Z"
 1126         -
}
 1127    455   
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
 1128    456   
deleted file mode 100644
 1129    457   
index 45771c7..0000000
 1130         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         458  +
++ /dev/null
 1131    459   
@@ -1,12 +0,0 @@
 1132         -
{
 1133         -
    "credentials": {
 1134         -
        "access_key_id": "AKIDEXAMPLE",
 1135         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1136         -
    },
 1137         -
    "expiration_in_seconds": 3600,
 1138         -
    "normalize": true,
 1139         -
    "region": "us-east-1",
 1140         -
    "service": "service",
 1141         -
    "sign_body": false,
 1142         -
    "timestamp": "2015-08-30T12:36:00Z"
 1143         -
}
 1144    460   
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
 1145    461   
deleted file mode 100644
 1146    462   
index 45771c7..0000000
 1147         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         463  +
++ /dev/null
 1148    464   
@@ -1,12 +0,0 @@
 1149         -
{
 1150         -
    "credentials": {
 1151         -
        "access_key_id": "AKIDEXAMPLE",
 1152         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1153         -
    },
 1154         -
    "expiration_in_seconds": 3600,
 1155         -
    "normalize": true,
 1156         -
    "region": "us-east-1",
 1157         -
    "service": "service",
 1158         -
    "sign_body": false,
 1159         -
    "timestamp": "2015-08-30T12:36:00Z"
 1160         -
}
 1161    465   
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
 1162    466   
deleted file mode 100644
 1163    467   
index b6fdecf..0000000
 1164         -
-- 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
         468  +
++ /dev/null
 1165    469   
@@ -1,4 +0,0 @@
 1166         -
AWS4-ECDSA-P256-SHA256
 1167         -
20150830T123600Z
 1168         -
20150830/service/aws4_request
 1169         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1170    470   
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
 1171    471   
deleted file mode 100644
 1172    472   
index a300bea..0000000
 1173         -
-- 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
         473  +
++ /dev/null
 1174    474   
@@ -1,4 +0,0 @@
 1175         -
AWS4-ECDSA-P256-SHA256
 1176         -
20150830T123600Z
 1177         -
20150830/service/aws4_request
 1178         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
 1179    475   
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
 1180    476   
deleted file mode 100644
 1181    477   
index b6fdecf..0000000
 1182         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         478  +
++ /dev/null
 1183    479   
@@ -1,4 +0,0 @@
 1184         -
AWS4-ECDSA-P256-SHA256
 1185         -
20150830T123600Z
 1186         -
20150830/service/aws4_request
 1187         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1188    480   
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
 1189    481   
new file mode 100644
 1190    482   
index 0000000..a674243
 1191         -
-- /dev/null
         483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
 1192    484   
@@ -0,0 +1,7 @@
         485  +
# AWS SigV4 and SigV4A Signing Test Suite
         486  +
         487  +
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).
         488  +
         489  +
We added the following changes:
         490  +
         491  +
* 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
 1193    492   
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
 1194    493   
similarity index 100%
 1195    494   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
 1196    495   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
 1197    496   
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
 1198    497   
similarity index 100%
 1199    498   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
 1200    499   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
 1201    500   
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
 1202    501   
similarity index 100%
 1203    502   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
 1204    503   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
 1205    504   
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
 1206    505   
similarity index 100%
 1207    506   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
 1208    507   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
 1209    508   
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
 1210    509   
similarity index 100%
 1211    510   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
 1212    511   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
 1213    512   
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
 1214    513   
similarity index 100%
 1215    514   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
 1216    515   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
 1217    516   
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
 1218    517   
similarity index 100%
 1219    518   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
 1220    519   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
 1221    520   
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
 1222    521   
similarity index 99%
 1223    522   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
 1224    523   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1225    524   
index 45771c7..0468d80 100644
 1226    525   
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
 1227    526   
similarity index 100%
 1228    527   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
 1229    528   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1230    529   
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
 1231    530   
new file mode 100644
 1232    531   
index 0000000..7fc5d7a
 1233         -
-- /dev/null
         532  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1234    533   
@@ -0,0 +1 @@
         534  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
 1235    535   
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
 1236    536   
new file mode 100644
 1237    537   
index 0000000..36a1205
 1238         -
-- /dev/null
         538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1239    539   
@@ -0,0 +1,8 @@
         540  +
GET / HTTP/1.1
         541  +
Host:example.amazonaws.com
         542  +
My-Header1:value2
         543  +
My-Header1:value2
         544  +
My-Header1:value1
         545  +
X-Amz-Date:20150830T123600Z
         546  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         547  +
 1240    548   
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
 1241    549   
similarity index 100%
 1242    550   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
 1243    551   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1244    552   
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
 1245    553   
new file mode 100644
 1246    554   
index 0000000..f9f4190
 1247         -
-- /dev/null
         555  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1248    556   
@@ -0,0 +1,8 @@
         557  +
GET
         558  +
/
         559  +
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
         560  +
host:example.amazonaws.com
         561  +
my-header1:value2,value2,value1
         562  +
         563  +
host;my-header1
         564  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1249    565   
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
 1250    566   
new file mode 100644
 1251    567   
index 0000000..5d0d87f
 1252         -
-- /dev/null
         568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1253    569   
@@ -0,0 +1 @@
         570  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1254    571   
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
 1255    572   
new file mode 100644
 1256    573   
index 0000000..c1dfcf4
 1257         -
-- /dev/null
         574  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1258    575   
@@ -0,0 +1,6 @@
         576  +
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
         577  +
Host:example.amazonaws.com
         578  +
My-Header1:value2
         579  +
My-Header1:value2
         580  +
My-Header1:value1
         581  +
 1259    582   
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
 1260    583   
similarity index 53%
 1261    584   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1262    585   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1263    586   
index 0a3350a..077c1bb 100644
 1264         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         587  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1265    588   
@@ -1,4 +1,4 @@
 1266    589   
AWS4-HMAC-SHA256
 1267    590   
20150830T123600Z
 1268    591   
20150830/us-east-1/service/aws4_request
 1269         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         592  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1270    593   
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
 1271    594   
similarity index 100%
 1272    595   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1273    596   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1274    597   
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
 1275    598   
similarity index 99%
 1276    599   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1277    600   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1278    601   
index 45771c7..0468d80 100644
 1279    602   
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
 1280    603   
similarity index 82%
 1281    604   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1282    605   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1283    606   
index 721a39f..8cb5476 100644
 1284         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         607  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1285    608   
@@ -1,9 +1,9 @@
 1286    609   
GET
 1287    610   
/
 1288    611   
 1289    612   
host:example.amazonaws.com
 1290         -
my-header1:value1,value2,value3
         613  +
my-header1:value1 value2 value3
 1291    614   
x-amz-date:20150830T123600Z
 1292    615   
 1293    616   
host;my-header1;x-amz-date
 1294    617   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1295    618   
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
 1296    619   
new file mode 100644
 1297    620   
index 0000000..e6ff7a9
 1298         -
-- /dev/null
         621  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1299    622   
@@ -0,0 +1 @@
         623  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1300    624   
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
 1301    625   
new file mode 100644
 1302    626   
index 0000000..b5ef6a0
 1303         -
-- /dev/null
         627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1304    628   
@@ -0,0 +1,8 @@
         629  +
GET / HTTP/1.1
         630  +
Host:example.amazonaws.com
         631  +
My-Header1:value1
         632  +
  value2
         633  +
     value3
         634  +
X-Amz-Date:20150830T123600Z
         635  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         636  +
 1305    637   
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
 1306    638   
similarity index 53%
 1307    639   
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
 1308    640   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1309    641   
index fd43a41..97c7430 100644
 1310         -
-- 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
         642  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1311    643   
@@ -1,4 +1,4 @@
 1312    644   
AWS4-HMAC-SHA256
 1313    645   
20150830T123600Z
 1314    646   
20150830/us-east-1/service/aws4_request
 1315         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         647  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1316    648   
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
 1317    649   
new file mode 100644
 1318    650   
index 0000000..aac46de
 1319         -
-- /dev/null
         651  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1320    652   
@@ -0,0 +1,8 @@
         653  +
GET
         654  +
/
         655  +
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
         656  +
host:example.amazonaws.com
         657  +
my-header1:value1 value2 value3
         658  +
         659  +
host;my-header1
         660  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1321    661   
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
 1322    662   
new file mode 100644
 1323    663   
index 0000000..205732d
 1324         -
-- /dev/null
         664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1325    665   
@@ -0,0 +1 @@
         666  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1326    667   
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
 1327    668   
new file mode 100644
 1328    669   
index 0000000..a891b87
 1329         -
-- /dev/null
         670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1330    671   
@@ -0,0 +1,6 @@
         672  +
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
         673  +
Host:example.amazonaws.com
         674  +
My-Header1:value1
         675  +
  value2
         676  +
     value3
         677  +
 1331    678   
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
 1332    679   
similarity index 53%
 1333    680   
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
 1334    681   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1335    682   
index 90e66b8..ec3fe45 100644
 1336         -
-- 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
         683  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1337    684   
@@ -1,4 +1,4 @@
 1338    685   
AWS4-HMAC-SHA256
 1339    686   
20150830T123600Z
 1340    687   
20150830/us-east-1/service/aws4_request
 1341         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         688  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1342    689   
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
 1343    690   
similarity index 75%
 1344    691   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1345    692   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1346    693   
index 7caa6ac..b5026cd 100644
 1347         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         694  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1348    695   
@@ -1,6 +1,5 @@
 1349    696   
GET / HTTP/1.1
 1350    697   
Host:example.amazonaws.com
 1351    698   
My-Header1:value1
 1352    699   
  value2
 1353    700   
     value3
 1354         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1355    701   
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
 1356    702   
similarity index 99%
 1357    703   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1358    704   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1359    705   
index 45771c7..0468d80 100644
 1360    706   
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
 1361    707   
similarity index 100%
 1362    708   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1363    709   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1364    710   
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
 1365    711   
new file mode 100644
 1366    712   
index 0000000..8ef0494
 1367         -
-- /dev/null
         713  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1368    714   
@@ -0,0 +1 @@
         715  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1369    716   
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
 1370    717   
new file mode 100644
 1371    718   
index 0000000..b786dc9
 1372         -
-- /dev/null
         719  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1373    720   
@@ -0,0 +1,9 @@
         721  +
GET / HTTP/1.1
         722  +
Host:example.amazonaws.com
         723  +
My-Header1:value4
         724  +
My-Header1:value1
         725  +
My-Header1:value3
         726  +
My-Header1:value2
         727  +
X-Amz-Date:20150830T123600Z
         728  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         729  +
 1374    730   
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
 1375    731   
similarity index 100%
 1376    732   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1377    733   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1378    734   
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
 1379    735   
new file mode 100644
 1380    736   
index 0000000..a211cc5
 1381         -
-- /dev/null
         737  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1382    738   
@@ -0,0 +1,8 @@
         739  +
GET
         740  +
/
         741  +
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
         742  +
host:example.amazonaws.com
         743  +
my-header1:value4,value1,value3,value2
         744  +
         745  +
host;my-header1
         746  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1383    747   
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
 1384    748   
new file mode 100644
 1385    749   
index 0000000..417b0fa
 1386         -
-- /dev/null
         750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1387    751   
@@ -0,0 +1 @@
         752  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1388    753   
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
 1389    754   
new file mode 100644
 1390    755   
index 0000000..b615e5d
 1391         -
-- /dev/null
         756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1392    757   
@@ -0,0 +1,7 @@
         758  +
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
         759  +
Host:example.amazonaws.com
         760  +
My-Header1:value4
         761  +
My-Header1:value1
         762  +
My-Header1:value3
         763  +
My-Header1:value2
         764  +
 1393    765   
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
 1394    766   
similarity index 53%
 1395    767   
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
 1396    768   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1397    769   
index f7e615e..dcaaa1b 100644
 1398         -
-- 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
         770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1399    771   
@@ -1,4 +1,4 @@
 1400    772   
AWS4-HMAC-SHA256
 1401    773   
20150830T123600Z
 1402    774   
20150830/us-east-1/service/aws4_request
 1403         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         775  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1404    776   
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
 1405    777   
similarity index 100%
 1406    778   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1407    779   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1408    780   
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
 1409    781   
similarity index 99%
 1410    782   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1411    783   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1412    784   
index 45771c7..0468d80 100644
 1413    785   
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
 1414    786   
similarity index 100%
 1415    787   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1416    788   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1417    789   
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
 1418    790   
new file mode 100644
 1419    791   
index 0000000..36081a9
 1420         -
-- /dev/null
         792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1421    793   
@@ -0,0 +1 @@
         794  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1422    795   
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
 1423    796   
new file mode 100644
 1424    797   
index 0000000..6331d16
 1425         -
-- /dev/null
         798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1426    799   
@@ -0,0 +1,7 @@
         800  +
GET / HTTP/1.1
         801  +
Host:example.amazonaws.com
         802  +
My-Header1: value1
         803  +
My-Header2: "a   b   c"
         804  +
X-Amz-Date:20150830T123600Z
         805  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         806  +
 1427    807   
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
 1428    808   
similarity index 100%
 1429    809   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1430    810   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1431    811   
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
 1432    812   
new file mode 100644
 1433    813   
index 0000000..125c1f9
 1434         -
-- /dev/null
         814  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1435    815   
@@ -0,0 +1,9 @@
         816  +
GET
         817  +
/
         818  +
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
         819  +
host:example.amazonaws.com
         820  +
my-header1:value1
         821  +
my-header2:"a b c"
         822  +
         823  +
host;my-header1;my-header2
         824  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1436    825   
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
 1437    826   
new file mode 100644
 1438    827   
index 0000000..17007a8
 1439         -
-- /dev/null
         828  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1440    829   
@@ -0,0 +1 @@
         830  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1441    831   
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
 1442    832   
new file mode 100644
 1443    833   
index 0000000..e519fd9
 1444         -
-- /dev/null
         834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1445    835   
@@ -0,0 +1,5 @@
         836  +
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
         837  +
Host:example.amazonaws.com
         838  +
My-Header1: value1
         839  +
My-Header2: "a   b   c"
         840  +
 1446    841   
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
 1447    842   
new file mode 100644
 1448    843   
index 0000000..6b4b781
 1449         -
-- /dev/null
         844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1450    845   
@@ -0,0 +1,4 @@
         846  +
AWS4-HMAC-SHA256
         847  +
20150830T123600Z
         848  +
20150830/us-east-1/service/aws4_request
         849  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1451    850   
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
 1452    851   
similarity index 100%
 1453    852   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1454    853   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1455    854   
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
 1456    855   
new file mode 100644
 1457    856   
index 0000000..0468d80
 1458         -
-- /dev/null
         857  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1459    858   
@@ -0,0 +1,12 @@
         859  +
{
         860  +
    "credentials": {
         861  +
        "access_key_id": "AKIDEXAMPLE",
         862  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         863  +
    },
         864  +
    "expiration_in_seconds": 3600,
         865  +
    "normalize": true,
         866  +
    "region": "us-east-1",
         867  +
    "service": "service",
         868  +
    "sign_body": false,
         869  +
    "timestamp": "2015-08-30T12:36:00Z"
         870  +
}
              \
 No newline at end of file
 1460    871   
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
 1461    872   
similarity index 100%
 1462    873   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1463    874   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1464    875   
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
 1465    876   
new file mode 100644
 1466    877   
index 0000000..87f295f
 1467         -
-- /dev/null
         878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1468    879   
@@ -0,0 +1 @@
         880  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1469    881   
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
 1470    882   
new file mode 100644
 1471    883   
index 0000000..0de8327
 1472         -
-- /dev/null
         884  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1473    885   
@@ -0,0 +1,5 @@
         886  +
GET /example/.. HTTP/1.1
         887  +
Host:example.amazonaws.com
         888  +
X-Amz-Date:20150830T123600Z
         889  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         890  +
 1474    891   
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
 1475    892   
similarity index 100%
 1476    893   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1477    894   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1478    895   
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
 1479    896   
new file mode 100644
 1480    897   
index 0000000..fb2420d
 1481         -
-- /dev/null
         898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1482    899   
@@ -0,0 +1,7 @@
         900  +
GET
         901  +
/
         902  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
         903  +
host:example.amazonaws.com
         904  +
         905  +
host
         906  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1483    907   
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
 1484    908   
new file mode 100644
 1485    909   
index 0000000..da5c905
 1486         -
-- /dev/null
         910  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1487    911   
@@ -0,0 +1 @@
         912  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1488    913   
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
 1489    914   
new file mode 100644
 1490    915   
index 0000000..4329c98
 1491         -
-- /dev/null
         916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1492    917   
@@ -0,0 +1,3 @@
         918  +
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
         919  +
Host:example.amazonaws.com
         920  +
 1493    921   
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
 1494    922   
new file mode 100644
 1495    923   
index 0000000..d837e67
 1496         -
-- /dev/null
         924  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1497    925   
@@ -0,0 +1,4 @@
         926  +
AWS4-HMAC-SHA256
         927  +
20150830T123600Z
         928  +
20150830/us-east-1/service/aws4_request
         929  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1498    930   
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
 1499    931   
similarity index 100%
 1500    932   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1501    933   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1502    934   
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
 1503    935   
new file mode 100644
 1504    936   
index 0000000..0468d80
 1505         -
-- /dev/null
         937  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1506    938   
@@ -0,0 +1,12 @@
         939  +
{
         940  +
    "credentials": {
         941  +
        "access_key_id": "AKIDEXAMPLE",
         942  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         943  +
    },
         944  +
    "expiration_in_seconds": 3600,
         945  +
    "normalize": true,
         946  +
    "region": "us-east-1",
         947  +
    "service": "service",
         948  +
    "sign_body": false,
         949  +
    "timestamp": "2015-08-30T12:36:00Z"
         950  +
}
              \
 No newline at end of file
 1507    951   
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
 1508    952   
similarity index 100%
 1509    953   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1510    954   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1511    955   
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
 1512    956   
new file mode 100644
 1513    957   
index 0000000..87f295f
 1514         -
-- /dev/null
         958  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1515    959   
@@ -0,0 +1 @@
         960  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1516    961   
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
 1517    962   
new file mode 100644
 1518    963   
index 0000000..f9b3815
 1519         -
-- /dev/null
         964  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1520    965   
@@ -0,0 +1,5 @@
         966  +
GET /example1/example2/../.. HTTP/1.1
         967  +
Host:example.amazonaws.com
         968  +
X-Amz-Date:20150830T123600Z
         969  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         970  +
 1521    971   
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
 1522    972   
similarity index 100%
 1523    973   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1524    974   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1525    975   
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
 1526    976   
new file mode 100644
 1527    977   
index 0000000..fb2420d
 1528         -
-- /dev/null
         978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1529    979   
@@ -0,0 +1,7 @@
         980  +
GET
         981  +
/
         982  +
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
         983  +
host:example.amazonaws.com
         984  +
         985  +
host
         986  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1530    987   
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
 1531    988   
new file mode 100644
 1532    989   
index 0000000..da5c905
 1533         -
-- /dev/null
         990  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1534    991   
@@ -0,0 +1 @@
         992  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1535    993   
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
 1536    994   
new file mode 100644
 1537    995   
index 0000000..b2988b7
 1538         -
-- /dev/null
         996  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1539    997   
@@ -0,0 +1,3 @@
         998  +
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
         999  +
Host:example.amazonaws.com
        1000  +
 1540   1001   
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
 1541   1002   
new file mode 100644
 1542   1003   
index 0000000..d837e67
 1543         -
-- /dev/null
        1004  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1544   1005   
@@ -0,0 +1,4 @@
        1006  +
AWS4-HMAC-SHA256
        1007  +
20150830T123600Z
        1008  +
20150830/us-east-1/service/aws4_request
        1009  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1545   1010   
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
 1546   1011   
similarity index 100%
 1547   1012   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1548   1013   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1549   1014   
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
 1550   1015   
similarity index 99%
 1551   1016   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1552   1017   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1553   1018   
index afe367b..7bee5c7 100644
 1554   1019   
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
 1555   1020   
similarity index 82%
 1556   1021   
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
 1557   1022   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1558   1023   
index 36c3cdf..6919c44 100644
 1559         -
-- 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
        1024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1560   1025   
@@ -1,8 +1,8 @@
 1561   1026   
GET
 1562         -
/
 1563         -
Param1=Value1&Param1=value2
        1027  +
/example1/example2/../..
        1028  +
 1564   1029   
host:example.amazonaws.com
 1565   1030   
x-amz-date:20150830T123600Z
 1566   1031   
 1567   1032   
host;x-amz-date
 1568   1033   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1569   1034   
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
 1570   1035   
new file mode 100644
 1571   1036   
index 0000000..4092d83
 1572         -
-- /dev/null
        1037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1573   1038   
@@ -0,0 +1 @@
        1039  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1574   1040   
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
 1575   1041   
new file mode 100644
 1576   1042   
index 0000000..e731b35
 1577         -
-- /dev/null
        1043  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1578   1044   
@@ -0,0 +1,5 @@
        1045  +
GET /example1/example2/../.. HTTP/1.1
        1046  +
Host:example.amazonaws.com
        1047  +
X-Amz-Date:20150830T123600Z
        1048  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
        1049  +
 1579   1050   
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
 1580   1051   
new file mode 100644
 1581   1052   
index 0000000..4f45752
 1582         -
-- /dev/null
        1053  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1583   1054   
@@ -0,0 +1,4 @@
        1055  +
AWS4-HMAC-SHA256
        1056  +
20150830T123600Z
        1057  +
20150830/us-east-1/service/aws4_request
        1058  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1584   1059   
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
 1585   1060   
new file mode 100644
 1586   1061   
index 0000000..e1fb07d
 1587         -
-- /dev/null
        1062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1588   1063   
@@ -0,0 +1,7 @@
        1064  +
GET
        1065  +
/example1/example2/../..
        1066  +
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
        1067  +
host:example.amazonaws.com
        1068  +
        1069  +
host
        1070  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1589   1071   
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
 1590   1072   
new file mode 100644
 1591   1073   
index 0000000..8ac31d7
 1592         -
-- /dev/null
        1074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1593   1075   
@@ -0,0 +1 @@
        1076  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1594   1077   
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
 1595   1078   
new file mode 100644
 1596   1079   
index 0000000..ac074f9
 1597         -
-- /dev/null
        1080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1598   1081   
@@ -0,0 +1,3 @@
        1082  +
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
        1083  +
Host:example.amazonaws.com
        1084  +
 1599   1085   
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
 1600   1086   
new file mode 100644
 1601   1087   
index 0000000..8dcb6ff
 1602         -
-- /dev/null
        1088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1603   1089   
@@ -0,0 +1,4 @@
        1090  +
AWS4-HMAC-SHA256
        1091  +
20150830T123600Z
        1092  +
20150830/us-east-1/service/aws4_request
        1093  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1604   1094   
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
 1605   1095   
similarity index 100%
 1606   1096   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1607   1097   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1608   1098   
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
 1609   1099   
similarity index 99%
 1610   1100   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1611   1101   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1612   1102   
index afe367b..7bee5c7 100644
 1613   1103   
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
 1614   1104   
similarity index 82%
 1615   1105   
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
 1616   1106   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1617   1107   
index 26898eb..f640bc2 100644
 1618         -
-- 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
        1108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1619   1109   
@@ -1,8 +1,8 @@
 1620   1110   
GET
 1621         -
/
 1622         -
Param1=value1&Param1=value2
        1111  +
/example/..
        1112  +
 1623   1113   
host:example.amazonaws.com
 1624   1114   
x-amz-date:20150830T123600Z
 1625   1115   
 1626   1116   
host;x-amz-date
 1627   1117   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1628   1118   
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
 1629   1119   
new file mode 100644
 1630   1120   
index 0000000..d957303
 1631         -
-- /dev/null
        1121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1632   1122   
@@ -0,0 +1 @@
        1123  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1633   1124   
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
 1634   1125   
new file mode 100644
 1635   1126   
index 0000000..4f42ffc
 1636         -
-- /dev/null
        1127  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1637   1128   
@@ -0,0 +1,5 @@
        1129  +
GET /example/.. HTTP/1.1
        1130  +
Host:example.amazonaws.com
        1131  +
X-Amz-Date:20150830T123600Z
        1132  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
        1133  +
 1638   1134   
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
 1639   1135   
new file mode 100644
 1640   1136   
index 0000000..ca54bda
 1641         -
-- /dev/null
        1137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1642   1138   
@@ -0,0 +1,4 @@
        1139  +
AWS4-HMAC-SHA256
        1140  +
20150830T123600Z
        1141  +
20150830/us-east-1/service/aws4_request
        1142  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1643   1143   
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
 1644   1144   
new file mode 100644
 1645   1145   
index 0000000..dc80036
 1646         -
-- /dev/null
        1146  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1647   1147   
@@ -0,0 +1,7 @@
        1148  +
GET
        1149  +
/example/..
        1150  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1151  +
host:example.amazonaws.com
        1152  +
        1153  +
host
        1154  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1648   1155   
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
 1649   1156   
new file mode 100644
 1650   1157   
index 0000000..dfa0437
 1651         -
-- /dev/null
        1158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1652   1159   
@@ -0,0 +1 @@
        1160  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1653   1161   
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
 1654   1162   
new file mode 100644
 1655   1163   
index 0000000..98367b1
 1656         -
-- /dev/null
        1164  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1657   1165   
@@ -0,0 +1,3 @@
        1166  +
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
        1167  +
Host:example.amazonaws.com
        1168  +
 1658   1169   
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
 1659   1170   
new file mode 100644
 1660   1171   
index 0000000..f65dd66
 1661         -
-- /dev/null
        1172  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1662   1173   
@@ -0,0 +1,4 @@
        1174  +
AWS4-HMAC-SHA256
        1175  +
20150830T123600Z
        1176  +
20150830/us-east-1/service/aws4_request
        1177  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1663   1178   
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
 1664   1179   
similarity index 100%
 1665   1180   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1666   1181   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1667   1182   
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
 1668   1183   
new file mode 100644
 1669   1184   
index 0000000..0468d80
 1670         -
-- /dev/null
        1185  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1671   1186   
@@ -0,0 +1,12 @@
        1187  +
{
        1188  +
    "credentials": {
        1189  +
        "access_key_id": "AKIDEXAMPLE",
        1190  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1191  +
    },
        1192  +
    "expiration_in_seconds": 3600,
        1193  +
    "normalize": true,
        1194  +
    "region": "us-east-1",
        1195  +
    "service": "service",
        1196  +
    "sign_body": false,
        1197  +
    "timestamp": "2015-08-30T12:36:00Z"
        1198  +
}
              \
 No newline at end of file
 1672   1199   
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
 1673   1200   
similarity index 100%
 1674   1201   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1675   1202   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1676   1203   
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
 1677   1204   
new file mode 100644
 1678   1205   
index 0000000..87f295f
 1679         -
-- /dev/null
        1206  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1680   1207   
@@ -0,0 +1 @@
        1208  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1681   1209   
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
 1682   1210   
new file mode 100644
 1683   1211   
index 0000000..99c8eeb
 1684         -
-- /dev/null
        1212  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1685   1213   
@@ -0,0 +1,5 @@
        1214  +
GET /./ HTTP/1.1
        1215  +
Host:example.amazonaws.com
        1216  +
X-Amz-Date:20150830T123600Z
        1217  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1218  +
 1686   1219   
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
 1687   1220   
similarity index 100%
 1688   1221   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1689   1222   
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
 1690   1223   
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
 1691   1224   
new file mode 100644
 1692   1225   
index 0000000..fb2420d
 1693         -
-- /dev/null
        1226  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1694   1227   
@@ -0,0 +1,7 @@
        1228  +
GET
        1229  +
/
        1230  +
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
        1231  +
host:example.amazonaws.com
        1232  +
        1233  +
host
        1234  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1695   1235   
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
 1696   1236   
new file mode 100644
 1697   1237   
index 0000000..da5c905
 1698         -
-- /dev/null
        1238  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1699   1239   
@@ -0,0 +1 @@
        1240  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1700   1241   
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
 1701   1242   
new file mode 100644
 1702   1243   
index 0000000..2e47f69
 1703         -
-- /dev/null
        1244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1704   1245   
@@ -0,0 +1,3 @@
        1246  +
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
        1247  +
Host:example.amazonaws.com
        1248  +
 1705   1249   
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
 1706   1250   
new file mode 100644
 1707   1251   
index 0000000..d837e67
 1708         -
-- /dev/null
        1252  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1709   1253   
@@ -0,0 +1,4 @@
        1254  +
AWS4-HMAC-SHA256
        1255  +
20150830T123600Z
        1256  +
20150830/us-east-1/service/aws4_request
        1257  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1710   1258   
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
 1711   1259   
similarity index 100%
 1712   1260   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1713   1261   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1714   1262   
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
 1715   1263   
similarity index 99%
 1716   1264   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1717   1265   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1718   1266   
index afe367b..7bee5c7 100644
 1719   1267   
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
 1720   1268   
new file mode 100644
 1721   1269   
index 0000000..5159048
 1722         -
-- /dev/null
        1270  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1723   1271   
@@ -0,0 +1,8 @@
        1272  +
GET
        1273  +
/./
        1274  +
        1275  +
host:example.amazonaws.com
        1276  +
x-amz-date:20150830T123600Z
        1277  +
        1278  +
host;x-amz-date
        1279  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1724   1280   
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
 1725   1281   
new file mode 100644
 1726   1282   
index 0000000..b49ff0e
 1727         -
-- /dev/null
        1283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1728   1284   
@@ -0,0 +1 @@
        1285  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1729   1286   
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
 1730   1287   
new file mode 100644
 1731   1288   
index 0000000..aeb1ffa
 1732         -
-- /dev/null
        1289  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1733   1290   
@@ -0,0 +1,5 @@
        1291  +
GET /./ HTTP/1.1
        1292  +
Host:example.amazonaws.com
        1293  +
X-Amz-Date:20150830T123600Z
        1294  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1295  +
 1734   1296   
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
 1735   1297   
new file mode 100644
 1736   1298   
index 0000000..b7d8caf
 1737         -
-- /dev/null
        1299  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1738   1300   
@@ -0,0 +1,4 @@
        1301  +
AWS4-HMAC-SHA256
        1302  +
20150830T123600Z
        1303  +
20150830/us-east-1/service/aws4_request
        1304  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1739   1305   
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
 1740   1306   
new file mode 100644
 1741   1307   
index 0000000..d4e029e
 1742         -
-- /dev/null
        1308  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1743   1309   
@@ -0,0 +1,7 @@
        1310  +
GET
        1311  +
/./
        1312  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1313  +
host:example.amazonaws.com
        1314  +
        1315  +
host
        1316  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1744   1317   
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
 1745   1318   
new file mode 100644
 1746   1319   
index 0000000..fe8f4cc
 1747         -
-- /dev/null
        1320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1748   1321   
@@ -0,0 +1 @@
        1322  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1749   1323   
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
 1750   1324   
new file mode 100644
 1751   1325   
index 0000000..dcc4fc4
 1752         -
-- /dev/null
        1326  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1753   1327   
@@ -0,0 +1,3 @@
        1328  +
GET /./?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c HTTP/1.1
        1329  +
Host:example.amazonaws.com
        1330  +
 1754   1331   
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
 1755   1332   
new file mode 100644
 1756   1333   
index 0000000..5fb3ada
 1757         -
-- /dev/null
        1334  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1758   1335   
@@ -0,0 +1,4 @@
        1336  +
AWS4-HMAC-SHA256
        1337  +
20150830T123600Z
        1338  +
20150830/us-east-1/service/aws4_request
        1339  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1759   1340   
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
 1760   1341   
similarity index 100%
 1761   1342   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1762   1343   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1763   1344   
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
 1764   1345   
new file mode 100644
 1765   1346   
index 0000000..0468d80
 1766         -
-- /dev/null
        1347  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1767   1348   
@@ -0,0 +1,12 @@
        1349  +
{
        1350  +
    "credentials": {
        1351  +
        "access_key_id": "AKIDEXAMPLE",
        1352  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1353  +
    },
        1354  +
    "expiration_in_seconds": 3600,
        1355  +
    "normalize": true,
        1356  +
    "region": "us-east-1",
        1357  +
    "service": "service",
        1358  +
    "sign_body": false,
        1359  +
    "timestamp": "2015-08-30T12:36:00Z"
        1360  +
}
              \
 No newline at end of file
 1768   1361   
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
 1769   1362   
similarity index 100%
 1770   1363   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1771   1364   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1772   1365   
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
 1773   1366   
new file mode 100644
 1774   1367   
index 0000000..87f295f
 1775         -
-- /dev/null
        1368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1776   1369   
@@ -0,0 +1 @@
        1370  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1777   1371   
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
 1778   1372   
new file mode 100644
 1779   1373   
index 0000000..b91087b
 1780         -
-- /dev/null
        1374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1781   1375   
@@ -0,0 +1,5 @@
        1376  +
GET // HTTP/1.1
        1377  +
Host:example.amazonaws.com
        1378  +
X-Amz-Date:20150830T123600Z
        1379  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1380  +
 1782   1381   
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
 1783   1382   
similarity index 100%
 1784   1383   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1785   1384   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1786   1385   
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
 1787   1386   
new file mode 100644
 1788   1387   
index 0000000..fb2420d
 1789         -
-- /dev/null
        1388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1790   1389   
@@ -0,0 +1,7 @@
        1390  +
GET
        1391  +
/
        1392  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1393  +
host:example.amazonaws.com
        1394  +
        1395  +
host
        1396  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1791   1397   
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
 1792   1398   
new file mode 100644
 1793   1399   
index 0000000..da5c905
 1794         -
-- /dev/null
        1400  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1795   1401   
@@ -0,0 +1 @@
        1402  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1796   1403   
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
 1797   1404   
new file mode 100644
 1798   1405   
index 0000000..0290ba4
 1799         -
-- /dev/null
        1406  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1800   1407   
@@ -0,0 +1,3 @@
        1408  +
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
        1409  +
Host:example.amazonaws.com
        1410  +
 1801   1411   
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
 1802   1412   
new file mode 100644
 1803   1413   
index 0000000..d837e67
 1804         -
-- /dev/null
        1414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1805   1415   
@@ -0,0 +1,4 @@
        1416  +
AWS4-HMAC-SHA256
        1417  +
20150830T123600Z
        1418  +
20150830/us-east-1/service/aws4_request
        1419  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1806   1420   
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
 1807   1421   
similarity index 100%
 1808   1422   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1809   1423   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1810   1424   
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
 1811   1425   
new file mode 100644
 1812   1426   
index 0000000..0468d80
 1813         -
-- /dev/null
        1427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1814   1428   
@@ -0,0 +1,12 @@
        1429  +
{
        1430  +
    "credentials": {
        1431  +
        "access_key_id": "AKIDEXAMPLE",
        1432  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1433  +
    },
        1434  +
    "expiration_in_seconds": 3600,
        1435  +
    "normalize": true,
        1436  +
    "region": "us-east-1",
        1437  +
    "service": "service",
        1438  +
    "sign_body": false,
        1439  +
    "timestamp": "2015-08-30T12:36:00Z"
        1440  +
}
              \
 No newline at end of file
 1815   1441   
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
 1816   1442   
similarity index 100%
 1817   1443   
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
 1818   1444   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1819   1445   
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
 1820   1446   
new file mode 100644
 1821   1447   
index 0000000..8f892bf
 1822         -
-- /dev/null
        1448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1823   1449   
@@ -0,0 +1 @@
        1450  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1824   1451   
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
 1825   1452   
new file mode 100644
 1826   1453   
index 0000000..2a1895c
 1827         -
-- /dev/null
        1454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1828   1455   
@@ -0,0 +1,5 @@
        1456  +
GET /./example HTTP/1.1
        1457  +
Host:example.amazonaws.com
        1458  +
X-Amz-Date:20150830T123600Z
        1459  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1460  +
 1829   1461   
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
 1830   1462   
similarity index 100%
 1831   1463   
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
 1832   1464   
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
 1833   1465   
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
 1834   1466   
new file mode 100644
 1835   1467   
index 0000000..99dfc2a
 1836         -
-- /dev/null
        1468  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1837   1469   
@@ -0,0 +1,7 @@
        1470  +
GET
        1471  +
/example
        1472  +
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
        1473  +
host:example.amazonaws.com
        1474  +
        1475  +
host
        1476  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1838   1477   
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
 1839   1478   
new file mode 100644
 1840   1479   
index 0000000..fcd7a17
 1841         -
-- /dev/null
        1480  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1842   1481   
@@ -0,0 +1 @@
        1482  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1843   1483   
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
 1844   1484   
new file mode 100644
 1845   1485   
index 0000000..f671de2
 1846         -
-- /dev/null
        1486  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1847   1487   
@@ -0,0 +1,3 @@
        1488  +
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
        1489  +
Host:example.amazonaws.com
        1490  +
 1848   1491   
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
 1849   1492   
new file mode 100644
 1850   1493   
index 0000000..f8456dc
 1851         -
-- /dev/null
        1494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1852   1495   
@@ -0,0 +1,4 @@
        1496  +
AWS4-HMAC-SHA256
        1497  +
20150830T123600Z
        1498  +
20150830/us-east-1/service/aws4_request
        1499  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1853   1500   
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
 1854   1501   
similarity index 100%
 1855   1502   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1856   1503   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1857   1504   
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
 1858   1505   
similarity index 99%
 1859   1506   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1860   1507   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1861   1508   
index afe367b..7bee5c7 100644
 1862   1509   
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
 1863   1510   
new file mode 100644
 1864   1511   
index 0000000..36698c7
 1865         -
-- /dev/null
        1512  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1866   1513   
@@ -0,0 +1,8 @@
        1514  +
GET
        1515  +
/./example
        1516  +
        1517  +
host:example.amazonaws.com
        1518  +
x-amz-date:20150830T123600Z
        1519  +
        1520  +
host;x-amz-date
        1521  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1867   1522   
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
 1868   1523   
new file mode 100644
 1869   1524   
index 0000000..4a4b8f2
 1870         -
-- /dev/null
        1525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1871   1526   
@@ -0,0 +1 @@
        1527  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1872   1528   
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
 1873   1529   
new file mode 100644
 1874   1530   
index 0000000..d462bcd
 1875         -
-- /dev/null
        1531  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1876   1532   
@@ -0,0 +1,5 @@
        1533  +
GET /./example HTTP/1.1
        1534  +
Host:example.amazonaws.com
        1535  +
X-Amz-Date:20150830T123600Z
        1536  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1537  +
 1877   1538   
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
 1878   1539   
new file mode 100644
 1879   1540   
index 0000000..8be78c9
 1880         -
-- /dev/null
        1541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1881   1542   
@@ -0,0 +1,4 @@
        1543  +
AWS4-HMAC-SHA256
        1544  +
20150830T123600Z
        1545  +
20150830/us-east-1/service/aws4_request
        1546  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1882   1547   
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
 1883   1548   
new file mode 100644
 1884   1549   
index 0000000..fe1103c
 1885         -
-- /dev/null
        1550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1886   1551   
@@ -0,0 +1,7 @@
        1552  +
GET
        1553  +
/./example
        1554  +
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
        1555  +
host:example.amazonaws.com
        1556  +
        1557  +
host
        1558  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1887   1559   
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
 1888   1560   
new file mode 100644
 1889   1561   
index 0000000..ce80762
 1890         -
-- /dev/null
        1562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1891   1563   
@@ -0,0 +1 @@
        1564  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1892   1565   
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
 1893   1566   
new file mode 100644
 1894   1567   
index 0000000..30841a6
 1895         -
-- /dev/null
        1568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1896   1569   
@@ -0,0 +1,3 @@
        1570  +
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
        1571  +
Host:example.amazonaws.com
        1572  +
 1897   1573   
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
 1898   1574   
new file mode 100644
 1899   1575   
index 0000000..5c66509
 1900         -
-- /dev/null
        1576  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1901   1577   
@@ -0,0 +1,4 @@
        1578  +
AWS4-HMAC-SHA256
        1579  +
20150830T123600Z
        1580  +
20150830/us-east-1/service/aws4_request
        1581  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1902   1582   
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
 1903   1583   
similarity index 100%
 1904   1584   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1905   1585   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1906   1586   
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
 1907   1587   
new file mode 100644
 1908   1588   
index 0000000..7bee5c7
 1909         -
-- /dev/null
        1589  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1910   1590   
@@ -0,0 +1,12 @@
        1591  +
{
        1592  +
    "credentials": {
        1593  +
        "access_key_id": "AKIDEXAMPLE",
        1594  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1595  +
    },
        1596  +
    "expiration_in_seconds": 3600,
        1597  +
    "normalize": false,
        1598  +
    "region": "us-east-1",
        1599  +
    "service": "service",
        1600  +
    "sign_body": false,
        1601  +
    "timestamp": "2015-08-30T12:36:00Z"
        1602  +
}
              \
 No newline at end of file
 1911   1603   
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
 1912   1604   
new file mode 100644
 1913   1605   
index 0000000..5860c8a
 1914         -
-- /dev/null
        1606  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1915   1607   
@@ -0,0 +1,8 @@
        1608  +
GET
        1609  +
//
        1610  +
        1611  +
host:example.amazonaws.com
        1612  +
x-amz-date:20150830T123600Z
        1613  +
        1614  +
host;x-amz-date
        1615  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1916   1616   
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
 1917   1617   
new file mode 100644
 1918   1618   
index 0000000..8310471
 1919         -
-- /dev/null
        1619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1920   1620   
@@ -0,0 +1 @@
        1621  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1921   1622   
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
 1922   1623   
new file mode 100644
 1923   1624   
index 0000000..2a7afef
 1924         -
-- /dev/null
        1625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1925   1626   
@@ -0,0 +1,5 @@
        1627  +
GET // HTTP/1.1
        1628  +
Host:example.amazonaws.com
        1629  +
X-Amz-Date:20150830T123600Z
        1630  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1631  +
 1926   1632   
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
 1927   1633   
new file mode 100644
 1928   1634   
index 0000000..06059dd
 1929         -
-- /dev/null
        1635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1930   1636   
@@ -0,0 +1,4 @@
        1637  +
AWS4-HMAC-SHA256
        1638  +
20150830T123600Z
        1639  +
20150830/us-east-1/service/aws4_request
        1640  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1931   1641   
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
 1932   1642   
new file mode 100644
 1933   1643   
index 0000000..6d63aef
 1934         -
-- /dev/null
        1644  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1935   1645   
@@ -0,0 +1,7 @@
        1646  +
GET
        1647  +
//
        1648  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1649  +
host:example.amazonaws.com
        1650  +
        1651  +
host
        1652  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1936   1653   
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
 1937   1654   
new file mode 100644
 1938   1655   
index 0000000..e5b7b6c
 1939         -
-- /dev/null
        1656  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1940   1657   
@@ -0,0 +1 @@
        1658  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1941   1659   
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
 1942   1660   
new file mode 100644
 1943   1661   
index 0000000..46fe3fd
 1944         -
-- /dev/null
        1662  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1945   1663   
@@ -0,0 +1,3 @@
        1664  +
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
        1665  +
Host:example.amazonaws.com
        1666  +
 1946   1667   
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
 1947   1668   
new file mode 100644
 1948   1669   
index 0000000..ea79940
 1949         -
-- /dev/null
        1670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1950   1671   
@@ -0,0 +1,4 @@
        1672  +
AWS4-HMAC-SHA256
        1673  +
20150830T123600Z
        1674  +
20150830/us-east-1/service/aws4_request
        1675  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1951   1676   
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
 1952   1677   
similarity index 100%
 1953   1678   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1954   1679   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1955   1680   
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
 1956   1681   
new file mode 100644
 1957   1682   
index 0000000..0468d80
 1958         -
-- /dev/null
        1683  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1959   1684   
@@ -0,0 +1,12 @@
        1685  +
{
        1686  +
    "credentials": {
        1687  +
        "access_key_id": "AKIDEXAMPLE",
        1688  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1689  +
    },
        1690  +
    "expiration_in_seconds": 3600,
        1691  +
    "normalize": true,
        1692  +
    "region": "us-east-1",
        1693  +
    "service": "service",
        1694  +
    "sign_body": false,
        1695  +
    "timestamp": "2015-08-30T12:36:00Z"
        1696  +
}
              \
 No newline at end of file
 1960   1697   
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
 1961   1698   
similarity index 100%
 1962   1699   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1963   1700   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1964   1701   
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
 1965   1702   
new file mode 100644
 1966   1703   
index 0000000..71c7bac
 1967         -
-- /dev/null
        1704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1968   1705   
@@ -0,0 +1 @@
        1706  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1969   1707   
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
 1970   1708   
new file mode 100644
 1971   1709   
index 0000000..0add1f1
 1972         -
-- /dev/null
        1710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1973   1711   
@@ -0,0 +1,5 @@
        1712  +
GET //example// HTTP/1.1
        1713  +
Host:example.amazonaws.com
        1714  +
X-Amz-Date:20150830T123600Z
        1715  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1716  +
 1974   1717   
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
 1975   1718   
similarity index 100%
 1976   1719   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1977   1720   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1978   1721   
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
 1979   1722   
new file mode 100644
 1980   1723   
index 0000000..ce72510
 1981         -
-- /dev/null
        1724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1982   1725   
@@ -0,0 +1,7 @@
        1726  +
GET
        1727  +
/example/
        1728  +
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
        1729  +
host:example.amazonaws.com
        1730  +
        1731  +
host
        1732  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1983   1733   
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
 1984   1734   
new file mode 100644
 1985   1735   
index 0000000..265f387
 1986         -
-- /dev/null
        1736  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1987   1737   
@@ -0,0 +1 @@
        1738  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1988   1739   
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
 1989   1740   
new file mode 100644
 1990   1741   
index 0000000..e1fcb2e
 1991         -
-- /dev/null
        1742  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1992   1743   
@@ -0,0 +1,3 @@
        1744  +
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
        1745  +
Host:example.amazonaws.com
        1746  +
 1993   1747   
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
 1994   1748   
new file mode 100644
 1995   1749   
index 0000000..a14de61
 1996         -
-- /dev/null
        1750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1997   1751   
@@ -0,0 +1,4 @@
        1752  +
AWS4-HMAC-SHA256
        1753  +
20150830T123600Z
        1754  +
20150830/us-east-1/service/aws4_request
        1755  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1998   1756   
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
 1999   1757   
similarity index 100%
 2000   1758   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 2001   1759   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 2002   1760   
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
 2003   1761   
new file mode 100644
 2004   1762   
index 0000000..7bee5c7
 2005         -
-- /dev/null
        1763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 2006   1764   
@@ -0,0 +1,12 @@
        1765  +
{
        1766  +
    "credentials": {
        1767  +
        "access_key_id": "AKIDEXAMPLE",
        1768  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1769  +
    },
        1770  +
    "expiration_in_seconds": 3600,
        1771  +
    "normalize": false,
        1772  +
    "region": "us-east-1",
        1773  +
    "service": "service",
        1774  +
    "sign_body": false,
        1775  +
    "timestamp": "2015-08-30T12:36:00Z"
        1776  +
}
              \
 No newline at end of file
 2007   1777   
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
 2008   1778   
new file mode 100644
 2009   1779   
index 0000000..dfffaaf
 2010         -
-- /dev/null
        1780  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 2011   1781   
@@ -0,0 +1,8 @@
        1782  +
GET
        1783  +
//example//
        1784  +
        1785  +
host:example.amazonaws.com
        1786  +
x-amz-date:20150830T123600Z
        1787  +
        1788  +
host;x-amz-date
        1789  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2012   1790   
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
 2013   1791   
new file mode 100644
 2014   1792   
index 0000000..edbcc0d
 2015         -
-- /dev/null
        1793  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 2016   1794   
@@ -0,0 +1 @@
        1795  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 2017   1796   
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
 2018   1797   
new file mode 100644
 2019   1798   
index 0000000..4cc12dd
 2020         -
-- /dev/null
        1799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 2021   1800   
@@ -0,0 +1,5 @@
        1801  +
GET //example// HTTP/1.1
        1802  +
Host:example.amazonaws.com
        1803  +
X-Amz-Date:20150830T123600Z
        1804  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1805  +
 2022   1806   
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
 2023   1807   
new file mode 100644
 2024   1808   
index 0000000..3eba390
 2025         -
-- /dev/null
        1809  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 2026   1810   
@@ -0,0 +1,4 @@
        1811  +
AWS4-HMAC-SHA256
        1812  +
20150830T123600Z
        1813  +
20150830/us-east-1/service/aws4_request
        1814  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 2027   1815   
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
 2028   1816   
new file mode 100644
 2029   1817   
index 0000000..f7844e3
 2030         -
-- /dev/null
        1818  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 2031   1819   
@@ -0,0 +1,7 @@
        1820  +
GET
        1821  +
//example//
        1822  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        1823  +
host:example.amazonaws.com
        1824  +
        1825  +
host
        1826  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2032   1827   
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
 2033   1828   
new file mode 100644
 2034   1829   
index 0000000..a8d6b96
 2035         -
-- /dev/null
        1830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 2036   1831   
@@ -0,0 +1 @@
        1832  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 2037   1833   
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
 2038   1834   
new file mode 100644
 2039   1835   
index 0000000..a8322c6
 2040         -
-- /dev/null
        1836  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 2041   1837   
@@ -0,0 +1,3 @@
        1838  +
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
        1839  +
Host:example.amazonaws.com
        1840  +
 2042   1841   
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
 2043   1842   
new file mode 100644
 2044   1843   
index 0000000..068724d
 2045         -
-- /dev/null
        1844  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 2046   1845   
@@ -0,0 +1,4 @@
        1846  +
AWS4-HMAC-SHA256
        1847  +
20150830T123600Z
        1848  +
20150830/us-east-1/service/aws4_request
        1849  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 2047   1850   
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
 2048   1851   
similarity index 100%
 2049   1852   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 2050   1853   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 2051   1854   
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
 2052   1855   
new file mode 100644
 2053   1856   
index 0000000..0468d80
 2054         -
-- /dev/null
        1857  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 2055   1858   
@@ -0,0 +1,12 @@
        1859  +
{
        1860  +
    "credentials": {
        1861  +
        "access_key_id": "AKIDEXAMPLE",
        1862  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1863  +
    },
        1864  +
    "expiration_in_seconds": 3600,
        1865  +
    "normalize": true,
        1866  +
    "region": "us-east-1",
        1867  +
    "service": "service",
        1868  +
    "sign_body": false,
        1869  +
    "timestamp": "2015-08-30T12:36:00Z"
        1870  +
}
              \
 No newline at end of file
 2056   1871   
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
 2057   1872   
similarity index 100%
 2058   1873   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 2059   1874   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 2060   1875   
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
 2061   1876   
new file mode 100644
 2062   1877   
index 0000000..f63892b
 2063         -
-- /dev/null
        1878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 2064   1879   
@@ -0,0 +1 @@
        1880  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2065   1881   
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
 2066   1882   
new file mode 100644
 2067   1883   
index 0000000..19cd5cb
 2068         -
-- /dev/null
        1884  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 2069   1885   
@@ -0,0 +1,5 @@
        1886  +
GET /example space/ HTTP/1.1
        1887  +
Host:example.amazonaws.com
        1888  +
X-Amz-Date:20150830T123600Z
        1889  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1890  +
 2070   1891   
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
 2071   1892   
similarity index 100%
 2072   1893   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 2073   1894   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 2074   1895   
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
 2075   1896   
new file mode 100644
 2076   1897   
index 0000000..fa3d3e2
 2077         -
-- /dev/null
        1898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 2078   1899   
@@ -0,0 +1,7 @@
        1900  +
GET
        1901  +
/example%20space/
        1902  +
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
        1903  +
host:example.amazonaws.com
        1904  +
        1905  +
host
        1906  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2079   1907   
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
 2080   1908   
new file mode 100644
 2081   1909   
index 0000000..5b2e204
 2082         -
-- /dev/null
        1910  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 2083   1911   
@@ -0,0 +1 @@
        1912  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2084   1913   
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
 2085   1914   
new file mode 100644
 2086   1915   
index 0000000..93ca1d0
 2087         -
-- /dev/null
        1916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 2088   1917   
@@ -0,0 +1,3 @@
        1918  +
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
        1919  +
Host:example.amazonaws.com
        1920  +
 2089   1921   
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
 2090   1922   
new file mode 100644
 2091   1923   
index 0000000..b4cb789
 2092         -
-- /dev/null
        1924  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 2093   1925   
@@ -0,0 +1,4 @@
        1926  +
AWS4-HMAC-SHA256
        1927  +
20150830T123600Z
        1928  +
20150830/us-east-1/service/aws4_request
        1929  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2094   1930   
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
 2095   1931   
new file mode 100644
 2096   1932   
index 0000000..860a277
 2097         -
-- /dev/null
        1933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 2098   1934   
@@ -0,0 +1,2 @@
        1935  +
GET /example%20space/ HTTP/1.1
        1936  +
Host:example.amazonaws.com
 2099   1937   
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
 2100   1938   
new file mode 100644
 2101   1939   
index 0000000..7bee5c7
 2102         -
-- /dev/null
        1940  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 2103   1941   
@@ -0,0 +1,12 @@
        1942  +
{
        1943  +
    "credentials": {
        1944  +
        "access_key_id": "AKIDEXAMPLE",
        1945  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1946  +
    },
        1947  +
    "expiration_in_seconds": 3600,
        1948  +
    "normalize": false,
        1949  +
    "region": "us-east-1",
        1950  +
    "service": "service",
        1951  +
    "sign_body": false,
        1952  +
    "timestamp": "2015-08-30T12:36:00Z"
        1953  +
}
              \
 No newline at end of file
 2104   1954   
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
 2105   1955   
similarity index 66%
 2106   1956   
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
 2107   1957   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2108   1958   
index 71dc981..124a709 100644
 2109         -
-- 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
        1959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2110   1960   
@@ -1,9 +1,8 @@
 2111         -
POST
 2112         -
/
        1961  +
GET
        1962  +
/example%20space/
 2113   1963   
 2114         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 2115   1964   
host:example.amazonaws.com
 2116   1965   
x-amz-date:20150830T123600Z
 2117   1966   
 2118   1967   
host;x-amz-date
 2119   1968   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2120   1969   
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
 2121   1970   
new file mode 100644
 2122   1971   
index 0000000..f63892b
 2123         -
-- /dev/null
        1972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 2124   1973   
@@ -0,0 +1 @@
        1974  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2125   1975   
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
 2126   1976   
new file mode 100644
 2127   1977   
index 0000000..19cd5cb
 2128         -
-- /dev/null
        1978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 2129   1979   
@@ -0,0 +1,5 @@
        1980  +
GET /example space/ HTTP/1.1
        1981  +
Host:example.amazonaws.com
        1982  +
X-Amz-Date:20150830T123600Z
        1983  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1984  +
 2130   1985   
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
 2131   1986   
new file mode 100644
 2132   1987   
index 0000000..a633f0c
 2133         -
-- /dev/null
        1988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 2134   1989   
@@ -0,0 +1,4 @@
        1990  +
AWS4-HMAC-SHA256
        1991  +
20150830T123600Z
        1992  +
20150830/us-east-1/service/aws4_request
        1993  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 2135   1994   
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
 2136   1995   
new file mode 100644
 2137   1996   
index 0000000..fa3d3e2
 2138         -
-- /dev/null
        1997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 2139   1998   
@@ -0,0 +1,7 @@
        1999  +
GET
        2000  +
/example%20space/
        2001  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2002  +
host:example.amazonaws.com
        2003  +
        2004  +
host
        2005  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2140   2006   
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
 2141   2007   
new file mode 100644
 2142   2008   
index 0000000..5b2e204
 2143         -
-- /dev/null
        2009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 2144   2010   
@@ -0,0 +1 @@
        2011  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2145   2012   
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
 2146   2013   
new file mode 100644
 2147   2014   
index 0000000..93ca1d0
 2148         -
-- /dev/null
        2015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 2149   2016   
@@ -0,0 +1,3 @@
        2017  +
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
        2018  +
Host:example.amazonaws.com
        2019  +
 2150   2020   
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
 2151   2021   
new file mode 100644
 2152   2022   
index 0000000..b4cb789
 2153         -
-- /dev/null
        2023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 2154   2024   
@@ -0,0 +1,4 @@
        2025  +
AWS4-HMAC-SHA256
        2026  +
20150830T123600Z
        2027  +
20150830/us-east-1/service/aws4_request
        2028  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2155   2029   
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
 2156   2030   
similarity index 67%
 2157   2031   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 2158   2032   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2159   2033   
index b7d5e8b..ab509ab 100644
 2160         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        2034  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2161   2035   
@@ -1,3 +1,2 @@
 2162   2036   
GET /example space/ HTTP/1.1
 2163   2037   
Host:example.amazonaws.com
 2164         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2165   2038   
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
 2166   2039   
new file mode 100644
 2167   2040   
index 0000000..0468d80
 2168         -
-- /dev/null
        2041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 2169   2042   
@@ -0,0 +1,12 @@
        2043  +
{
        2044  +
    "credentials": {
        2045  +
        "access_key_id": "AKIDEXAMPLE",
        2046  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2047  +
    },
        2048  +
    "expiration_in_seconds": 3600,
        2049  +
    "normalize": true,
        2050  +
    "region": "us-east-1",
        2051  +
    "service": "service",
        2052  +
    "sign_body": false,
        2053  +
    "timestamp": "2015-08-30T12:36:00Z"
        2054  +
}
              \
 No newline at end of file
 2170   2055   
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
 2171   2056   
similarity index 100%
 2172   2057   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 2173   2058   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2174   2059   
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
 2175   2060   
new file mode 100644
 2176   2061   
index 0000000..e503354
 2177         -
-- /dev/null
        2062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2178   2063   
@@ -0,0 +1 @@
        2064  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 2179   2065   
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
 2180   2066   
new file mode 100644
 2181   2067   
index 0000000..4367892
 2182         -
-- /dev/null
        2068  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2183   2069   
@@ -0,0 +1,5 @@
        2070  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        2071  +
Host:example.amazonaws.com
        2072  +
X-Amz-Date:20150830T123600Z
        2073  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        2074  +
 2184   2075   
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
 2185   2076   
similarity index 100%
 2186   2077   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 2187   2078   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2188   2079   
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
 2189   2080   
new file mode 100644
 2190   2081   
index 0000000..d7f0696
 2191         -
-- /dev/null
        2082  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2192   2083   
@@ -0,0 +1,7 @@
        2084  +
GET
        2085  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        2086  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2087  +
host:example.amazonaws.com
        2088  +
        2089  +
host
        2090  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2193   2091   
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
 2194   2092   
new file mode 100644
 2195   2093   
index 0000000..509e972
 2196         -
-- /dev/null
        2094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2197   2095   
@@ -0,0 +1 @@
        2096  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 2198   2097   
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
 2199   2098   
new file mode 100644
 2200   2099   
index 0000000..79aad36
 2201         -
-- /dev/null
        2100  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2202   2101   
@@ -0,0 +1,3 @@
        2102  +
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
        2103  +
Host:example.amazonaws.com
        2104  +
 2203   2105   
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
 2204   2106   
new file mode 100644
 2205   2107   
index 0000000..e8068b3
 2206         -
-- /dev/null
        2108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2207   2109   
@@ -0,0 +1,4 @@
        2110  +
AWS4-HMAC-SHA256
        2111  +
20150830T123600Z
        2112  +
20150830/us-east-1/service/aws4_request
        2113  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 2208   2114   
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
 2209   2115   
similarity index 100%
 2210   2116   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 2211   2117   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2212   2118   
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
 2213   2119   
new file mode 100644
 2214   2120   
index 0000000..0468d80
 2215         -
-- /dev/null
        2121  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2216   2122   
@@ -0,0 +1,12 @@
        2123  +
{
        2124  +
    "credentials": {
        2125  +
        "access_key_id": "AKIDEXAMPLE",
        2126  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2127  +
    },
        2128  +
    "expiration_in_seconds": 3600,
        2129  +
    "normalize": true,
        2130  +
    "region": "us-east-1",
        2131  +
    "service": "service",
        2132  +
    "sign_body": false,
        2133  +
    "timestamp": "2015-08-30T12:36:00Z"
        2134  +
}
              \
 No newline at end of file
 2217   2135   
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
 2218   2136   
similarity index 100%
 2219   2137   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 2220   2138   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2221   2139   
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
 2222   2140   
new file mode 100644
 2223   2141   
index 0000000..9a13676
 2224         -
-- /dev/null
        2142  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2225   2143   
@@ -0,0 +1 @@
        2144  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 2226   2145   
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
 2227   2146   
new file mode 100644
 2228   2147   
index 0000000..5aaf47c
 2229         -
-- /dev/null
        2148  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2230   2149   
@@ -0,0 +1,5 @@
        2150  +
GET /ሴ HTTP/1.1
        2151  +
Host:example.amazonaws.com
        2152  +
X-Amz-Date:20150830T123600Z
        2153  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2154  +
 2231   2155   
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
 2232   2156   
similarity index 100%
 2233   2157   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 2234   2158   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2235   2159   
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
 2236   2160   
new file mode 100644
 2237   2161   
index 0000000..bdb77c9
 2238         -
-- /dev/null
        2162  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2239   2163   
@@ -0,0 +1,7 @@
        2164  +
GET
        2165  +
/%E1%88%B4
        2166  +
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
        2167  +
host:example.amazonaws.com
        2168  +
        2169  +
host
        2170  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2240   2171   
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
 2241   2172   
new file mode 100644
 2242   2173   
index 0000000..21342b3
 2243         -
-- /dev/null
        2174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2244   2175   
@@ -0,0 +1 @@
        2176  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2245   2177   
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
 2246   2178   
new file mode 100644
 2247   2179   
index 0000000..368c2ff
 2248         -
-- /dev/null
        2180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2249   2181   
@@ -0,0 +1,3 @@
        2182  +
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
        2183  +
Host:example.amazonaws.com
        2184  +
 2250   2185   
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
 2251   2186   
new file mode 100644
 2252   2187   
index 0000000..56b8fbf
 2253         -
-- /dev/null
        2188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2254   2189   
@@ -0,0 +1,4 @@
        2190  +
AWS4-HMAC-SHA256
        2191  +
20150830T123600Z
        2192  +
20150830/us-east-1/service/aws4_request
        2193  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2255   2194   
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
 2256   2195   
similarity index 62%
 2257   2196   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2258   2197   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2259   2198   
index da4808d..9e273f6 100644
 2260         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2199  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2261   2200   
@@ -1,3 +1,2 @@
 2262   2201   
GET /ሴ HTTP/1.1
 2263   2202   
Host:example.amazonaws.com
 2264         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2265   2203   
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
 2266   2204   
new file mode 100644
 2267   2205   
index 0000000..0468d80
 2268         -
-- /dev/null
        2206  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2269   2207   
@@ -0,0 +1,12 @@
        2208  +
{
        2209  +
    "credentials": {
        2210  +
        "access_key_id": "AKIDEXAMPLE",
        2211  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2212  +
    },
        2213  +
    "expiration_in_seconds": 3600,
        2214  +
    "normalize": true,
        2215  +
    "region": "us-east-1",
        2216  +
    "service": "service",
        2217  +
    "sign_body": false,
        2218  +
    "timestamp": "2015-08-30T12:36:00Z"
        2219  +
}
              \
 No newline at end of file
 2270   2220   
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
 2271   2221   
similarity index 100%
 2272   2222   
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
 2273   2223   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2274   2224   
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
 2275   2225   
new file mode 100644
 2276   2226   
index 0000000..d7f1c1c
 2277         -
-- /dev/null
        2227  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2278   2228   
@@ -0,0 +1 @@
        2229  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2279   2230   
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
 2280   2231   
new file mode 100644
 2281   2232   
index 0000000..1c60790
 2282         -
-- /dev/null
        2233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2283   2234   
@@ -0,0 +1,5 @@
        2235  +
GET /?Param1=value1 HTTP/1.1
        2236  +
Host:example.amazonaws.com
        2237  +
X-Amz-Date:20150830T123600Z
        2238  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2239  +
 2284   2240   
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
 2285   2241   
similarity index 100%
 2286   2242   
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
 2287   2243   
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
 2288   2244   
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
 2289   2245   
new file mode 100644
 2290   2246   
index 0000000..6a823ed
 2291         -
-- /dev/null
        2247  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2292   2248   
@@ -0,0 +1,7 @@
        2249  +
GET
        2250  +
/
        2251  +
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
        2252  +
host:example.amazonaws.com
        2253  +
        2254  +
host
        2255  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2293   2256   
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
 2294   2257   
new file mode 100644
 2295   2258   
index 0000000..8c77136
 2296         -
-- /dev/null
        2259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2297   2260   
@@ -0,0 +1 @@
        2261  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2298   2262   
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
 2299   2263   
new file mode 100644
 2300   2264   
index 0000000..2d337d8
 2301         -
-- /dev/null
        2265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2302   2266   
@@ -0,0 +1,3 @@
        2267  +
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
        2268  +
Host:example.amazonaws.com
        2269  +
 2303   2270   
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
 2304   2271   
new file mode 100644
 2305   2272   
index 0000000..191a484
 2306         -
-- /dev/null
        2273  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2307   2274   
@@ -0,0 +1,4 @@
        2275  +
AWS4-HMAC-SHA256
        2276  +
20150830T123600Z
        2277  +
20150830/us-east-1/service/aws4_request
        2278  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2308   2279   
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
 2309   2280   
similarity index 100%
 2310   2281   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2311   2282   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2312   2283   
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
 2313   2284   
new file mode 100644
 2314   2285   
index 0000000..0468d80
 2315         -
-- /dev/null
        2286  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2316   2287   
@@ -0,0 +1,12 @@
        2288  +
{
        2289  +
    "credentials": {
        2290  +
        "access_key_id": "AKIDEXAMPLE",
        2291  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2292  +
    },
        2293  +
    "expiration_in_seconds": 3600,
        2294  +
    "normalize": true,
        2295  +
    "region": "us-east-1",
        2296  +
    "service": "service",
        2297  +
    "sign_body": false,
        2298  +
    "timestamp": "2015-08-30T12:36:00Z"
        2299  +
}
              \
 No newline at end of file
 2317   2300   
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
 2318   2301   
new file mode 100644
 2319   2302   
index 0000000..0c8ba21
 2320         -
-- /dev/null
        2303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2321   2304   
@@ -0,0 +1,8 @@
        2305  +
GET
        2306  +
/
        2307  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2308  +
host:example.amazonaws.com
        2309  +
x-amz-date:20150830T123600Z
        2310  +
        2311  +
host;x-amz-date
        2312  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2322   2313   
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
 2323   2314   
new file mode 100644
 2324   2315   
index 0000000..9ab65ed
 2325         -
-- /dev/null
        2316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2326   2317   
@@ -0,0 +1 @@
        2318  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2327   2319   
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
 2328   2320   
new file mode 100644
 2329   2321   
index 0000000..0bcdf98
 2330         -
-- /dev/null
        2322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2331   2323   
@@ -0,0 +1,5 @@
        2324  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2325  +
Host:example.amazonaws.com
        2326  +
X-Amz-Date:20150830T123600Z
        2327  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2328  +
 2332   2329   
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
 2333   2330   
new file mode 100644
 2334   2331   
index 0000000..bf674ad
 2335         -
-- /dev/null
        2332  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2336   2333   
@@ -0,0 +1,4 @@
        2334  +
AWS4-HMAC-SHA256
        2335  +
20150830T123600Z
        2336  +
20150830/us-east-1/service/aws4_request
        2337  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2337   2338   
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
 2338   2339   
new file mode 100644
 2339   2340   
index 0000000..3f590a4
 2340         -
-- /dev/null
        2341  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2341   2342   
@@ -0,0 +1,7 @@
        2343  +
GET
        2344  +
/
        2345  +
%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
        2346  +
host:example.amazonaws.com
        2347  +
        2348  +
host
        2349  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2342   2350   
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
 2343   2351   
new file mode 100644
 2344   2352   
index 0000000..e225eab
 2345         -
-- /dev/null
        2353  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2346   2354   
@@ -0,0 +1 @@
        2355  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2347   2356   
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
 2348   2357   
new file mode 100644
 2349   2358   
index 0000000..6206719
 2350         -
-- /dev/null
        2359  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2351   2360   
@@ -0,0 +1,3 @@
        2361  +
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
        2362  +
Host:example.amazonaws.com
        2363  +
 2352   2364   
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
 2353   2365   
new file mode 100644
 2354   2366   
index 0000000..81a4210
 2355         -
-- /dev/null
        2367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2356   2368   
@@ -0,0 +1,4 @@
        2369  +
AWS4-HMAC-SHA256
        2370  +
20150830T123600Z
        2371  +
20150830/us-east-1/service/aws4_request
        2372  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2357   2373   
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
 2358   2374   
new file mode 100644
 2359   2375   
index 0000000..368c6e3
 2360         -
-- /dev/null
        2376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2361   2377   
@@ -0,0 +1,2 @@
        2378  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2379  +
Host:example.amazonaws.com
 2362   2380   
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
 2363   2381   
new file mode 100644
 2364   2382   
index 0000000..0468d80
 2365         -
-- /dev/null
        2383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2366   2384   
@@ -0,0 +1,12 @@
        2385  +
{
        2386  +
    "credentials": {
        2387  +
        "access_key_id": "AKIDEXAMPLE",
        2388  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2389  +
    },
        2390  +
    "expiration_in_seconds": 3600,
        2391  +
    "normalize": true,
        2392  +
    "region": "us-east-1",
        2393  +
    "service": "service",
        2394  +
    "sign_body": false,
        2395  +
    "timestamp": "2015-08-30T12:36:00Z"
        2396  +
}
              \
 No newline at end of file
 2367   2397   
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
 2368   2398   
similarity index 100%
 2369   2399   
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
 2370   2400   
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
 2371   2401   
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
 2372   2402   
new file mode 100644
 2373   2403   
index 0000000..6a8cb9d
 2374         -
-- /dev/null
        2404  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2375   2405   
@@ -0,0 +1 @@
        2406  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2376   2407   
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
 2377   2408   
new file mode 100644
 2378   2409   
index 0000000..f78a9d2
 2379         -
-- /dev/null
        2410  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2380   2411   
@@ -0,0 +1,5 @@
        2412  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2413  +
Host:example.amazonaws.com
        2414  +
X-Amz-Date:20150830T123600Z
        2415  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2416  +
 2381   2417   
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
 2382   2418   
similarity index 100%
 2383   2419   
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
 2384   2420   
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
 2385   2421   
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
 2386   2422   
new file mode 100644
 2387   2423   
index 0000000..a6e1bc7
 2388         -
-- /dev/null
        2424  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2389   2425   
@@ -0,0 +1,7 @@
        2426  +
GET
        2427  +
/
        2428  +
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
        2429  +
host:example.amazonaws.com
        2430  +
        2431  +
host
        2432  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2390   2433   
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
 2391   2434   
new file mode 100644
 2392   2435   
index 0000000..d6e6a88
 2393         -
-- /dev/null
        2436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2394   2437   
@@ -0,0 +1 @@
        2438  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2395   2439   
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
 2396   2440   
new file mode 100644
 2397   2441   
index 0000000..538e2f0
 2398         -
-- /dev/null
        2442  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2399   2443   
@@ -0,0 +1,3 @@
        2444  +
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
        2445  +
Host:example.amazonaws.com
        2446  +
 2400   2447   
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
 2401   2448   
new file mode 100644
 2402   2449   
index 0000000..e696085
 2403         -
-- /dev/null
        2450  +
++ 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
 2404   2451   
@@ -0,0 +1,4 @@
        2452  +
AWS4-HMAC-SHA256
        2453  +
20150830T123600Z
        2454  +
20150830/us-east-1/service/aws4_request
        2455  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2405   2456   
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
 2406   2457   
similarity index 100%
 2407   2458   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2408   2459   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2409   2460   
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
 2410   2461   
new file mode 100644
 2411   2462   
index 0000000..0468d80
 2412         -
-- /dev/null
        2463  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2413   2464   
@@ -0,0 +1,12 @@
        2465  +
{
        2466  +
    "credentials": {
        2467  +
        "access_key_id": "AKIDEXAMPLE",
        2468  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2469  +
    },
        2470  +
    "expiration_in_seconds": 3600,
        2471  +
    "normalize": true,
        2472  +
    "region": "us-east-1",
        2473  +
    "service": "service",
        2474  +
    "sign_body": false,
        2475  +
    "timestamp": "2015-08-30T12:36:00Z"
        2476  +
}
              \
 No newline at end of file
 2414   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.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2415   2478   
similarity index 100%
 2416   2479   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2417   2480   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2418   2481   
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
 2419   2482   
new file mode 100644
 2420   2483   
index 0000000..876a64b
 2421         -
-- /dev/null
        2484  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2422   2485   
@@ -0,0 +1 @@
        2486  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2423   2487   
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
 2424   2488   
similarity index 50%
 2425   2489   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2426   2490   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2427   2491   
index ba1ef40..9d0d993 100644
 2428         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2492  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2429   2493   
@@ -1,4 +1,5 @@
 2430   2494   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2431   2495   
Host:example.amazonaws.com
 2432   2496   
X-Amz-Date:20150830T123600Z
 2433         -
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
        2497  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2498  +
 2434   2499   
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
 2435   2500   
similarity index 100%
 2436   2501   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2437   2502   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2438   2503   
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
 2439   2504   
new file mode 100644
 2440   2505   
index 0000000..a1bac59
 2441         -
-- /dev/null
        2506  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2442   2507   
@@ -0,0 +1,7 @@
        2508  +
GET
        2509  +
/
        2510  +
-._~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
        2511  +
host:example.amazonaws.com
        2512  +
        2513  +
host
        2514  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2443   2515   
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
 2444   2516   
new file mode 100644
 2445   2517   
index 0000000..41881e9
 2446         -
-- /dev/null
        2518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2447   2519   
@@ -0,0 +1 @@
        2520  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2448   2521   
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
 2449   2522   
new file mode 100644
 2450   2523   
index 0000000..3179076
 2451         -
-- /dev/null
        2524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2452   2525   
@@ -0,0 +1,3 @@
        2526  +
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
        2527  +
Host:example.amazonaws.com
        2528  +
 2453   2529   
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
 2454   2530   
new file mode 100644
 2455   2531   
index 0000000..6d675fc
 2456         -
-- /dev/null
        2532  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2457   2533   
@@ -0,0 +1,4 @@
        2534  +
AWS4-HMAC-SHA256
        2535  +
20150830T123600Z
        2536  +
20150830/us-east-1/service/aws4_request
        2537  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2458   2538   
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
 2459   2539   
similarity index 100%
 2460   2540   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2461   2541   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2462   2542   
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
 2463   2543   
new file mode 100644
 2464   2544   
index 0000000..0468d80
 2465         -
-- /dev/null
        2545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2466   2546   
@@ -0,0 +1,12 @@
        2547  +
{
        2548  +
    "credentials": {
        2549  +
        "access_key_id": "AKIDEXAMPLE",
        2550  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2551  +
    },
        2552  +
    "expiration_in_seconds": 3600,
        2553  +
    "normalize": true,
        2554  +
    "region": "us-east-1",
        2555  +
    "service": "service",
        2556  +
    "sign_body": false,
        2557  +
    "timestamp": "2015-08-30T12:36:00Z"
        2558  +
}
              \
 No newline at end of file
 2467   2559   
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
 2468   2560   
similarity index 100%
 2469   2561   
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
 2470   2562   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2471   2563   
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
 2472   2564   
new file mode 100644
 2473   2565   
index 0000000..87f295f
 2474         -
-- /dev/null
        2566  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2475   2567   
@@ -0,0 +1 @@
        2568  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2476   2569   
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
 2477   2570   
new file mode 100644
 2478   2571   
index 0000000..36b86e7
 2479         -
-- /dev/null
        2572  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2480   2573   
@@ -0,0 +1,5 @@
        2574  +
GET / HTTP/1.1
        2575  +
Host:example.amazonaws.com
        2576  +
X-Amz-Date:20150830T123600Z
        2577  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2578  +
 2481   2579   
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
 2482   2580   
similarity index 100%
 2483   2581   
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
 2484   2582   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2485   2583   
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
 2486   2584   
new file mode 100644
 2487   2585   
index 0000000..fb2420d
 2488         -
-- /dev/null
        2586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2489   2587   
@@ -0,0 +1,7 @@
        2588  +
GET
        2589  +
/
        2590  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2591  +
host:example.amazonaws.com
        2592  +
        2593  +
host
        2594  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2490   2595   
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
 2491   2596   
new file mode 100644
 2492   2597   
index 0000000..da5c905
 2493         -
-- /dev/null
        2598  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2494   2599   
@@ -0,0 +1 @@
        2600  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2495   2601   
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
 2496   2602   
new file mode 100644
 2497   2603   
index 0000000..eeb7a8f
 2498         -
-- /dev/null
        2604  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2499   2605   
@@ -0,0 +1,3 @@
        2606  +
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
        2607  +
Host:example.amazonaws.com
        2608  +
 2500   2609   
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
 2501   2610   
new file mode 100644
 2502   2611   
index 0000000..d837e67
 2503         -
-- /dev/null
        2612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2504   2613   
@@ -0,0 +1,4 @@
        2614  +
AWS4-HMAC-SHA256
        2615  +
20150830T123600Z
        2616  +
20150830/us-east-1/service/aws4_request
        2617  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2505   2618   
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
 2506   2619   
similarity index 100%
 2507   2620   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2508   2621   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2509   2622   
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
 2510   2623   
new file mode 100644
 2511   2624   
index 0000000..0468d80
 2512         -
-- /dev/null
        2625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2513   2626   
@@ -0,0 +1,12 @@
        2627  +
{
        2628  +
    "credentials": {
        2629  +
        "access_key_id": "AKIDEXAMPLE",
        2630  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2631  +
    },
        2632  +
    "expiration_in_seconds": 3600,
        2633  +
    "normalize": true,
        2634  +
    "region": "us-east-1",
        2635  +
    "service": "service",
        2636  +
    "sign_body": false,
        2637  +
    "timestamp": "2015-08-30T12:36:00Z"
        2638  +
}
              \
 No newline at end of file
 2514   2639   
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
 2515   2640   
similarity index 100%
 2516   2641   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2517   2642   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2518   2643   
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
 2519   2644   
new file mode 100644
 2520   2645   
index 0000000..19a2cc9
 2521         -
-- /dev/null
        2646  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2522   2647   
@@ -0,0 +1 @@
        2648  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2523   2649   
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
 2524   2650   
new file mode 100644
 2525   2651   
index 0000000..acb13ee
 2526         -
-- /dev/null
        2652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2527   2653   
@@ -0,0 +1,5 @@
        2654  +
GET /?ሴ=bar HTTP/1.1
        2655  +
Host:example.amazonaws.com
        2656  +
X-Amz-Date:20150830T123600Z
        2657  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2658  +
 2528   2659   
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
 2529   2660   
similarity index 100%
 2530   2661   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2531   2662   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2532   2663   
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
 2533   2664   
new file mode 100644
 2534   2665   
index 0000000..92cee62
 2535         -
-- /dev/null
        2666  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2536   2667   
@@ -0,0 +1,7 @@
        2668  +
GET
        2669  +
/
        2670  +
%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
        2671  +
host:example.amazonaws.com
        2672  +
        2673  +
host
        2674  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2537   2675   
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
 2538   2676   
new file mode 100644
 2539   2677   
index 0000000..c9e49de
 2540         -
-- /dev/null
        2678  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2541   2679   
@@ -0,0 +1 @@
        2680  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2542   2681   
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
 2543   2682   
new file mode 100644
 2544   2683   
index 0000000..8f4d8d0
 2545         -
-- /dev/null
        2684  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2546   2685   
@@ -0,0 +1,3 @@
        2686  +
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
        2687  +
Host:example.amazonaws.com
        2688  +
 2547   2689   
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
 2548   2690   
new file mode 100644
 2549   2691   
index 0000000..a6181dc
 2550         -
-- /dev/null
        2692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2551   2693   
@@ -0,0 +1,4 @@
        2694  +
AWS4-HMAC-SHA256
        2695  +
20150830T123600Z
        2696  +
20150830/us-east-1/service/aws4_request
        2697  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2552   2698   
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
 2553   2699   
similarity index 64%
 2554   2700   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2555   2701   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2556   2702   
index cc2757e..aff333a 100644
 2557         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2703  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2558   2704   
@@ -1,3 +1,2 @@
 2559   2705   
GET /?ሴ=bar HTTP/1.1
 2560   2706   
Host:example.amazonaws.com
 2561         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2562   2707   
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
 2563   2708   
similarity index 99%
 2564   2709   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2565   2710   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2566   2711   
index a457c8a..a334e18 100644
 2567   2712   
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
 2568   2713   
new file mode 100644
 2569   2714   
index 0000000..ccacdeb
 2570         -
-- /dev/null
        2715  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2571   2716   
@@ -0,0 +1,9 @@
        2717  +
GET
        2718  +
/
        2719  +
        2720  +
host:example.amazonaws.com
        2721  +
x-amz-date:20150830T123600Z
        2722  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2723  +
        2724  +
host;x-amz-date;x-amz-security-token
        2725  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2572   2726   
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
 2573   2727   
new file mode 100644
 2574   2728   
index 0000000..083e30d
 2575         -
-- /dev/null
        2729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2576   2730   
@@ -0,0 +1 @@
        2731  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2577   2732   
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
 2578   2733   
new file mode 100644
 2579   2734   
index 0000000..5287932
 2580         -
-- /dev/null
        2735  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2581   2736   
@@ -0,0 +1,6 @@
        2737  +
GET / HTTP/1.1
        2738  +
Host:example.amazonaws.com
        2739  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2740  +
X-Amz-Date:20150830T123600Z
        2741  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2742  +
 2582   2743   
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
 2583   2744   
new file mode 100644
 2584   2745   
index 0000000..742b880
 2585         -
-- /dev/null
        2746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2586   2747   
@@ -0,0 +1,4 @@
        2748  +
AWS4-HMAC-SHA256
        2749  +
20150830T123600Z
        2750  +
20150830/us-east-1/service/aws4_request
        2751  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2587   2752   
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
 2588   2753   
new file mode 100644
 2589   2754   
index 0000000..5e75179
 2590         -
-- /dev/null
        2755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2591   2756   
@@ -0,0 +1,7 @@
        2757  +
GET
        2758  +
/
        2759  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Security-Token=6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267&X-Amz-SignedHeaders=host
        2760  +
host:example.amazonaws.com
        2761  +
        2762  +
host
        2763  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2592   2764   
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
 2593   2765   
new file mode 100644
 2594   2766   
index 0000000..50b947f
 2595         -
-- /dev/null
        2767  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2596   2768   
@@ -0,0 +1 @@
        2769  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2597   2770   
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
 2598   2771   
new file mode 100644
 2599   2772   
index 0000000..aee910b
 2600         -
-- /dev/null
        2773  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2601   2774   
@@ -0,0 +1,3 @@
        2775  +
GET /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Security-Token=6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267&X-Amz-Signature=7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c HTTP/1.1
        2776  +
Host:example.amazonaws.com
        2777  +
 2602   2778   
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
 2603   2779   
new file mode 100644
 2604   2780   
index 0000000..04a6c17
 2605         -
-- /dev/null
        2781  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2606   2782   
@@ -0,0 +1,4 @@
        2783  +
AWS4-HMAC-SHA256
        2784  +
20150830T123600Z
        2785  +
20150830/us-east-1/service/aws4_request
        2786  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2607   2787   
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
 2608   2788   
similarity index 100%
 2609   2789   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2610   2790   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2611   2791   
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
 2612   2792   
new file mode 100644
 2613   2793   
index 0000000..0468d80
 2614         -
-- /dev/null
        2794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2615   2795   
@@ -0,0 +1,12 @@
        2796  +
{
        2797  +
    "credentials": {
        2798  +
        "access_key_id": "AKIDEXAMPLE",
        2799  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2800  +
    },
        2801  +
    "expiration_in_seconds": 3600,
        2802  +
    "normalize": true,
        2803  +
    "region": "us-east-1",
        2804  +
    "service": "service",
        2805  +
    "sign_body": false,
        2806  +
    "timestamp": "2015-08-30T12:36:00Z"
        2807  +
}
              \
 No newline at end of file
 2616   2808   
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
 2617   2809   
similarity index 100%
 2618   2810   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2619   2811   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2620   2812   
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
 2621   2813   
new file mode 100644
 2622   2814   
index 0000000..87f295f
 2623         -
-- /dev/null
        2815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2624   2816   
@@ -0,0 +1 @@
        2817  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2625   2818   
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
 2626   2819   
new file mode 100644
 2627   2820   
index 0000000..36b86e7
 2628         -
-- /dev/null
        2821  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2629   2822   
@@ -0,0 +1,5 @@
        2823  +
GET / HTTP/1.1
        2824  +
Host:example.amazonaws.com
        2825  +
X-Amz-Date:20150830T123600Z
        2826  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2827  +
 2630   2828   
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
 2631   2829   
similarity index 100%
 2632   2830   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2633   2831   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2634   2832   
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
 2635   2833   
new file mode 100644
 2636   2834   
index 0000000..fb2420d
 2637         -
-- /dev/null
        2835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2638   2836   
@@ -0,0 +1,7 @@
        2837  +
GET
        2838  +
/
        2839  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        2840  +
host:example.amazonaws.com
        2841  +
        2842  +
host
        2843  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2639   2844   
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
 2640   2845   
new file mode 100644
 2641   2846   
index 0000000..da5c905
 2642         -
-- /dev/null
        2847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2643   2848   
@@ -0,0 +1 @@
        2849  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2644   2850   
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
 2645   2851   
new file mode 100644
 2646   2852   
index 0000000..eeb7a8f
 2647         -
-- /dev/null
        2853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2648   2854   
@@ -0,0 +1,3 @@
        2855  +
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
        2856  +
Host:example.amazonaws.com
        2857  +
 2649   2858   
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
 2650   2859   
new file mode 100644
 2651   2860   
index 0000000..d837e67
 2652         -
-- /dev/null
        2861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2653   2862   
@@ -0,0 +1,4 @@
        2863  +
AWS4-HMAC-SHA256
        2864  +
20150830T123600Z
        2865  +
20150830/us-east-1/service/aws4_request
        2866  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2654   2867   
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
 2655   2868   
similarity index 100%
 2656   2869   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2657   2870   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2658   2871   
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
 2659   2872   
new file mode 100644
 2660   2873   
index 0000000..0468d80
 2661         -
-- /dev/null
        2874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2662   2875   
@@ -0,0 +1,12 @@
        2876  +
{
        2877  +
    "credentials": {
        2878  +
        "access_key_id": "AKIDEXAMPLE",
        2879  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2880  +
    },
        2881  +
    "expiration_in_seconds": 3600,
        2882  +
    "normalize": true,
        2883  +
    "region": "us-east-1",
        2884  +
    "service": "service",
        2885  +
    "sign_body": false,
        2886  +
    "timestamp": "2015-08-30T12:36:00Z"
        2887  +
}
              \
 No newline at end of file
 2663   2888   
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
 2664   2889   
similarity index 100%
 2665   2890   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2666   2891   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2667   2892   
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
 2668   2893   
new file mode 100644
 2669   2894   
index 0000000..629487f
 2670         -
-- /dev/null
        2895  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2671   2896   
@@ -0,0 +1 @@
        2897  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2672   2898   
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
 2673   2899   
new file mode 100644
 2674   2900   
index 0000000..0d99b1c
 2675         -
-- /dev/null
        2901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2676   2902   
@@ -0,0 +1,5 @@
        2903  +
POST / HTTP/1.1
        2904  +
Host:example.amazonaws.com
        2905  +
X-Amz-Date:20150830T123600Z
        2906  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2907  +
 2677   2908   
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
 2678   2909   
similarity index 100%
 2679   2910   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2680   2911   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2681   2912   
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
 2682   2913   
new file mode 100644
 2683   2914   
index 0000000..d3341e7
 2684         -
-- /dev/null
        2915  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2685   2916   
@@ -0,0 +1,7 @@
        2917  +
POST
        2918  +
/
        2919  +
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
        2920  +
host:example.amazonaws.com
        2921  +
        2922  +
host
        2923  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2686   2924   
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
 2687   2925   
new file mode 100644
 2688   2926   
index 0000000..79f7e0d
 2689         -
-- /dev/null
        2927  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2690   2928   
@@ -0,0 +1 @@
        2929  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2691   2930   
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
 2692   2931   
new file mode 100644
 2693   2932   
index 0000000..94f1b21
 2694         -
-- /dev/null
        2933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2695   2934   
@@ -0,0 +1,3 @@
        2935  +
POST /?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b HTTP/1.1
        2936  +
Host:example.amazonaws.com
        2937  +
 2696   2938   
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
 2697   2939   
new file mode 100644
 2698   2940   
index 0000000..e8f335b
 2699         -
-- /dev/null
        2941  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2700   2942   
@@ -0,0 +1,4 @@
        2943  +
AWS4-HMAC-SHA256
        2944  +
20150830T123600Z
        2945  +
20150830/us-east-1/service/aws4_request
        2946  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2701   2947   
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
 2702   2948   
similarity index 100%
 2703   2949   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2704   2950   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2705   2951   
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
 2706   2952   
new file mode 100644
 2707   2953   
index 0000000..0468d80
 2708         -
-- /dev/null
        2954  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2709   2955   
@@ -0,0 +1,12 @@
        2956  +
{
        2957  +
    "credentials": {
        2958  +
        "access_key_id": "AKIDEXAMPLE",
        2959  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2960  +
    },
        2961  +
    "expiration_in_seconds": 3600,
        2962  +
    "normalize": true,
        2963  +
    "region": "us-east-1",
        2964  +
    "service": "service",
        2965  +
    "sign_body": false,
        2966  +
    "timestamp": "2015-08-30T12:36:00Z"
        2967  +
}
              \
 No newline at end of file
 2710   2968   
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
 2711   2969   
similarity index 100%
 2712   2970   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2713   2971   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2714   2972   
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
 2715   2973   
new file mode 100644
 2716   2974   
index 0000000..e4e6428
 2717         -
-- /dev/null
        2975  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2718   2976   
@@ -0,0 +1 @@
        2977  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2719   2978   
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
 2720   2979   
new file mode 100644
 2721   2980   
index 0000000..e3778f5
 2722         -
-- /dev/null
        2981  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2723   2982   
@@ -0,0 +1,6 @@
        2983  +
POST / HTTP/1.1
        2984  +
Host:example.amazonaws.com
        2985  +
My-Header1:value1
        2986  +
X-Amz-Date:20150830T123600Z
        2987  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2988  +
 2724   2989   
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
 2725   2990   
similarity index 100%
 2726   2991   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2727   2992   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2728   2993   
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
 2729   2994   
new file mode 100644
 2730   2995   
index 0000000..bd7c937
 2731         -
-- /dev/null
        2996  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2732   2997   
@@ -0,0 +1,8 @@
        2998  +
POST
        2999  +
/
        3000  +
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
        3001  +
host:example.amazonaws.com
        3002  +
my-header1:value1
        3003  +
        3004  +
host;my-header1
        3005  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2733   3006   
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
 2734   3007   
new file mode 100644
 2735   3008   
index 0000000..0416f13
 2736         -
-- /dev/null
        3009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2737   3010   
@@ -0,0 +1 @@
        3011  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2738   3012   
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
 2739   3013   
new file mode 100644
 2740   3014   
index 0000000..5e6522f
 2741         -
-- /dev/null
        3015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2742   3016   
@@ -0,0 +1,4 @@
        3017  +
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
        3018  +
Host:example.amazonaws.com
        3019  +
My-Header1:value1
        3020  +
 2743   3021   
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
 2744   3022   
new file mode 100644
 2745   3023   
index 0000000..d06d1df
 2746         -
-- /dev/null
        3024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2747   3025   
@@ -0,0 +1,4 @@
        3026  +
AWS4-HMAC-SHA256
        3027  +
20150830T123600Z
        3028  +
20150830/us-east-1/service/aws4_request
        3029  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2748   3030   
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
 2749   3031   
similarity index 100%
 2750   3032   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2751   3033   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2752   3034   
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
 2753   3035   
new file mode 100644
 2754   3036   
index 0000000..0468d80
 2755         -
-- /dev/null
        3037  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2756   3038   
@@ -0,0 +1,12 @@
        3039  +
{
        3040  +
    "credentials": {
        3041  +
        "access_key_id": "AKIDEXAMPLE",
        3042  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3043  +
    },
        3044  +
    "expiration_in_seconds": 3600,
        3045  +
    "normalize": true,
        3046  +
    "region": "us-east-1",
        3047  +
    "service": "service",
        3048  +
    "sign_body": false,
        3049  +
    "timestamp": "2015-08-30T12:36:00Z"
        3050  +
}
              \
 No newline at end of file
 2757   3051   
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
 2758   3052   
similarity index 100%
 2759   3053   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2760   3054   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2761   3055   
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
 2762   3056   
new file mode 100644
 2763   3057   
index 0000000..bb3809c
 2764         -
-- /dev/null
        3058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2765   3059   
@@ -0,0 +1 @@
        3060  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2766   3061   
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
 2767   3062   
new file mode 100644
 2768   3063   
index 0000000..10f6761
 2769         -
-- /dev/null
        3064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2770   3065   
@@ -0,0 +1,6 @@
        3066  +
POST / HTTP/1.1
        3067  +
Host:example.amazonaws.com
        3068  +
My-Header1:VALUE1
        3069  +
X-Amz-Date:20150830T123600Z
        3070  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        3071  +
 2771   3072   
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
 2772   3073   
similarity index 100%
 2773   3074   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2774   3075   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2775   3076   
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
 2776   3077   
new file mode 100644
 2777   3078   
index 0000000..f84856f
 2778         -
-- /dev/null
        3079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2779   3080   
@@ -0,0 +1,8 @@
        3081  +
POST
        3082  +
/
        3083  +
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
        3084  +
host:example.amazonaws.com
        3085  +
my-header1:VALUE1
        3086  +
        3087  +
host;my-header1
        3088  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2780   3089   
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
 2781   3090   
new file mode 100644
 2782   3091   
index 0000000..a9d3cac
 2783         -
-- /dev/null
        3092  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2784   3093   
@@ -0,0 +1 @@
        3094  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2785   3095   
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
 2786   3096   
new file mode 100644
 2787   3097   
index 0000000..cf96c7c
 2788         -
-- /dev/null
        3098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2789   3099   
@@ -0,0 +1,4 @@
        3100  +
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
        3101  +
Host:example.amazonaws.com
        3102  +
My-Header1:VALUE1
        3103  +
 2790   3104   
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
 2791   3105   
new file mode 100644
 2792   3106   
index 0000000..47ef566
 2793         -
-- /dev/null
        3107  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2794   3108   
@@ -0,0 +1,4 @@
        3109  +
AWS4-HMAC-SHA256
        3110  +
20150830T123600Z
        3111  +
20150830/us-east-1/service/aws4_request
        3112  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2795   3113   
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
 2796   3114   
similarity index 100%
 2797   3115   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2798   3116   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2799   3117   
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
 2800   3118   
similarity index 100%
 2801   3119   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2802   3120   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2803   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.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2804   3122   
similarity index 100%
 2805   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.creq
 2806   3124   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2807   3125   
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
 2808   3126   
new file mode 100644
 2809   3127   
index 0000000..629487f
 2810         -
-- /dev/null
        3128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2811   3129   
@@ -0,0 +1 @@
        3130  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2812   3131   
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
 2813   3132   
similarity index 67%
 2814   3133   
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
 2815   3134   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2816   3135   
index 291ed07..f96ff9e 100644
 2817         -
-- 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
        3136  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2818   3137   
@@ -1,5 +1,6 @@
 2819   3138   
POST / HTTP/1.1
 2820   3139   
Host:example.amazonaws.com
 2821         -
X-Amz-Date:20150830T123600Z
 2822   3140   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2823         -
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
        3141  +
X-Amz-Date:20150830T123600Z
        3142  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3143  +
 2824   3144   
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
 2825   3145   
similarity index 100%
 2826   3146   
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
 2827   3147   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2828   3148   
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
 2829   3149   
new file mode 100644
 2830   3150   
index 0000000..d3341e7
 2831         -
-- /dev/null
        3151  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2832   3152   
@@ -0,0 +1,7 @@
        3153  +
POST
        3154  +
/
        3155  +
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
        3156  +
host:example.amazonaws.com
        3157  +
        3158  +
host
        3159  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2833   3160   
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
 2834   3161   
new file mode 100644
 2835   3162   
index 0000000..79f7e0d
 2836         -
-- /dev/null
        3163  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2837   3164   
@@ -0,0 +1 @@
        3165  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2838   3166   
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
 2839   3167   
new file mode 100644
 2840   3168   
index 0000000..4983268
 2841         -
-- /dev/null
        3169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2842   3170   
@@ -0,0 +1,3 @@
        3171  +
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
        3172  +
Host:example.amazonaws.com
        3173  +
 2843   3174   
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
 2844   3175   
new file mode 100644
 2845   3176   
index 0000000..e8f335b
 2846         -
-- /dev/null
        3177  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2847   3178   
@@ -0,0 +1,4 @@
        3179  +
AWS4-HMAC-SHA256
        3180  +
20150830T123600Z
        3181  +
20150830/us-east-1/service/aws4_request
        3182  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2848   3183   
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
 2849   3184   
similarity index 100%
 2850   3185   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2851   3186   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2852   3187   
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
 2853   3188   
similarity index 100%
 2854   3189   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2855   3190   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2856   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.creq b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2857   3192   
similarity index 100%
 2858   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.creq
 2859   3194   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2860   3195   
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
 2861   3196   
new file mode 100644
 2862   3197   
index 0000000..85a7c29
 2863         -
-- /dev/null
        3198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2864   3199   
@@ -0,0 +1 @@
        3200  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2865   3201   
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
 2866   3202   
similarity index 65%
 2867   3203   
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
 2868   3204   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2869   3205   
index 37b2f04..4d0b143 100644
 2870         -
-- 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
        3206  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2871   3207   
@@ -1,5 +1,6 @@
 2872   3208   
POST / HTTP/1.1
 2873   3209   
Host:example.amazonaws.com
 2874         -
X-Amz-Date:20150830T123600Z
 2875   3210   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2876         -
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
        3211  +
X-Amz-Date:20150830T123600Z
        3212  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3213  +
 2877   3214   
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
 2878   3215   
similarity index 100%
 2879   3216   
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
 2880   3217   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2881   3218   
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
 2882   3219   
new file mode 100644
 2883   3220   
index 0000000..57a7bc3
 2884         -
-- /dev/null
        3221  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2885   3222   
@@ -0,0 +1,7 @@
        3223  +
POST
        3224  +
/
        3225  +
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
        3226  +
host:example.amazonaws.com
        3227  +
        3228  +
host
        3229  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2886   3230   
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
 2887   3231   
new file mode 100644
 2888   3232   
index 0000000..eb905d2
 2889         -
-- /dev/null
        3233  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2890   3234   
@@ -0,0 +1 @@
        3235  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2891   3236   
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
 2892   3237   
new file mode 100644
 2893   3238   
index 0000000..1d80ec0
 2894         -
-- /dev/null
        3239  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2895   3240   
@@ -0,0 +1,3 @@
        3241  +
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
        3242  +
Host:example.amazonaws.com
        3243  +
 2896   3244   
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
 2897   3245   
new file mode 100644
 2898   3246   
index 0000000..bd0239a
 2899         -
-- /dev/null
        3247  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2900   3248   
@@ -0,0 +1,4 @@
        3249  +
AWS4-HMAC-SHA256
        3250  +
20150830T123600Z
        3251  +
20150830/us-east-1/service/aws4_request
        3252  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2901   3253   
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
 2902   3254   
similarity index 100%
 2903   3255   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2904   3256   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2905   3257   
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
 2906   3258   
new file mode 100644
 2907   3259   
index 0000000..0468d80
 2908         -
-- /dev/null
        3260  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2909   3261   
@@ -0,0 +1,12 @@
        3262  +
{
        3263  +
    "credentials": {
        3264  +
        "access_key_id": "AKIDEXAMPLE",
        3265  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3266  +
    },
        3267  +
    "expiration_in_seconds": 3600,
        3268  +
    "normalize": true,
        3269  +
    "region": "us-east-1",
        3270  +
    "service": "service",
        3271  +
    "sign_body": false,
        3272  +
    "timestamp": "2015-08-30T12:36:00Z"
        3273  +
}
              \
 No newline at end of file
 2910   3274   
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
 2911   3275   
similarity index 100%
 2912   3276   
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
 2913   3277   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2914   3278   
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
 2915   3279   
new file mode 100644
 2916   3280   
index 0000000..80ed433
 2917         -
-- /dev/null
        3281  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2918   3282   
@@ -0,0 +1 @@
        3283  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2919   3284   
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
 2920   3285   
new file mode 100644
 2921   3286   
index 0000000..4e614f8
 2922         -
-- /dev/null
        3287  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2923   3288   
@@ -0,0 +1,5 @@
        3289  +
POST /?Param1=value1 HTTP/1.1
        3290  +
Host:example.amazonaws.com
        3291  +
X-Amz-Date:20150830T123600Z
        3292  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3293  +
 2924   3294   
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
 2925   3295   
similarity index 100%
 2926   3296   
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
 2927   3297   
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
 2928   3298   
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
 2929   3299   
new file mode 100644
 2930   3300   
index 0000000..be66403
 2931         -
-- /dev/null
        3301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2932   3302   
@@ -0,0 +1,7 @@
        3303  +
POST
        3304  +
/
        3305  +
Param1=value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host
        3306  +
host:example.amazonaws.com
        3307  +
        3308  +
host
        3309  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2933   3310   
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
 2934   3311   
new file mode 100644
 2935   3312   
index 0000000..20fd32b
 2936         -
-- /dev/null
        3313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2937   3314   
@@ -0,0 +1 @@
        3315  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2938   3316   
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
 2939   3317   
new file mode 100644
 2940   3318   
index 0000000..d1148d0
 2941         -
-- /dev/null
        3319  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2942   3320   
@@ -0,0 +1,3 @@
        3321  +
POST /?Param1=value1&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Signature=a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682 HTTP/1.1
        3322  +
Host:example.amazonaws.com
        3323  +
 2943   3324   
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
 2944   3325   
new file mode 100644
 2945   3326   
index 0000000..1a77103
 2946         -
-- /dev/null
        3327  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2947   3328   
@@ -0,0 +1,4 @@
        3329  +
AWS4-HMAC-SHA256
        3330  +
20150830T123600Z
        3331  +
20150830/us-east-1/service/aws4_request
        3332  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2948   3333   
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
 2949   3334   
similarity index 100%
 2950   3335   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2951   3336   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2952   3337   
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
 2953   3338   
new file mode 100644
 2954   3339   
index 0000000..0468d80
 2955         -
-- /dev/null
        3340  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2956   3341   
@@ -0,0 +1,12 @@
        3342  +
{
        3343  +
    "credentials": {
        3344  +
        "access_key_id": "AKIDEXAMPLE",
        3345  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3346  +
    },
        3347  +
    "expiration_in_seconds": 3600,
        3348  +
    "normalize": true,
        3349  +
    "region": "us-east-1",
        3350  +
    "service": "service",
        3351  +
    "sign_body": false,
        3352  +
    "timestamp": "2015-08-30T12:36:00Z"
        3353  +
}
              \
 No newline at end of file
 2957   3354   
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
 2958   3355   
similarity index 100%
 2959   3356   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2960   3357   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2961   3358   
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
 2962   3359   
new file mode 100644
 2963   3360   
index 0000000..80ed433
 2964         -
-- /dev/null
        3361  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2965   3362   
@@ -0,0 +1 @@
        3363  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2966   3364   
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
 2967   3365   
new file mode 100644
 2968   3366   
index 0000000..4e614f8
 2969         -
-- /dev/null
        3367  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2970   3368   
@@ -0,0 +1,5 @@
        3369  +
POST /?Param1=value1 HTTP/1.1
        3370  +
Host:example.amazonaws.com
        3371  +
X-Amz-Date:20150830T123600Z
        3372  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3373  +
 2971   3374   
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
 2972   3375   
similarity index 100%
 2973   3376   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2974   3377   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2975   3378   
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
 2976   3379   
new file mode 100644
 2977   3380   
index 0000000..be66403
 2978         -
-- /dev/null
        3381  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2979   3382   
@@ -0,0 +1,7 @@
        3383  +
POST
        3384  +
/
        3385  +
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
        3386  +
host:example.amazonaws.com
        3387  +
        3388  +
host
        3389  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2980   3390   
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
 2981   3391   
new file mode 100644
 2982   3392   
index 0000000..20fd32b
 2983         -
-- /dev/null
        3393  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2984   3394   
@@ -0,0 +1 @@
        3395  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2985   3396   
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
 2986   3397   
new file mode 100644
 2987   3398   
index 0000000..d1148d0
 2988         -
-- /dev/null
        3399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2989   3400   
@@ -0,0 +1,3 @@
        3401  +
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
        3402  +
Host:example.amazonaws.com
        3403  +
 2990   3404   
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
 2991   3405   
new file mode 100644
 2992   3406   
index 0000000..1a77103
 2993         -
-- /dev/null
        3407  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2994   3408   
@@ -0,0 +1,4 @@
        3409  +
AWS4-HMAC-SHA256
        3410  +
20150830T123600Z
        3411  +
20150830/us-east-1/service/aws4_request
        3412  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2995   3413   
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
 2996   3414   
similarity index 100%
 2997   3415   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2998   3416   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2999   3417   
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
 3000   3418   
new file mode 100644
 3001   3419   
index 0000000..0468d80
 3002         -
-- /dev/null
        3420  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 3003   3421   
@@ -0,0 +1,12 @@
        3422  +
{
        3423  +
    "credentials": {
        3424  +
        "access_key_id": "AKIDEXAMPLE",
        3425  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3426  +
    },
        3427  +
    "expiration_in_seconds": 3600,
        3428  +
    "normalize": true,
        3429  +
    "region": "us-east-1",
        3430  +
    "service": "service",
        3431  +
    "sign_body": false,
        3432  +
    "timestamp": "2015-08-30T12:36:00Z"
        3433  +
}
              \
 No newline at end of file
 3004   3434   
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
 3005   3435   
similarity index 100%
 3006   3436   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 3007   3437   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 3008   3438   
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
 3009   3439   
new file mode 100644
 3010   3440   
index 0000000..629487f
 3011         -
-- /dev/null
        3441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 3012   3442   
@@ -0,0 +1 @@
        3443  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 3013   3444   
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
 3014   3445   
new file mode 100644
 3015   3446   
index 0000000..0d99b1c
 3016         -
-- /dev/null
        3447  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 3017   3448   
@@ -0,0 +1,5 @@
        3449  +
POST / HTTP/1.1
        3450  +
Host:example.amazonaws.com
        3451  +
X-Amz-Date:20150830T123600Z
        3452  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3453  +
 3018   3454   
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
 3019   3455   
similarity index 100%
 3020   3456   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 3021   3457   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 3022   3458   
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
 3023   3459   
new file mode 100644
 3024   3460   
index 0000000..d3341e7
 3025         -
-- /dev/null
        3461  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 3026   3462   
@@ -0,0 +1,7 @@
        3463  +
POST
        3464  +
/
        3465  +
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
        3466  +
host:example.amazonaws.com
        3467  +
        3468  +
host
        3469  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3027   3470   
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
 3028   3471   
new file mode 100644
 3029   3472   
index 0000000..79f7e0d
 3030         -
-- /dev/null
        3473  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 3031   3474   
@@ -0,0 +1 @@
        3475  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 3032   3476   
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
 3033   3477   
new file mode 100644
 3034   3478   
index 0000000..94f1b21
 3035         -
-- /dev/null
        3479  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 3036   3480   
@@ -0,0 +1,3 @@
        3481  +
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
        3482  +
Host:example.amazonaws.com
        3483  +
 3037   3484   
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
 3038   3485   
new file mode 100644
 3039   3486   
index 0000000..e8f335b
 3040         -
-- /dev/null
        3487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 3041   3488   
@@ -0,0 +1,4 @@
        3489  +
AWS4-HMAC-SHA256
        3490  +
20150830T123600Z
        3491  +
20150830/us-east-1/service/aws4_request
        3492  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 3042   3493   
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
 3043   3494   
similarity index 100%
 3044   3495   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 3045   3496   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 3046   3497   
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
 3047   3498   
similarity index 99%
 3048   3499   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 3049   3500   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 3050   3501   
index fc4bce6..0db1df1 100644
 3051   3502   
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
 3052   3503   
new file mode 100644
 3053   3504   
index 0000000..c218fdf
 3054         -
-- /dev/null
        3505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 3055   3506   
@@ -0,0 +1,11 @@
        3507  +
POST
        3508  +
/
        3509  +
        3510  +
content-length:13
        3511  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3512  +
host:example.amazonaws.com
        3513  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3514  +
x-amz-date:20150830T123600Z
        3515  +
        3516  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3517  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3056   3518   
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
 3057   3519   
new file mode 100644
 3058   3520   
index 0000000..836aa8b
 3059         -
-- /dev/null
        3521  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 3060   3522   
@@ -0,0 +1 @@
        3523  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 3061   3524   
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
 3062   3525   
new file mode 100644
 3063   3526   
index 0000000..9262d53
 3064         -
-- /dev/null
        3527  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 3065   3528   
@@ -0,0 +1,9 @@
        3529  +
POST / HTTP/1.1
        3530  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3531  +
Host:example.amazonaws.com
        3532  +
Content-Length:13
        3533  +
X-Amz-Date:20150830T123600Z
        3534  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3535  +
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
        3536  +
        3537  +
Param1=value1
              \
 No newline at end of file
 3066   3538   
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
 3067   3539   
new file mode 100644
 3068   3540   
index 0000000..ddbdccc
 3069         -
-- /dev/null
        3541  +
++ 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
 3070   3542   
@@ -0,0 +1,4 @@
        3543  +
AWS4-HMAC-SHA256
        3544  +
20150830T123600Z
        3545  +
20150830/us-east-1/service/aws4_request
        3546  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 3071   3547   
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
 3072   3548   
new file mode 100644
 3073   3549   
index 0000000..596a579
 3074         -
-- /dev/null
        3550  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 3075   3551   
@@ -0,0 +1,9 @@
        3552  +
POST
        3553  +
/
        3554  +
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
        3555  +
content-length:13
        3556  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3557  +
host:example.amazonaws.com
        3558  +
        3559  +
content-length;content-type;host
        3560  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3076   3561   
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
 3077   3562   
new file mode 100644
 3078   3563   
index 0000000..bc85cd8
 3079         -
-- /dev/null
        3564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 3080   3565   
@@ -0,0 +1 @@
        3566  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 3081   3567   
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
 3082   3568   
new file mode 100644
 3083   3569   
index 0000000..16b59e5
 3084         -
-- /dev/null
        3570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 3085   3571   
@@ -0,0 +1,6 @@
        3572  +
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
        3573  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3574  +
Host:example.amazonaws.com
        3575  +
Content-Length:13
        3576  +
        3577  +
Param1=value1
              \
 No newline at end of file
 3086   3578   
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
 3087   3579   
new file mode 100644
 3088   3580   
index 0000000..50074af
 3089         -
-- /dev/null
        3581  +
++ 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
 3090   3582   
@@ -0,0 +1,4 @@
        3583  +
AWS4-HMAC-SHA256
        3584  +
20150830T123600Z
        3585  +
20150830/us-east-1/service/aws4_request
        3586  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 3091   3587   
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
 3092   3588   
similarity index 89%
 3093   3589   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 3094   3590   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 3095   3591   
index b711c25..8289eaa 100644
 3096   3592   
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
 3097   3593   
similarity index 99%
 3098   3594   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 3099   3595   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 3100   3596   
index fc4bce6..0db1df1 100644
 3101   3597   
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
 3102   3598   
new file mode 100644
 3103   3599   
index 0000000..4d116a5
 3104         -
-- /dev/null
        3600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 3105   3601   
@@ -0,0 +1,11 @@
        3602  +
POST
        3603  +
/
        3604  +
        3605  +
content-length:13
        3606  +
content-type:application/x-www-form-urlencoded
        3607  +
host:example.amazonaws.com
        3608  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3609  +
x-amz-date:20150830T123600Z
        3610  +
        3611  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3612  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3106   3613   
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
 3107   3614   
new file mode 100644
 3108   3615   
index 0000000..0d2ac37
 3109         -
-- /dev/null
        3616  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 3110   3617   
@@ -0,0 +1 @@
        3618  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 3111   3619   
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
 3112   3620   
new file mode 100644
 3113   3621   
index 0000000..bd5e49c
 3114         -
-- /dev/null
        3622  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 3115   3623   
@@ -0,0 +1,9 @@
        3624  +
POST / HTTP/1.1
        3625  +
Content-Type:application/x-www-form-urlencoded
        3626  +
Host:example.amazonaws.com
        3627  +
Content-Length:13
        3628  +
X-Amz-Date:20150830T123600Z
        3629  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3630  +
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
        3631  +
        3632  +
Param1=value1
              \
 No newline at end of file
 3116   3633   
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
 3117   3634   
new file mode 100644
 3118   3635   
index 0000000..f1c599c
 3119         -
-- /dev/null
        3636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 3120   3637   
@@ -0,0 +1,4 @@
        3638  +
AWS4-HMAC-SHA256
        3639  +
20150830T123600Z
        3640  +
20150830/us-east-1/service/aws4_request
        3641  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 3121   3642   
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
 3122   3643   
new file mode 100644
 3123   3644   
index 0000000..1fc1bb7
 3124         -
-- /dev/null
        3645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 3125   3646   
@@ -0,0 +1,9 @@
        3647  +
POST
        3648  +
/
        3649  +
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
        3650  +
content-length:13
        3651  +
content-type:application/x-www-form-urlencoded
        3652  +
host:example.amazonaws.com
        3653  +
        3654  +
content-length;content-type;host
        3655  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3126   3656   
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
 3127   3657   
new file mode 100644
 3128   3658   
index 0000000..98c91b3
 3129         -
-- /dev/null
        3659  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 3130   3660   
@@ -0,0 +1 @@
        3661  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 3131   3662   
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
 3132   3663   
new file mode 100644
 3133   3664   
index 0000000..055cd7a
 3134         -
-- /dev/null
        3665  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 3135   3666   
@@ -0,0 +1,6 @@
        3667  +
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
        3668  +
Content-Type:application/x-www-form-urlencoded
        3669  +
Host:example.amazonaws.com
        3670  +
Content-Length:13
        3671  +
        3672  +
Param1=value1
              \
 No newline at end of file
 3136   3673   
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
 3137   3674   
new file mode 100644
 3138   3675   
index 0000000..db7fc27
 3139         -
-- /dev/null
        3676  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 3140   3677   
@@ -0,0 +1,4 @@
        3678  +
AWS4-HMAC-SHA256
        3679  +
20150830T123600Z
        3680  +
20150830/us-east-1/service/aws4_request
        3681  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 3141   3682   
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
 3142   3683   
similarity index 88%
 3143   3684   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 3144   3685   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3145   3686   
index 0091102..760b2d3 100644
 3146   3687   
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
 3147   3688   
new file mode 100644
 3148   3689   
index 0000000..0468d80
 3149         -
-- /dev/null
        3690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 3150   3691   
@@ -0,0 +1,12 @@
        3692  +
{
        3693  +
    "credentials": {
        3694  +
        "access_key_id": "AKIDEXAMPLE",
        3695  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3696  +
    },
        3697  +
    "expiration_in_seconds": 3600,
        3698  +
    "normalize": true,
        3699  +
    "region": "us-east-1",
        3700  +
    "service": "service",
        3701  +
    "sign_body": false,
        3702  +
    "timestamp": "2015-08-30T12:36:00Z"
        3703  +
}
              \
 No newline at end of file
 3151   3704   
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
 3152   3705   
similarity index 99%
 3153   3706   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 3154   3707   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3155   3708   
index ccb5f43..1bc448e 100644
 3156   3709   
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
 3157   3710   
new file mode 100644
 3158   3711   
index 0000000..489c182
 3159         -
-- /dev/null
        3712  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 3160   3713   
@@ -0,0 +1 @@
        3714  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 3161   3715   
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
 3162   3716   
new file mode 100644
 3163   3717   
index 0000000..e1b8dbf
 3164         -
-- /dev/null
        3718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 3165   3719   
@@ -0,0 +1,9 @@
        3720  +
GET / HTTP/1.1
        3721  +
Host:example.amazonaws.com
        3722  +
My-Header1:value2
        3723  +
My-Header1:value2
        3724  +
My-Header1:value1
        3725  +
X-Amz-Date:20150830T123600Z
        3726  +
X-Amz-Region-Set:us-east-1
        3727  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3728  +
 3166   3729   
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
 3167   3730   
similarity index 99%
 3168   3731   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 3169   3732   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3170   3733   
index 8783461..bfc4619 100644
 3171   3734   
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
 3172   3735   
new file mode 100644
 3173   3736   
index 0000000..379dcb2
 3174         -
-- /dev/null
        3737  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3175   3738   
@@ -0,0 +1,4 @@
        3739  +
{
        3740  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3741  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3742  +
}
 3176   3743   
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
 3177   3744   
similarity index 99%
 3178   3745   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3179   3746   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3180   3747   
index 9561297..c05c3f5 100644
 3181   3748   
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
 3182   3749   
new file mode 100644
 3183   3750   
index 0000000..de9a4c3
 3184         -
-- /dev/null
        3751  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3185   3752   
@@ -0,0 +1 @@
        3753  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3186   3754   
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
 3187   3755   
new file mode 100644
 3188   3756   
index 0000000..6c6b8c4
 3189         -
-- /dev/null
        3757  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3190   3758   
@@ -0,0 +1,6 @@
        3759  +
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
        3760  +
Host:example.amazonaws.com
        3761  +
My-Header1:value2
        3762  +
My-Header1:value2
        3763  +
My-Header1:value1
        3764  +
 3191   3765   
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
 3192   3766   
similarity index 99%
 3193   3767   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3194   3768   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3195   3769   
index 3140f6f..4eef106 100644
 3196   3770   
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
 3197   3771   
similarity index 78%
 3198   3772   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3199   3773   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3200   3774   
index 08a0364..40455ce 100644
 3201         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3202   3776   
@@ -1,6 +1,5 @@
 3203   3777   
GET / HTTP/1.1
 3204   3778   
Host:example.amazonaws.com
 3205   3779   
My-Header1:value2
 3206   3780   
My-Header1:value2
 3207   3781   
My-Header1:value1
 3208         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3209   3782   
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
 3210   3783   
new file mode 100644
 3211   3784   
index 0000000..0468d80
 3212         -
-- /dev/null
        3785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3213   3786   
@@ -0,0 +1,12 @@
        3787  +
{
        3788  +
    "credentials": {
        3789  +
        "access_key_id": "AKIDEXAMPLE",
        3790  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3791  +
    },
        3792  +
    "expiration_in_seconds": 3600,
        3793  +
    "normalize": true,
        3794  +
    "region": "us-east-1",
        3795  +
    "service": "service",
        3796  +
    "sign_body": false,
        3797  +
    "timestamp": "2015-08-30T12:36:00Z"
        3798  +
}
              \
 No newline at end of file
 3214   3799   
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
 3215   3800   
new file mode 100644
 3216   3801   
index 0000000..69526cd
 3217         -
-- /dev/null
        3802  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3218   3803   
@@ -0,0 +1,10 @@
        3804  +
GET
        3805  +
/
        3806  +
        3807  +
host:example.amazonaws.com
        3808  +
my-header1:value1 value2 value3
        3809  +
x-amz-date:20150830T123600Z
        3810  +
x-amz-region-set:us-east-1
        3811  +
        3812  +
host;my-header1;x-amz-date;x-amz-region-set
        3813  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3219   3814   
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
 3220   3815   
new file mode 100644
 3221   3816   
index 0000000..d51b4f3
 3222         -
-- /dev/null
        3817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3223   3818   
@@ -0,0 +1 @@
        3819  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3224   3820   
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
 3225   3821   
new file mode 100644
 3226   3822   
index 0000000..8131420
 3227         -
-- /dev/null
        3823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3228   3824   
@@ -0,0 +1,9 @@
        3825  +
GET / HTTP/1.1
        3826  +
Host:example.amazonaws.com
        3827  +
My-Header1:value1
        3828  +
  value2
        3829  +
     value3
        3830  +
X-Amz-Date:20150830T123600Z
        3831  +
X-Amz-Region-Set:us-east-1
        3832  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3833  +
 3229   3834   
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
 3230   3835   
new file mode 100644
 3231   3836   
index 0000000..e4d99fa
 3232         -
-- /dev/null
        3837  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3233   3838   
@@ -0,0 +1,4 @@
        3839  +
AWS4-ECDSA-P256-SHA256
        3840  +
20150830T123600Z
        3841  +
20150830/service/aws4_request
        3842  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3234   3843   
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
 3235   3844   
new file mode 100644
 3236   3845   
index 0000000..379dcb2
 3237         -
-- /dev/null
        3846  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3238   3847   
@@ -0,0 +1,4 @@
        3848  +
{
        3849  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3850  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3851  +
}
 3239   3852   
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
 3240   3853   
new file mode 100644
 3241   3854   
index 0000000..3c4d52f
 3242         -
-- /dev/null
        3855  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3243   3856   
@@ -0,0 +1,8 @@
        3857  +
GET
        3858  +
/
        3859  +
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
        3860  +
host:example.amazonaws.com
        3861  +
my-header1:value1 value2 value3
        3862  +
        3863  +
host;my-header1
        3864  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3244   3865   
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
 3245   3866   
new file mode 100644
 3246   3867   
index 0000000..4e63f9a
 3247         -
-- /dev/null
        3868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3248   3869   
@@ -0,0 +1 @@
        3870  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3249   3871   
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
 3250   3872   
new file mode 100644
 3251   3873   
index 0000000..adf1f09
 3252         -
-- /dev/null
        3874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3253   3875   
@@ -0,0 +1,6 @@
        3876  +
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
        3877  +
Host:example.amazonaws.com
        3878  +
My-Header1:value1
        3879  +
  value2
        3880  +
     value3
        3881  +
 3254   3882   
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
 3255   3883   
new file mode 100644
 3256   3884   
index 0000000..e085407
 3257         -
-- /dev/null
        3885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3258   3886   
@@ -0,0 +1,4 @@
        3887  +
AWS4-ECDSA-P256-SHA256
        3888  +
20150830T123600Z
        3889  +
20150830/service/aws4_request
        3890  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3259   3891   
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
 3260   3892   
new file mode 100644
 3261   3893   
index 0000000..b5026cd
 3262         -
-- /dev/null
        3894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3263   3895   
@@ -0,0 +1,5 @@
        3896  +
GET / HTTP/1.1
        3897  +
Host:example.amazonaws.com
        3898  +
My-Header1:value1
        3899  +
  value2
        3900  +
     value3
 3264   3901   
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
 3265   3902   
new file mode 100644
 3266   3903   
index 0000000..0468d80
 3267         -
-- /dev/null
        3904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3268   3905   
@@ -0,0 +1,12 @@
        3906  +
{
        3907  +
    "credentials": {
        3908  +
        "access_key_id": "AKIDEXAMPLE",
        3909  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3910  +
    },
        3911  +
    "expiration_in_seconds": 3600,
        3912  +
    "normalize": true,
        3913  +
    "region": "us-east-1",
        3914  +
    "service": "service",
        3915  +
    "sign_body": false,
        3916  +
    "timestamp": "2015-08-30T12:36:00Z"
        3917  +
}
              \
 No newline at end of file
 3269   3918   
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
 3270   3919   
similarity index 99%
 3271   3920   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3272   3921   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3273   3922   
index 9375193..533afdb 100644
 3274   3923   
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
 3275   3924   
new file mode 100644
 3276   3925   
index 0000000..057b426
 3277         -
-- /dev/null
        3926  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3278   3927   
@@ -0,0 +1 @@
        3928  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3279   3929   
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
 3280   3930   
new file mode 100644
 3281   3931   
index 0000000..4e4ccf0
 3282         -
-- /dev/null
        3932  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3283   3933   
@@ -0,0 +1,10 @@
        3934  +
GET / HTTP/1.1
        3935  +
Host:example.amazonaws.com
        3936  +
My-Header1:value4
        3937  +
My-Header1:value1
        3938  +
My-Header1:value3
        3939  +
My-Header1:value2
        3940  +
X-Amz-Date:20150830T123600Z
        3941  +
X-Amz-Region-Set:us-east-1
        3942  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        3943  +
 3284   3944   
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
 3285   3945   
similarity index 99%
 3286   3946   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3287   3947   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3288   3948   
index 6400baf..e68c952 100644
 3289   3949   
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
 3290   3950   
new file mode 100644
 3291   3951   
index 0000000..379dcb2
 3292         -
-- /dev/null
        3952  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3293   3953   
@@ -0,0 +1,4 @@
        3954  +
{
        3955  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3956  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3957  +
}
 3294   3958   
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
 3295   3959   
similarity index 99%
 3296   3960   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3297   3961   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3298   3962   
index ecf494a..68450fe 100644
 3299   3963   
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
 3300   3964   
new file mode 100644
 3301   3965   
index 0000000..9df2eb3
 3302         -
-- /dev/null
        3966  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3303   3967   
@@ -0,0 +1 @@
        3968  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3304   3969   
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
 3305   3970   
new file mode 100644
 3306   3971   
index 0000000..62f8cb7
 3307         -
-- /dev/null
        3972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3308   3973   
@@ -0,0 +1,7 @@
        3974  +
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
        3975  +
Host:example.amazonaws.com
        3976  +
My-Header1:value4
        3977  +
My-Header1:value1
        3978  +
My-Header1:value3
        3979  +
My-Header1:value2
        3980  +
 3309   3981   
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
 3310   3982   
similarity index 99%
 3311   3983   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3312   3984   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3313   3985   
index b584179..2bcf7b1 100644
 3314   3986   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3315   3987   
similarity index 80%
 3316   3988   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3317   3989   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3318   3990   
index f7bd9e6..2c6f49d 100644
 3319         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        3991  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3320   3992   
@@ -1,7 +1,6 @@
 3321   3993   
GET / HTTP/1.1
 3322   3994   
Host:example.amazonaws.com
 3323   3995   
My-Header1:value4
 3324   3996   
My-Header1:value1
 3325   3997   
My-Header1:value3
 3326   3998   
My-Header1:value2
 3327         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3328   3999   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3329   4000   
new file mode 100644
 3330   4001   
index 0000000..0468d80
 3331         -
-- /dev/null
        4002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3332   4003   
@@ -0,0 +1,12 @@
        4004  +
{
        4005  +
    "credentials": {
        4006  +
        "access_key_id": "AKIDEXAMPLE",
        4007  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4008  +
    },
        4009  +
    "expiration_in_seconds": 3600,
        4010  +
    "normalize": true,
        4011  +
    "region": "us-east-1",
        4012  +
    "service": "service",
        4013  +
    "sign_body": false,
        4014  +
    "timestamp": "2015-08-30T12:36:00Z"
        4015  +
}
              \
 No newline at end of file
 3333   4016   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3334   4017   
similarity index 99%
 3335   4018   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3336   4019   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3337   4020   
index e91e952..94b6be5 100644
 3338   4021   
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
 3339   4022   
new file mode 100644
 3340   4023   
index 0000000..bf8c3cb
 3341         -
-- /dev/null
        4024  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3342   4025   
@@ -0,0 +1 @@
        4026  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3343   4027   
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
 3344   4028   
new file mode 100644
 3345   4029   
index 0000000..f7f054d
 3346         -
-- /dev/null
        4030  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3347   4031   
@@ -0,0 +1,8 @@
        4032  +
GET / HTTP/1.1
        4033  +
Host:example.amazonaws.com
        4034  +
My-Header1: value1
        4035  +
My-Header2: "a   b   c"
        4036  +
X-Amz-Date:20150830T123600Z
        4037  +
X-Amz-Region-Set:us-east-1
        4038  +
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
        4039  +
 3348   4040   
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
 3349   4041   
similarity index 99%
 3350   4042   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3351   4043   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3352   4044   
index 0e407d8..a2c9c05 100644
 3353   4045   
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
 3354   4046   
new file mode 100644
 3355   4047   
index 0000000..379dcb2
 3356         -
-- /dev/null
        4048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3357   4049   
@@ -0,0 +1,4 @@
        4050  +
{
        4051  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4052  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4053  +
}
 3358   4054   
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
 3359   4055   
similarity index 99%
 3360   4056   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3361   4057   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3362   4058   
index 8a3b042..3a51150 100644
 3363   4059   
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
 3364   4060   
new file mode 100644
 3365   4061   
index 0000000..0033053
 3366         -
-- /dev/null
        4062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3367   4063   
@@ -0,0 +1 @@
        4064  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3368   4065   
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
 3369   4066   
new file mode 100644
 3370   4067   
index 0000000..1537888
 3371         -
-- /dev/null
        4068  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3372   4069   
@@ -0,0 +1,5 @@
        4070  +
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
        4071  +
Host:example.amazonaws.com
        4072  +
My-Header1: value1
        4073  +
My-Header2: "a   b   c"
        4074  +
 3373   4075   
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
 3374   4076   
similarity index 99%
 3375   4077   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3376   4078   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3377   4079   
index 5eead25..633dc1f 100644
 3378   4080   
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
 3379   4081   
similarity index 75%
 3380   4082   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3381   4083   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3382   4084   
index 901f36c..ad1ea98 100644
 3383         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4085  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3384   4086   
@@ -1,5 +1,4 @@
 3385   4087   
GET / HTTP/1.1
 3386   4088   
Host:example.amazonaws.com
 3387   4089   
My-Header1: value1
 3388   4090   
My-Header2: "a   b   c"
 3389         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3390   4091   
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
 3391   4092   
new file mode 100644
 3392   4093   
index 0000000..0468d80
 3393         -
-- /dev/null
        4094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3394   4095   
@@ -0,0 +1,12 @@
        4096  +
{
        4097  +
    "credentials": {
        4098  +
        "access_key_id": "AKIDEXAMPLE",
        4099  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4100  +
    },
        4101  +
    "expiration_in_seconds": 3600,
        4102  +
    "normalize": true,
        4103  +
    "region": "us-east-1",
        4104  +
    "service": "service",
        4105  +
    "sign_body": false,
        4106  +
    "timestamp": "2015-08-30T12:36:00Z"
        4107  +
}
              \
 No newline at end of file
 3395   4108   
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
 3396   4109   
similarity index 99%
 3397   4110   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3398   4111   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3399   4112   
index 47e7128..76db73d 100644
 3400   4113   
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
 3401   4114   
new file mode 100644
 3402   4115   
index 0000000..cbd6ae2
 3403         -
-- /dev/null
        4116  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3404   4117   
@@ -0,0 +1 @@
        4118  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3405   4119   
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
 3406   4120   
new file mode 100644
 3407   4121   
index 0000000..a343fcf
 3408         -
-- /dev/null
        4122  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3409   4123   
@@ -0,0 +1,6 @@
        4124  +
GET /example/.. HTTP/1.1
        4125  +
Host:example.amazonaws.com
        4126  +
X-Amz-Date:20150830T123600Z
        4127  +
X-Amz-Region-Set:us-east-1
        4128  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4129  +
 3410   4130   
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
 3411   4131   
similarity index 99%
 3412   4132   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3413   4133   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3414   4134   
index 95d7219..600f1d8 100644
 3415   4135   
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
 3416   4136   
new file mode 100644
 3417   4137   
index 0000000..379dcb2
 3418         -
-- /dev/null
        4138  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3419   4139   
@@ -0,0 +1,4 @@
        4140  +
{
        4141  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4142  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4143  +
}
 3420   4144   
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
 3421   4145   
similarity index 99%
 3422   4146   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3423   4147   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3424   4148   
index a34ea26..779c51c 100644
 3425   4149   
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
 3426   4150   
new file mode 100644
 3427   4151   
index 0000000..3cc88e6
 3428         -
-- /dev/null
        4152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3429   4153   
@@ -0,0 +1 @@
        4154  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3430   4155   
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
 3431   4156   
new file mode 100644
 3432   4157   
index 0000000..f68dde8
 3433         -
-- /dev/null
        4158  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3434   4159   
@@ -0,0 +1,3 @@
        4160  +
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
        4161  +
Host:example.amazonaws.com
        4162  +
 3435   4163   
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
 3436   4164   
similarity index 99%
 3437   4165   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3438   4166   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3439   4167   
index 48f855c..6e29a7e 100644
 3440   4168   
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
 3441   4169   
similarity index 65%
 3442   4170   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3443   4171   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3444   4172   
index 9d6d7ca..6aa9f99 100644
 3445         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3446   4174   
@@ -1,3 +1,2 @@
 3447   4175   
GET /example/.. HTTP/1.1
 3448   4176   
Host:example.amazonaws.com
 3449         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3450   4177   
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
 3451   4178   
new file mode 100644
 3452   4179   
index 0000000..0468d80
 3453         -
-- /dev/null
        4180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3454   4181   
@@ -0,0 +1,12 @@
        4182  +
{
        4183  +
    "credentials": {
        4184  +
        "access_key_id": "AKIDEXAMPLE",
        4185  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4186  +
    },
        4187  +
    "expiration_in_seconds": 3600,
        4188  +
    "normalize": true,
        4189  +
    "region": "us-east-1",
        4190  +
    "service": "service",
        4191  +
    "sign_body": false,
        4192  +
    "timestamp": "2015-08-30T12:36:00Z"
        4193  +
}
              \
 No newline at end of file
 3455   4194   
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
 3456   4195   
similarity index 99%
 3457   4196   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3458   4197   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3459   4198   
index 47e7128..76db73d 100644
 3460   4199   
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
 3461   4200   
new file mode 100644
 3462   4201   
index 0000000..f7a7ebe
 3463         -
-- /dev/null
        4202  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3464   4203   
@@ -0,0 +1 @@
        4204  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3465   4205   
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
 3466   4206   
new file mode 100644
 3467   4207   
index 0000000..9d2c50d
 3468         -
-- /dev/null
        4208  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3469   4209   
@@ -0,0 +1,6 @@
        4210  +
GET /example1/example2/../.. HTTP/1.1
        4211  +
Host:example.amazonaws.com
        4212  +
X-Amz-Date:20150830T123600Z
        4213  +
X-Amz-Region-Set:us-east-1
        4214  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4215  +
 3470   4216   
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
 3471   4217   
similarity index 99%
 3472   4218   
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
 3473   4219   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3474   4220   
index 95d7219..600f1d8 100644
 3475   4221   
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
 3476   4222   
new file mode 100644
 3477   4223   
index 0000000..379dcb2
 3478         -
-- /dev/null
        4224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3479   4225   
@@ -0,0 +1,4 @@
        4226  +
{
        4227  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4228  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4229  +
}
 3480   4230   
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
 3481   4231   
similarity index 99%
 3482   4232   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3483   4233   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3484   4234   
index a34ea26..779c51c 100644
 3485   4235   
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
 3486   4236   
new file mode 100644
 3487   4237   
index 0000000..45ef286
 3488         -
-- /dev/null
        4238  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3489   4239   
@@ -0,0 +1 @@
        4240  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3490   4241   
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
 3491   4242   
new file mode 100644
 3492   4243   
index 0000000..0d16f66
 3493         -
-- /dev/null
        4244  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3494   4245   
@@ -0,0 +1,3 @@
        4246  +
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
        4247  +
Host:example.amazonaws.com
        4248  +
 3495   4249   
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
 3496   4250   
similarity index 99%
 3497   4251   
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
 3498   4252   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3499   4253   
index 48f855c..6e29a7e 100644
 3500   4254   
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
 3501   4255   
similarity index 70%
 3502   4256   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3503   4257   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3504   4258   
index cfd4e8b..a856c10 100644
 3505         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3506   4260   
@@ -1,3 +1,2 @@
 3507   4261   
GET /example1/example2/../.. HTTP/1.1
 3508   4262   
Host:example.amazonaws.com
 3509         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3510   4263   
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
 3511   4264   
new file mode 100644
 3512   4265   
index 0000000..7bee5c7
 3513         -
-- /dev/null
        4266  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3514   4267   
@@ -0,0 +1,12 @@
        4268  +
{
        4269  +
    "credentials": {
        4270  +
        "access_key_id": "AKIDEXAMPLE",
        4271  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4272  +
    },
        4273  +
    "expiration_in_seconds": 3600,
        4274  +
    "normalize": false,
        4275  +
    "region": "us-east-1",
        4276  +
    "service": "service",
        4277  +
    "sign_body": false,
        4278  +
    "timestamp": "2015-08-30T12:36:00Z"
        4279  +
}
              \
 No newline at end of file
 3515   4280   
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
 3516   4281   
similarity index 99%
 3517   4282   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3518   4283   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3519   4284   
index 5e1d1cf..e4e6d57 100644
 3520   4285   
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
 3521   4286   
new file mode 100644
 3522   4287   
index 0000000..2d1b47c
 3523         -
-- /dev/null
        4288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3524   4289   
@@ -0,0 +1 @@
        4290  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3525   4291   
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
 3526   4292   
new file mode 100644
 3527   4293   
index 0000000..7158179
 3528         -
-- /dev/null
        4294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3529   4295   
@@ -0,0 +1,6 @@
        4296  +
GET /example1/example2/../.. HTTP/1.1
        4297  +
Host:example.amazonaws.com
        4298  +
X-Amz-Date:20150830T123600Z
        4299  +
X-Amz-Region-Set:us-east-1
        4300  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4301  +
 3530   4302   
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
 3531   4303   
similarity index 99%
 3532   4304   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3533   4305   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3534   4306   
index 1cca6cf..db60c8e 100644
 3535   4307   
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
 3536   4308   
new file mode 100644
 3537   4309   
index 0000000..379dcb2
 3538         -
-- /dev/null
        4310  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3539   4311   
@@ -0,0 +1,4 @@
        4312  +
{
        4313  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4314  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4315  +
}
 3540   4316   
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
 3541   4317   
similarity index 99%
 3542   4318   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3543   4319   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3544   4320   
index 95dc104..0d963ba 100644
 3545   4321   
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
 3546   4322   
new file mode 100644
 3547   4323   
index 0000000..ae774e4
 3548         -
-- /dev/null
        4324  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3549   4325   
@@ -0,0 +1 @@
        4326  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3550   4327   
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
 3551   4328   
new file mode 100644
 3552   4329   
index 0000000..be6b86e
 3553         -
-- /dev/null
        4330  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3554   4331   
@@ -0,0 +1,3 @@
        4332  +
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
        4333  +
Host:example.amazonaws.com
        4334  +
 3555   4335   
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
 3556   4336   
similarity index 99%
 3557   4337   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3558   4338   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3559   4339   
index 50edce6..fcc70cd 100644
 3560   4340   
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
 3561   4341   
new file mode 100644
 3562   4342   
index 0000000..a856c10
 3563         -
-- /dev/null
        4343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3564   4344   
@@ -0,0 +1,2 @@
        4345  +
GET /example1/example2/../.. HTTP/1.1
        4346  +
Host:example.amazonaws.com
 3565   4347   
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
 3566   4348   
new file mode 100644
 3567   4349   
index 0000000..7bee5c7
 3568         -
-- /dev/null
        4350  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3569   4351   
@@ -0,0 +1,12 @@
        4352  +
{
        4353  +
    "credentials": {
        4354  +
        "access_key_id": "AKIDEXAMPLE",
        4355  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4356  +
    },
        4357  +
    "expiration_in_seconds": 3600,
        4358  +
    "normalize": false,
        4359  +
    "region": "us-east-1",
        4360  +
    "service": "service",
        4361  +
    "sign_body": false,
        4362  +
    "timestamp": "2015-08-30T12:36:00Z"
        4363  +
}
              \
 No newline at end of file
 3570   4364   
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
 3571   4365   
similarity index 99%
 3572   4366   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3573   4367   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3574   4368   
index d6a0abe..22def1a 100644
 3575   4369   
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
 3576   4370   
new file mode 100644
 3577   4371   
index 0000000..9251bad
 3578         -
-- /dev/null
        4372  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3579   4373   
@@ -0,0 +1 @@
        4374  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3580   4375   
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
 3581   4376   
new file mode 100644
 3582   4377   
index 0000000..f1bb60f
 3583         -
-- /dev/null
        4378  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3584   4379   
@@ -0,0 +1,6 @@
        4380  +
GET /example/.. HTTP/1.1
        4381  +
Host:example.amazonaws.com
        4382  +
X-Amz-Date:20150830T123600Z
        4383  +
X-Amz-Region-Set:us-east-1
        4384  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4385  +
 3585   4386   
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
 3586   4387   
similarity index 99%
 3587   4388   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3588   4389   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3589   4390   
index 4a34e93..5673a20 100644
 3590   4391   
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
 3591   4392   
new file mode 100644
 3592   4393   
index 0000000..379dcb2
 3593         -
-- /dev/null
        4394  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3594   4395   
@@ -0,0 +1,4 @@
        4396  +
{
        4397  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4398  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4399  +
}
 3595   4400   
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
 3596   4401   
similarity index 99%
 3597   4402   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3598   4403   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3599   4404   
index b1d123e..a1c22e0 100644
 3600   4405   
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
 3601   4406   
new file mode 100644
 3602   4407   
index 0000000..9f0f686
 3603         -
-- /dev/null
        4408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3604   4409   
@@ -0,0 +1 @@
        4410  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3605   4411   
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
 3606   4412   
new file mode 100644
 3607   4413   
index 0000000..d1d451a
 3608         -
-- /dev/null
        4414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3609   4415   
@@ -0,0 +1,3 @@
        4416  +
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
        4417  +
Host:example.amazonaws.com
        4418  +
 3610   4419   
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
 3611   4420   
similarity index 99%
 3612   4421   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3613   4422   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3614   4423   
index a17f5ab..81b41e8 100644
 3615   4424   
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
 3616   4425   
new file mode 100644
 3617   4426   
index 0000000..6aa9f99
 3618         -
-- /dev/null
        4427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3619   4428   
@@ -0,0 +1,2 @@
        4429  +
GET /example/.. HTTP/1.1
        4430  +
Host:example.amazonaws.com
 3620   4431   
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
 3621   4432   
new file mode 100644
 3622   4433   
index 0000000..0468d80
 3623         -
-- /dev/null
        4434  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3624   4435   
@@ -0,0 +1,12 @@
        4436  +
{
        4437  +
    "credentials": {
        4438  +
        "access_key_id": "AKIDEXAMPLE",
        4439  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4440  +
    },
        4441  +
    "expiration_in_seconds": 3600,
        4442  +
    "normalize": true,
        4443  +
    "region": "us-east-1",
        4444  +
    "service": "service",
        4445  +
    "sign_body": false,
        4446  +
    "timestamp": "2015-08-30T12:36:00Z"
        4447  +
}
              \
 No newline at end of file
 3625   4448   
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
 3626   4449   
similarity index 99%
 3627   4450   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3628   4451   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3629   4452   
index 47e7128..76db73d 100644
 3630   4453   
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
 3631   4454   
new file mode 100644
 3632   4455   
index 0000000..ca6e84e
 3633         -
-- /dev/null
        4456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3634   4457   
@@ -0,0 +1 @@
        4458  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3635   4459   
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
 3636   4460   
new file mode 100644
 3637   4461   
index 0000000..a7c764c
 3638         -
-- /dev/null
        4462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3639   4463   
@@ -0,0 +1,6 @@
        4464  +
GET /./ HTTP/1.1
        4465  +
Host:example.amazonaws.com
        4466  +
X-Amz-Date:20150830T123600Z
        4467  +
X-Amz-Region-Set:us-east-1
        4468  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4469  +
 3640   4470   
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
 3641   4471   
similarity index 99%
 3642   4472   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3643   4473   
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
 3644   4474   
index 95d7219..600f1d8 100644
 3645   4475   
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
 3646   4476   
new file mode 100644
 3647   4477   
index 0000000..379dcb2
 3648         -
-- /dev/null
        4478  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3649   4479   
@@ -0,0 +1,4 @@
        4480  +
{
        4481  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4482  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4483  +
}
 3650   4484   
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
 3651   4485   
similarity index 99%
 3652   4486   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3653   4487   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3654   4488   
index a34ea26..779c51c 100644
 3655   4489   
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
 3656   4490   
new file mode 100644
 3657   4491   
index 0000000..4b6ed09
 3658         -
-- /dev/null
        4492  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3659   4493   
@@ -0,0 +1 @@
        4494  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3660   4495   
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
 3661   4496   
new file mode 100644
 3662   4497   
index 0000000..d6c7176
 3663         -
-- /dev/null
        4498  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3664   4499   
@@ -0,0 +1,3 @@
        4500  +
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
        4501  +
Host:example.amazonaws.com
        4502  +
 3665   4503   
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
 3666   4504   
similarity index 99%
 3667   4505   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3668   4506   
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
 3669   4507   
index 48f855c..6e29a7e 100644
 3670   4508   
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
 3671   4509   
similarity index 61%
 3672   4510   
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
 3673   4511   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3674   4512   
index f3537b7..2c5ff38 100644
 3675         -
-- 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
        4513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3676   4514   
@@ -1,3 +1,2 @@
 3677   4515   
GET /./ HTTP/1.1
 3678   4516   
Host:example.amazonaws.com
 3679         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3680   4517   
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
 3681   4518   
new file mode 100644
 3682   4519   
index 0000000..7bee5c7
 3683         -
-- /dev/null
        4520  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3684   4521   
@@ -0,0 +1,12 @@
        4522  +
{
        4523  +
    "credentials": {
        4524  +
        "access_key_id": "AKIDEXAMPLE",
        4525  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4526  +
    },
        4527  +
    "expiration_in_seconds": 3600,
        4528  +
    "normalize": false,
        4529  +
    "region": "us-east-1",
        4530  +
    "service": "service",
        4531  +
    "sign_body": false,
        4532  +
    "timestamp": "2015-08-30T12:36:00Z"
        4533  +
}
              \
 No newline at end of file
 3685   4534   
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
 3686   4535   
similarity index 99%
 3687   4536   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3688   4537   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3689   4538   
index d05303d..9257ac4 100644
 3690   4539   
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
 3691   4540   
new file mode 100644
 3692   4541   
index 0000000..2eb1aa5
 3693         -
-- /dev/null
        4542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3694   4543   
@@ -0,0 +1 @@
        4544  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3695   4545   
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
 3696   4546   
new file mode 100644
 3697   4547   
index 0000000..df3b1da
 3698         -
-- /dev/null
        4548  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3699   4549   
@@ -0,0 +1,6 @@
        4550  +
GET /./ HTTP/1.1
        4551  +
Host:example.amazonaws.com
        4552  +
X-Amz-Date:20150830T123600Z
        4553  +
X-Amz-Region-Set:us-east-1
        4554  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4555  +
 3700   4556   
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
 3701   4557   
similarity index 99%
 3702   4558   
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
 3703   4559   
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
 3704   4560   
index e1bfb39..754b3ed 100644
 3705   4561   
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
 3706   4562   
new file mode 100644
 3707   4563   
index 0000000..379dcb2
 3708         -
-- /dev/null
        4564  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3709   4565   
@@ -0,0 +1,4 @@
        4566  +
{
        4567  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4568  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4569  +
}
 3710   4570   
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
 3711   4571   
similarity index 99%
 3712   4572   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3713   4573   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3714   4574   
index f048d0f..c8edce3 100644
 3715   4575   
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
 3716   4576   
new file mode 100644
 3717   4577   
index 0000000..d3af3b8
 3718         -
-- /dev/null
        4578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3719   4579   
@@ -0,0 +1 @@
        4580  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3720   4581   
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
 3721   4582   
new file mode 100644
 3722   4583   
index 0000000..eb38155
 3723         -
-- /dev/null
        4584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3724   4585   
@@ -0,0 +1,3 @@
        4586  +
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
        4587  +
Host:example.amazonaws.com
        4588  +
 3725   4589   
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
 3726   4590   
similarity index 99%
 3727   4591   
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
 3728   4592   
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
 3729   4593   
index bfcf245..4f20b8f 100644
 3730   4594   
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
 3731   4595   
new file mode 100644
 3732   4596   
index 0000000..2c5ff38
 3733         -
-- /dev/null
        4597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3734   4598   
@@ -0,0 +1,2 @@
        4599  +
GET /./ HTTP/1.1
        4600  +
Host:example.amazonaws.com
 3735   4601   
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
 3736   4602   
new file mode 100644
 3737   4603   
index 0000000..0468d80
 3738         -
-- /dev/null
        4604  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3739   4605   
@@ -0,0 +1,12 @@
        4606  +
{
        4607  +
    "credentials": {
        4608  +
        "access_key_id": "AKIDEXAMPLE",
        4609  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4610  +
    },
        4611  +
    "expiration_in_seconds": 3600,
        4612  +
    "normalize": true,
        4613  +
    "region": "us-east-1",
        4614  +
    "service": "service",
        4615  +
    "sign_body": false,
        4616  +
    "timestamp": "2015-08-30T12:36:00Z"
        4617  +
}
              \
 No newline at end of file
 3740   4618   
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
 3741   4619   
similarity index 99%
 3742   4620   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 3743   4621   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3744   4622   
index 47e7128..76db73d 100644
 3745   4623   
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
 3746   4624   
new file mode 100644
 3747   4625   
index 0000000..0c049ca
 3748         -
-- /dev/null
        4626  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 3749   4627   
@@ -0,0 +1 @@
        4628  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 3750   4629   
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
 3751   4630   
new file mode 100644
 3752   4631   
index 0000000..f4bb1e1
 3753         -
-- /dev/null
        4632  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 3754   4633   
@@ -0,0 +1,6 @@
        4634  +
GET // HTTP/1.1
        4635  +
Host:example.amazonaws.com
        4636  +
X-Amz-Date:20150830T123600Z
        4637  +
X-Amz-Region-Set:us-east-1
        4638  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4639  +
 3755   4640   
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
 3756   4641   
similarity index 99%
 3757   4642   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 3758   4643   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3759   4644   
index 95d7219..600f1d8 100644
 3760   4645   
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
 3761   4646   
new file mode 100644
 3762   4647   
index 0000000..379dcb2
 3763         -
-- /dev/null
        4648  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 3764   4649   
@@ -0,0 +1,4 @@
        4650  +
{
        4651  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4652  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4653  +
}
 3765   4654   
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
 3766   4655   
similarity index 99%
 3767   4656   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 3768   4657   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3769   4658   
index a34ea26..779c51c 100644
 3770   4659   
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
 3771   4660   
new file mode 100644
 3772   4661   
index 0000000..ca52293
 3773         -
-- /dev/null
        4662  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 3774   4663   
@@ -0,0 +1 @@
        4664  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 3775   4665   
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
 3776   4666   
new file mode 100644
 3777   4667   
index 0000000..4a212a9
 3778         -
-- /dev/null
        4668  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 3779   4669   
@@ -0,0 +1,3 @@
        4670  +
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
        4671  +
Host:example.amazonaws.com
        4672  +
 3780   4673   
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
 3781   4674   
similarity index 99%
 3782   4675   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 3783   4676   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3784   4677   
index 48f855c..6e29a7e 100644
 3785   4678   
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
 3786   4679   
similarity index 61%
 3787   4680   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 3788   4681   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3789   4682   
index ede8e3c..25bc21e 100644
 3790         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        4683  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3791   4684   
@@ -1,3 +1,2 @@
 3792   4685   
GET // HTTP/1.1
 3793   4686   
Host:example.amazonaws.com
 3794         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3795   4687   
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
 3796   4688   
new file mode 100644
 3797   4689   
index 0000000..0468d80
 3798         -
-- /dev/null
        4690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 3799   4691   
@@ -0,0 +1,12 @@
        4692  +
{
        4693  +
    "credentials": {
        4694  +
        "access_key_id": "AKIDEXAMPLE",
        4695  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4696  +
    },
        4697  +
    "expiration_in_seconds": 3600,
        4698  +
    "normalize": true,
        4699  +
    "region": "us-east-1",
        4700  +
    "service": "service",
        4701  +
    "sign_body": false,
        4702  +
    "timestamp": "2015-08-30T12:36:00Z"
        4703  +
}
              \
 No newline at end of file
 3800   4704   
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
 3801   4705   
similarity index 99%
 3802   4706   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3803   4707   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3804   4708   
index 2e36c20..a51f1ba 100644
 3805   4709   
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
 3806   4710   
new file mode 100644
 3807   4711   
index 0000000..f5c871f
 3808         -
-- /dev/null
        4712  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 3809   4713   
@@ -0,0 +1 @@
        4714  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 3810   4715   
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
 3811   4716   
new file mode 100644
 3812   4717   
index 0000000..bda4718
 3813         -
-- /dev/null
        4718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 3814   4719   
@@ -0,0 +1,6 @@
        4720  +
GET /./example HTTP/1.1
        4721  +
Host:example.amazonaws.com
        4722  +
X-Amz-Date:20150830T123600Z
        4723  +
X-Amz-Region-Set:us-east-1
        4724  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        4725  +
 3815   4726   
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
 3816   4727   
similarity index 99%
 3817   4728   
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
 3818   4729   
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
 3819   4730   
index cd30e8b..2ffe879 100644
 3820   4731   
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
 3821   4732   
new file mode 100644
 3822   4733   
index 0000000..379dcb2
 3823         -
-- /dev/null
        4734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 3824   4735   
@@ -0,0 +1,4 @@
        4736  +
{
        4737  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4738  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4739  +
}
 3825   4740   
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
 3826   4741   
similarity index 99%
 3827   4742   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3828   4743   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3829   4744   
index 77cf28d..45151ea 100644
 3830   4745   
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
 3831   4746   
new file mode 100644
 3832   4747   
index 0000000..11ad7bf
 3833         -
-- /dev/null
        4748  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 3834   4749   
@@ -0,0 +1 @@
        4750  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 3835   4751   
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
 3836   4752   
new file mode 100644
 3837   4753   
index 0000000..a7537b1
 3838         -
-- /dev/null
        4754  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 3839   4755   
@@ -0,0 +1,3 @@
        4756  +
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
        4757  +
Host:example.amazonaws.com
        4758  +
 3840   4759   
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
 3841   4760   
similarity index 99%
 3842   4761   
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
 3843   4762   
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
 3844   4763   
index 49d9b24..b486672 100644
 3845   4764   
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
 3846   4765   
similarity index 65%
 3847   4766   
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
 3848   4767   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3849   4768   
index 3c91071..5d919c9 100644
 3850         -
-- 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
        4769  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3851   4770   
@@ -1,3 +1,2 @@
 3852   4771   
GET /./example HTTP/1.1
 3853   4772   
Host:example.amazonaws.com
 3854         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3855   4773   
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
 3856   4774   
new file mode 100644
 3857   4775   
index 0000000..7bee5c7
 3858         -
-- /dev/null
        4776  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 3859   4777   
@@ -0,0 +1,12 @@
        4778  +
{
        4779  +
    "credentials": {
        4780  +
        "access_key_id": "AKIDEXAMPLE",
        4781  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4782  +
    },
        4783  +
    "expiration_in_seconds": 3600,
        4784  +
    "normalize": false,
        4785  +
    "region": "us-east-1",
        4786  +
    "service": "service",
        4787  +
    "sign_body": false,
        4788  +
    "timestamp": "2015-08-30T12:36:00Z"
        4789  +
}
              \
 No newline at end of file
 3860   4790   
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
 3861   4791   
similarity index 99%
 3862   4792   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3863   4793   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3864   4794   
index 4444842..2355a69 100644
 3865   4795   
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
 3866   4796   
new file mode 100644
 3867   4797   
index 0000000..9c8f737
 3868         -
-- /dev/null
        4798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 3869   4799   
@@ -0,0 +1 @@
        4800  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 3870   4801   
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
 3871   4802   
new file mode 100644
 3872   4803   
index 0000000..aa5980d
 3873         -
-- /dev/null
        4804  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 3874   4805   
@@ -0,0 +1,6 @@
        4806  +
GET /./example HTTP/1.1
        4807  +
Host:example.amazonaws.com
        4808  +
X-Amz-Date:20150830T123600Z
        4809  +
X-Amz-Region-Set:us-east-1
        4810  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        4811  +
 3875   4812   
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
 3876   4813   
similarity index 99%
 3877   4814   
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
 3878   4815   
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
 3879   4816   
index cc63510..d056816 100644
 3880   4817   
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
 3881   4818   
new file mode 100644
 3882   4819   
index 0000000..379dcb2
 3883         -
-- /dev/null
        4820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 3884   4821   
@@ -0,0 +1,4 @@
        4822  +
{
        4823  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4824  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4825  +
}
 3885   4826   
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
 3886   4827   
similarity index 99%
 3887   4828   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3888   4829   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3889   4830   
index ed2cb2d..df9928e 100644
 3890   4831   
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
 3891   4832   
new file mode 100644
 3892   4833   
index 0000000..bb4d86b
 3893         -
-- /dev/null
        4834  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 3894   4835   
@@ -0,0 +1 @@
        4836  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 3895   4837   
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
 3896   4838   
new file mode 100644
 3897   4839   
index 0000000..0061136
 3898         -
-- /dev/null
        4840  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 3899   4841   
@@ -0,0 +1,3 @@
        4842  +
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
        4843  +
Host:example.amazonaws.com
        4844  +
 3900   4845   
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
 3901   4846   
similarity index 99%
 3902   4847   
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
 3903   4848   
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
 3904   4849   
index c9f3b6d..418f2d6 100644
 3905   4850   
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
 3906   4851   
new file mode 100644
 3907   4852   
index 0000000..5d919c9
 3908         -
-- /dev/null
        4853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 3909   4854   
@@ -0,0 +1,2 @@
        4855  +
GET /./example HTTP/1.1
        4856  +
Host:example.amazonaws.com
 3910   4857   
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
 3911   4858   
new file mode 100644
 3912   4859   
index 0000000..7bee5c7
 3913         -
-- /dev/null
        4860  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 3914   4861   
@@ -0,0 +1,12 @@
        4862  +
{
        4863  +
    "credentials": {
        4864  +
        "access_key_id": "AKIDEXAMPLE",
        4865  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4866  +
    },
        4867  +
    "expiration_in_seconds": 3600,
        4868  +
    "normalize": false,
        4869  +
    "region": "us-east-1",
        4870  +
    "service": "service",
        4871  +
    "sign_body": false,
        4872  +
    "timestamp": "2015-08-30T12:36:00Z"
        4873  +
}
              \
 No newline at end of file
 3915   4874   
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
 3916   4875   
similarity index 99%
 3917   4876   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 3918   4877   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 3919   4878   
index 8a4d33b..5f809da 100644
 3920   4879   
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
 3921   4880   
new file mode 100644
 3922   4881   
index 0000000..60179e9
 3923         -
-- /dev/null
        4882  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 3924   4883   
@@ -0,0 +1 @@
        4884  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 3925   4885   
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
 3926   4886   
new file mode 100644
 3927   4887   
index 0000000..72bf1b7
 3928         -
-- /dev/null
        4888  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 3929   4889   
@@ -0,0 +1,6 @@
        4890  +
GET // HTTP/1.1
        4891  +
Host:example.amazonaws.com
        4892  +
X-Amz-Date:20150830T123600Z
        4893  +
X-Amz-Region-Set:us-east-1
        4894  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        4895  +
 3930   4896   
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
 3931   4897   
similarity index 99%
 3932   4898   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 3933   4899   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 3934   4900   
index 874c01c..2b3bf67 100644
 3935   4901   
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
 3936   4902   
new file mode 100644
 3937   4903   
index 0000000..379dcb2
 3938         -
-- /dev/null
        4904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 3939   4905   
@@ -0,0 +1,4 @@
        4906  +
{
        4907  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4908  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4909  +
}
 3940   4910   
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
 3941   4911   
similarity index 99%
 3942   4912   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 3943   4913   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 3944   4914   
index 81d7b0b..d10ad29 100644
 3945   4915   
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
 3946   4916   
new file mode 100644
 3947   4917   
index 0000000..d9bd824
 3948         -
-- /dev/null
        4918  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 3949   4919   
@@ -0,0 +1 @@
        4920  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 3950   4921   
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
 3951   4922   
new file mode 100644
 3952   4923   
index 0000000..19d1d46
 3953         -
-- /dev/null
        4924  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 3954   4925   
@@ -0,0 +1,3 @@
        4926  +
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
        4927  +
Host:example.amazonaws.com
        4928  +
 3955   4929   
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
 3956   4930   
similarity index 99%
 3957   4931   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 3958   4932   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 3959   4933   
index 17e5279..24c8a5e 100644
 3960   4934   
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
 3961   4935   
new file mode 100644
 3962   4936   
index 0000000..25bc21e
 3963         -
-- /dev/null
        4937  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 3964   4938   
@@ -0,0 +1,2 @@
        4939  +
GET // HTTP/1.1
        4940  +
Host:example.amazonaws.com
 3965   4941   
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
 3966   4942   
new file mode 100644
 3967   4943   
index 0000000..0468d80
 3968         -
-- /dev/null
        4944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 3969   4945   
@@ -0,0 +1,12 @@
        4946  +
{
        4947  +
    "credentials": {
        4948  +
        "access_key_id": "AKIDEXAMPLE",
        4949  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4950  +
    },
        4951  +
    "expiration_in_seconds": 3600,
        4952  +
    "normalize": true,
        4953  +
    "region": "us-east-1",
        4954  +
    "service": "service",
        4955  +
    "sign_body": false,
        4956  +
    "timestamp": "2015-08-30T12:36:00Z"
        4957  +
}
              \
 No newline at end of file
 3970   4958   
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
 3971   4959   
similarity index 99%
 3972   4960   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 3973   4961   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 3974   4962   
index fdf9c48..a8e9e02 100644
 3975   4963   
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
 3976   4964   
new file mode 100644
 3977   4965   
index 0000000..ffe1b60
 3978         -
-- /dev/null
        4966  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 3979   4967   
@@ -0,0 +1 @@
        4968  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 3980   4969   
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
 3981   4970   
new file mode 100644
 3982   4971   
index 0000000..3189f55
 3983         -
-- /dev/null
        4972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 3984   4973   
@@ -0,0 +1,6 @@
        4974  +
GET //example// HTTP/1.1
        4975  +
Host:example.amazonaws.com
        4976  +
X-Amz-Date:20150830T123600Z
        4977  +
X-Amz-Region-Set:us-east-1
        4978  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        4979  +
 3985   4980   
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
 3986   4981   
similarity index 99%
 3987   4982   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 3988   4983   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 3989   4984   
index 8f9c95e..430020e 100644
 3990   4985   
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
 3991   4986   
new file mode 100644
 3992   4987   
index 0000000..379dcb2
 3993         -
-- /dev/null
        4988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 3994   4989   
@@ -0,0 +1,4 @@
        4990  +
{
        4991  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4992  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4993  +
}
 3995   4994   
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
 3996   4995   
similarity index 99%
 3997   4996   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 3998   4997   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 3999   4998   
index 1046735..8d41e37 100644
 4000   4999   
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
 4001   5000   
new file mode 100644
 4002   5001   
index 0000000..93a0fa4
 4003         -
-- /dev/null
        5002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 4004   5003   
@@ -0,0 +1 @@
        5004  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 4005   5005   
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
 4006   5006   
new file mode 100644
 4007   5007   
index 0000000..65c8cb6
 4008         -
-- /dev/null
        5008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 4009   5009   
@@ -0,0 +1,3 @@
        5010  +
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
        5011  +
Host:example.amazonaws.com
        5012  +
 4010   5013   
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
 4011   5014   
similarity index 99%
 4012   5015   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 4013   5016   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 4014   5017   
index b293cc2..0f4c4c5 100644
 4015   5018   
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
 4016   5019   
similarity index 65%
 4017   5020   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 4018   5021   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4019   5022   
index a4307ce..12e0931 100644
 4020         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        5023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 4021   5024   
@@ -1,3 +1,2 @@
 4022   5025   
GET //example// HTTP/1.1
 4023   5026   
Host:example.amazonaws.com
 4024         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4025   5027   
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
 4026   5028   
new file mode 100644
 4027   5029   
index 0000000..7bee5c7
 4028         -
-- /dev/null
        5030  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 4029   5031   
@@ -0,0 +1,12 @@
        5032  +
{
        5033  +
    "credentials": {
        5034  +
        "access_key_id": "AKIDEXAMPLE",
        5035  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5036  +
    },
        5037  +
    "expiration_in_seconds": 3600,
        5038  +
    "normalize": false,
        5039  +
    "region": "us-east-1",
        5040  +
    "service": "service",
        5041  +
    "sign_body": false,
        5042  +
    "timestamp": "2015-08-30T12:36:00Z"
        5043  +
}
              \
 No newline at end of file
 4030   5044   
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
 4031   5045   
similarity index 99%
 4032   5046   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 4033   5047   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 4034   5048   
index a9c55f6..76f55ed 100644
 4035   5049   
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
 4036   5050   
new file mode 100644
 4037   5051   
index 0000000..de333b2
 4038         -
-- /dev/null
        5052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 4039   5053   
@@ -0,0 +1 @@
        5054  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 4040   5055   
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
 4041   5056   
new file mode 100644
 4042   5057   
index 0000000..773ce63
 4043         -
-- /dev/null
        5058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 4044   5059   
@@ -0,0 +1,6 @@
        5060  +
GET //example// HTTP/1.1
        5061  +
Host:example.amazonaws.com
        5062  +
X-Amz-Date:20150830T123600Z
        5063  +
X-Amz-Region-Set:us-east-1
        5064  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        5065  +
 4045   5066   
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
 4046   5067   
similarity index 99%
 4047   5068   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 4048   5069   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 4049   5070   
index 5c4c2cd..46c3265 100644
 4050   5071   
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
 4051   5072   
new file mode 100644
 4052   5073   
index 0000000..379dcb2
 4053         -
-- /dev/null
        5074  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 4054   5075   
@@ -0,0 +1,4 @@
        5076  +
{
        5077  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5078  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5079  +
}
 4055   5080   
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
 4056   5081   
similarity index 99%
 4057   5082   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 4058   5083   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 4059   5084   
index c878ab4..6047ccf 100644
 4060   5085   
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
 4061   5086   
new file mode 100644
 4062   5087   
index 0000000..d61fcd0
 4063         -
-- /dev/null
        5088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 4064   5089   
@@ -0,0 +1 @@
        5090  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 4065   5091   
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
 4066   5092   
new file mode 100644
 4067   5093   
index 0000000..3e37b5b
 4068         -
-- /dev/null
        5094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 4069   5095   
@@ -0,0 +1,3 @@
        5096  +
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
        5097  +
Host:example.amazonaws.com
        5098  +
 4070   5099   
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
 4071   5100   
similarity index 99%
 4072   5101   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 4073   5102   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 4074   5103   
index 5f59645..2537d28 100644
 4075   5104   
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
 4076   5105   
new file mode 100644
 4077   5106   
index 0000000..12e0931
 4078         -
-- /dev/null
        5107  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 4079   5108   
@@ -0,0 +1,2 @@
        5109  +
GET //example// HTTP/1.1
        5110  +
Host:example.amazonaws.com
 4080   5111   
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
 4081   5112   
new file mode 100644
 4082   5113   
index 0000000..0468d80
 4083         -
-- /dev/null
        5114  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 4084   5115   
@@ -0,0 +1,12 @@
        5116  +
{
        5117  +
    "credentials": {
        5118  +
        "access_key_id": "AKIDEXAMPLE",
        5119  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5120  +
    },
        5121  +
    "expiration_in_seconds": 3600,
        5122  +
    "normalize": true,
        5123  +
    "region": "us-east-1",
        5124  +
    "service": "service",
        5125  +
    "sign_body": false,
        5126  +
    "timestamp": "2015-08-30T12:36:00Z"
        5127  +
}
              \
 No newline at end of file
 4085   5128   
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
 4086   5129   
new file mode 100644
 4087   5130   
index 0000000..0b2b616
 4088         -
-- /dev/null
        5131  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 4089   5132   
@@ -0,0 +1,9 @@
        5133  +
GET
        5134  +
/example%20space/
        5135  +
        5136  +
host:example.amazonaws.com
        5137  +
x-amz-date:20150830T123600Z
        5138  +
x-amz-region-set:us-east-1
        5139  +
        5140  +
host;x-amz-date;x-amz-region-set
        5141  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4090   5142   
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
 4091   5143   
new file mode 100644
 4092   5144   
index 0000000..6e7841d
 4093         -
-- /dev/null
        5145  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 4094   5146   
@@ -0,0 +1 @@
        5147  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 4095   5148   
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
 4096   5149   
new file mode 100644
 4097   5150   
index 0000000..0969cd3
 4098         -
-- /dev/null
        5151  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 4099   5152   
@@ -0,0 +1,6 @@
        5153  +
GET /example space/ HTTP/1.1
        5154  +
Host:example.amazonaws.com
        5155  +
X-Amz-Date:20150830T123600Z
        5156  +
X-Amz-Region-Set:us-east-1
        5157  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5158  +
 4100   5159   
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
 4101   5160   
new file mode 100644
 4102   5161   
index 0000000..ddae6e2
 4103         -
-- /dev/null
        5162  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4104   5163   
@@ -0,0 +1,4 @@
        5164  +
AWS4-ECDSA-P256-SHA256
        5165  +
20150830T123600Z
        5166  +
20150830/service/aws4_request
        5167  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4105   5168   
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
 4106   5169   
new file mode 100644
 4107   5170   
index 0000000..379dcb2
 4108         -
-- /dev/null
        5171  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4109   5172   
@@ -0,0 +1,4 @@
        5173  +
{
        5174  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5175  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5176  +
}
 4110   5177   
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
 4111   5178   
new file mode 100644
 4112   5179   
index 0000000..a66b3cb
 4113         -
-- /dev/null
        5180  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4114   5181   
@@ -0,0 +1,7 @@
        5182  +
GET
        5183  +
/example%20space/
        5184  +
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
        5185  +
host:example.amazonaws.com
        5186  +
        5187  +
host
        5188  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4115   5189   
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
 4116   5190   
new file mode 100644
 4117   5191   
index 0000000..b3253ae
 4118         -
-- /dev/null
        5192  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4119   5193   
@@ -0,0 +1 @@
        5194  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 4120   5195   
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
 4121   5196   
new file mode 100644
 4122   5197   
index 0000000..9e335b2
 4123         -
-- /dev/null
        5198  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4124   5199   
@@ -0,0 +1,3 @@
        5200  +
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
        5201  +
Host:example.amazonaws.com
        5202  +
 4125   5203   
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
 4126   5204   
new file mode 100644
 4127   5205   
index 0000000..b6ff6fb
 4128         -
-- /dev/null
        5206  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4129   5207   
@@ -0,0 +1,4 @@
        5208  +
AWS4-ECDSA-P256-SHA256
        5209  +
20150830T123600Z
        5210  +
20150830/service/aws4_request
        5211  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4130   5212   
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
 4131   5213   
new file mode 100644
 4132   5214   
index 0000000..ab509ab
 4133         -
-- /dev/null
        5215  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4134   5216   
@@ -0,0 +1,2 @@
        5217  +
GET /example space/ HTTP/1.1
        5218  +
Host:example.amazonaws.com
 4135   5219   
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
 4136   5220   
new file mode 100644
 4137   5221   
index 0000000..7bee5c7
 4138         -
-- /dev/null
        5222  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4139   5223   
@@ -0,0 +1,12 @@
        5224  +
{
        5225  +
    "credentials": {
        5226  +
        "access_key_id": "AKIDEXAMPLE",
        5227  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5228  +
    },
        5229  +
    "expiration_in_seconds": 3600,
        5230  +
    "normalize": false,
        5231  +
    "region": "us-east-1",
        5232  +
    "service": "service",
        5233  +
    "sign_body": false,
        5234  +
    "timestamp": "2015-08-30T12:36:00Z"
        5235  +
}
              \
 No newline at end of file
 4140   5236   
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
 4141   5237   
new file mode 100644
 4142   5238   
index 0000000..0b2b616
 4143         -
-- /dev/null
        5239  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4144   5240   
@@ -0,0 +1,9 @@
        5241  +
GET
        5242  +
/example%20space/
        5243  +
        5244  +
host:example.amazonaws.com
        5245  +
x-amz-date:20150830T123600Z
        5246  +
x-amz-region-set:us-east-1
        5247  +
        5248  +
host;x-amz-date;x-amz-region-set
        5249  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4145   5250   
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
 4146   5251   
new file mode 100644
 4147   5252   
index 0000000..e75ae08
 4148         -
-- /dev/null
        5253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4149   5254   
@@ -0,0 +1 @@
        5255  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4150   5256   
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
 4151   5257   
new file mode 100644
 4152   5258   
index 0000000..cb089db
 4153         -
-- /dev/null
        5259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4154   5260   
@@ -0,0 +1,6 @@
        5261  +
GET /example space/ HTTP/1.1
        5262  +
Host:example.amazonaws.com
        5263  +
X-Amz-Date:20150830T123600Z
        5264  +
X-Amz-Region-Set:us-east-1
        5265  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5266  +
 4155   5267   
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
 4156   5268   
new file mode 100644
 4157   5269   
index 0000000..ddae6e2
 4158         -
-- /dev/null
        5270  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4159   5271   
@@ -0,0 +1,4 @@
        5272  +
AWS4-ECDSA-P256-SHA256
        5273  +
20150830T123600Z
        5274  +
20150830/service/aws4_request
        5275  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4160   5276   
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
 4161   5277   
new file mode 100644
 4162   5278   
index 0000000..379dcb2
 4163         -
-- /dev/null
        5279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4164   5280   
@@ -0,0 +1,4 @@
        5281  +
{
        5282  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5283  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5284  +
}
 4165   5285   
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
 4166   5286   
new file mode 100644
 4167   5287   
index 0000000..a66b3cb
 4168         -
-- /dev/null
        5288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4169   5289   
@@ -0,0 +1,7 @@
        5290  +
GET
        5291  +
/example%20space/
        5292  +
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
        5293  +
host:example.amazonaws.com
        5294  +
        5295  +
host
        5296  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4170   5297   
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
 4171   5298   
new file mode 100644
 4172   5299   
index 0000000..66a80c3
 4173         -
-- /dev/null
        5300  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4174   5301   
@@ -0,0 +1 @@
        5302  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4175   5303   
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
 4176   5304   
new file mode 100644
 4177   5305   
index 0000000..7d1b9d9
 4178         -
-- /dev/null
        5306  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4179   5307   
@@ -0,0 +1,3 @@
        5308  +
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
        5309  +
Host:example.amazonaws.com
        5310  +
 4180   5311   
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
 4181   5312   
new file mode 100644
 4182   5313   
index 0000000..b6ff6fb
 4183         -
-- /dev/null
        5314  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4184   5315   
@@ -0,0 +1,4 @@
        5316  +
AWS4-ECDSA-P256-SHA256
        5317  +
20150830T123600Z
        5318  +
20150830/service/aws4_request
        5319  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4185   5320   
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
 4186   5321   
new file mode 100644
 4187   5322   
index 0000000..ab509ab
 4188         -
-- /dev/null
        5323  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4189   5324   
@@ -0,0 +1,2 @@
        5325  +
GET /example space/ HTTP/1.1
        5326  +
Host:example.amazonaws.com
 4190   5327   
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
 4191   5328   
new file mode 100644
 4192   5329   
index 0000000..0468d80
 4193         -
-- /dev/null
        5330  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4194   5331   
@@ -0,0 +1,12 @@
        5332  +
{
        5333  +
    "credentials": {
        5334  +
        "access_key_id": "AKIDEXAMPLE",
        5335  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5336  +
    },
        5337  +
    "expiration_in_seconds": 3600,
        5338  +
    "normalize": true,
        5339  +
    "region": "us-east-1",
        5340  +
    "service": "service",
        5341  +
    "sign_body": false,
        5342  +
    "timestamp": "2015-08-30T12:36:00Z"
        5343  +
}
              \
 No newline at end of file
 4195   5344   
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
 4196   5345   
similarity index 99%
 4197   5346   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4198   5347   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4199   5348   
index b0db648..46d76bb 100644
 4200   5349   
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
 4201   5350   
new file mode 100644
 4202   5351   
index 0000000..53c0cb6
 4203         -
-- /dev/null
        5352  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4204   5353   
@@ -0,0 +1 @@
        5354  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4205   5355   
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
 4206   5356   
new file mode 100644
 4207   5357   
index 0000000..3bdb653
 4208         -
-- /dev/null
        5358  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4209   5359   
@@ -0,0 +1,6 @@
        5360  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5361  +
Host:example.amazonaws.com
        5362  +
X-Amz-Date:20150830T123600Z
        5363  +
X-Amz-Region-Set:us-east-1
        5364  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5365  +
 4210   5366   
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
 4211   5367   
similarity index 99%
 4212   5368   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4213   5369   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4214   5370   
index 20c7cd6..3b30173 100644
 4215   5371   
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
 4216   5372   
new file mode 100644
 4217   5373   
index 0000000..379dcb2
 4218         -
-- /dev/null
        5374  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4219   5375   
@@ -0,0 +1,4 @@
        5376  +
{
        5377  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5378  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5379  +
}
 4220   5380   
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
 4221   5381   
similarity index 99%
 4222   5382   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4223   5383   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4224   5384   
index f9fb726..7e93f58 100644
 4225   5385   
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
 4226   5386   
new file mode 100644
 4227   5387   
index 0000000..48311a8
 4228         -
-- /dev/null
        5388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4229   5389   
@@ -0,0 +1 @@
        5390  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4230   5391   
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
 4231   5392   
new file mode 100644
 4232   5393   
index 0000000..82da9be
 4233         -
-- /dev/null
        5394  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4234   5395   
@@ -0,0 +1,3 @@
        5396  +
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
        5397  +
Host:example.amazonaws.com
        5398  +
 4235   5399   
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
 4236   5400   
similarity index 99%
 4237   5401   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4238   5402   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4239   5403   
index ef06e89..4aab9a2 100644
 4240   5404   
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
 4241   5405   
similarity index 80%
 4242   5406   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4243   5407   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4244   5408   
index da760cd..a149694 100644
 4245         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5409  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4246   5410   
@@ -1,3 +1,2 @@
 4247   5411   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4248   5412   
Host:example.amazonaws.com
 4249         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4250   5413   
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
 4251   5414   
new file mode 100644
 4252   5415   
index 0000000..0468d80
 4253         -
-- /dev/null
        5416  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4254   5417   
@@ -0,0 +1,12 @@
        5418  +
{
        5419  +
    "credentials": {
        5420  +
        "access_key_id": "AKIDEXAMPLE",
        5421  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5422  +
    },
        5423  +
    "expiration_in_seconds": 3600,
        5424  +
    "normalize": true,
        5425  +
    "region": "us-east-1",
        5426  +
    "service": "service",
        5427  +
    "sign_body": false,
        5428  +
    "timestamp": "2015-08-30T12:36:00Z"
        5429  +
}
              \
 No newline at end of file
 4255   5430   
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
 4256   5431   
new file mode 100644
 4257   5432   
index 0000000..0f1afe7
 4258         -
-- /dev/null
        5433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4259   5434   
@@ -0,0 +1,9 @@
        5435  +
GET
        5436  +
/%E1%88%B4
        5437  +
        5438  +
host:example.amazonaws.com
        5439  +
x-amz-date:20150830T123600Z
        5440  +
x-amz-region-set:us-east-1
        5441  +
        5442  +
host;x-amz-date;x-amz-region-set
        5443  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4260   5444   
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
 4261   5445   
new file mode 100644
 4262   5446   
index 0000000..4b9af6c
 4263         -
-- /dev/null
        5447  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4264   5448   
@@ -0,0 +1 @@
        5449  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4265   5450   
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
 4266   5451   
new file mode 100644
 4267   5452   
index 0000000..d42d7b3
 4268         -
-- /dev/null
        5453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4269   5454   
@@ -0,0 +1,6 @@
        5455  +
GET /ሴ HTTP/1.1
        5456  +
Host:example.amazonaws.com
        5457  +
X-Amz-Date:20150830T123600Z
        5458  +
X-Amz-Region-Set:us-east-1
        5459  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        5460  +
 4270   5461   
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
 4271   5462   
new file mode 100644
 4272   5463   
index 0000000..0827f62
 4273         -
-- /dev/null
        5464  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4274   5465   
@@ -0,0 +1,4 @@
        5466  +
AWS4-ECDSA-P256-SHA256
        5467  +
20150830T123600Z
        5468  +
20150830/service/aws4_request
        5469  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4275   5470   
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
 4276   5471   
new file mode 100644
 4277   5472   
index 0000000..379dcb2
 4278         -
-- /dev/null
        5473  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4279   5474   
@@ -0,0 +1,4 @@
        5475  +
{
        5476  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5477  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5478  +
}
 4280   5479   
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
 4281   5480   
new file mode 100644
 4282   5481   
index 0000000..a41a2f8
 4283         -
-- /dev/null
        5482  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4284   5483   
@@ -0,0 +1,7 @@
        5484  +
GET
        5485  +
/%E1%88%B4
        5486  +
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
        5487  +
host:example.amazonaws.com
        5488  +
        5489  +
host
        5490  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4285   5491   
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
 4286   5492   
new file mode 100644
 4287   5493   
index 0000000..a5c7f4f
 4288         -
-- /dev/null
        5494  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4289   5495   
@@ -0,0 +1 @@
        5496  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4290   5497   
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
 4291   5498   
new file mode 100644
 4292   5499   
index 0000000..492ed33
 4293         -
-- /dev/null
        5500  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4294   5501   
@@ -0,0 +1,3 @@
        5502  +
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
        5503  +
Host:example.amazonaws.com
        5504  +
 4295   5505   
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
 4296   5506   
new file mode 100644
 4297   5507   
index 0000000..a93108f
 4298         -
-- /dev/null
        5508  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4299   5509   
@@ -0,0 +1,4 @@
        5510  +
AWS4-ECDSA-P256-SHA256
        5511  +
20150830T123600Z
        5512  +
20150830/service/aws4_request
        5513  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4300   5514   
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
 4301   5515   
new file mode 100644
 4302   5516   
index 0000000..9e273f6
 4303         -
-- /dev/null
        5517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4304   5518   
@@ -0,0 +1,2 @@
        5519  +
GET /ሴ HTTP/1.1
        5520  +
Host:example.amazonaws.com
 4305   5521   
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
 4306   5522   
new file mode 100644
 4307   5523   
index 0000000..0468d80
 4308         -
-- /dev/null
        5524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4309   5525   
@@ -0,0 +1,12 @@
        5526  +
{
        5527  +
    "credentials": {
        5528  +
        "access_key_id": "AKIDEXAMPLE",
        5529  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5530  +
    },
        5531  +
    "expiration_in_seconds": 3600,
        5532  +
    "normalize": true,
        5533  +
    "region": "us-east-1",
        5534  +
    "service": "service",
        5535  +
    "sign_body": false,
        5536  +
    "timestamp": "2015-08-30T12:36:00Z"
        5537  +
}
              \
 No newline at end of file
 4310   5538   
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
 4311   5539   
similarity index 99%
 4312   5540   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4313   5541   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4314   5542   
index bb9d4bf..edc0bb4 100644
 4315   5543   
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
 4316   5544   
new file mode 100644
 4317   5545   
index 0000000..ee9a272
 4318         -
-- /dev/null
        5546  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4319   5547   
@@ -0,0 +1 @@
        5548  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4320   5549   
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
 4321   5550   
new file mode 100644
 4322   5551   
index 0000000..2090343
 4323         -
-- /dev/null
        5552  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4324   5553   
@@ -0,0 +1,6 @@
        5554  +
GET /?Param1=value1 HTTP/1.1
        5555  +
Host:example.amazonaws.com
        5556  +
X-Amz-Date:20150830T123600Z
        5557  +
X-Amz-Region-Set:us-east-1
        5558  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        5559  +
 4325   5560   
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
 4326   5561   
similarity index 99%
 4327   5562   
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
 4328   5563   
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
 4329   5564   
index a176f1d..06ed74f 100644
 4330   5565   
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
 4331   5566   
new file mode 100644
 4332   5567   
index 0000000..379dcb2
 4333         -
-- /dev/null
        5568  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4334   5569   
@@ -0,0 +1,4 @@
        5570  +
{
        5571  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5572  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5573  +
}
 4335   5574   
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
 4336   5575   
similarity index 99%
 4337   5576   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4338   5577   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4339   5578   
index 344384b..a875d70 100644
 4340   5579   
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
 4341   5580   
new file mode 100644
 4342   5581   
index 0000000..ef93624
 4343         -
-- /dev/null
        5582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4344   5583   
@@ -0,0 +1 @@
        5584  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4345   5585   
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
 4346   5586   
new file mode 100644
 4347   5587   
index 0000000..92829f7
 4348         -
-- /dev/null
        5588  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4349   5589   
@@ -0,0 +1,3 @@
        5590  +
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
        5591  +
Host:example.amazonaws.com
        5592  +
 4350   5593   
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
 4351   5594   
similarity index 99%
 4352   5595   
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
 4353   5596   
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
 4354   5597   
index b625052..4ff9191 100644
 4355   5598   
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
 4356   5599   
similarity index 67%
 4357   5600   
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
 4358   5601   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4359   5602   
index 970d0a0..f4a03bb 100644
 4360         -
-- 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
        5603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4361   5604   
@@ -1,3 +1,2 @@
 4362   5605   
GET /?Param1=value1 HTTP/1.1
 4363   5606   
Host:example.amazonaws.com
 4364         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4365   5607   
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
 4366   5608   
new file mode 100644
 4367   5609   
index 0000000..0468d80
 4368         -
-- /dev/null
        5610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4369   5611   
@@ -0,0 +1,12 @@
        5612  +
{
        5613  +
    "credentials": {
        5614  +
        "access_key_id": "AKIDEXAMPLE",
        5615  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5616  +
    },
        5617  +
    "expiration_in_seconds": 3600,
        5618  +
    "normalize": true,
        5619  +
    "region": "us-east-1",
        5620  +
    "service": "service",
        5621  +
    "sign_body": false,
        5622  +
    "timestamp": "2015-08-30T12:36:00Z"
        5623  +
}
              \
 No newline at end of file
 4370   5624   
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
 4371   5625   
new file mode 100644
 4372   5626   
index 0000000..da07537
 4373         -
-- /dev/null
        5627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4374   5628   
@@ -0,0 +1,9 @@
        5629  +
GET
        5630  +
/
        5631  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        5632  +
host:example.amazonaws.com
        5633  +
x-amz-date:20150830T123600Z
        5634  +
x-amz-region-set:us-east-1
        5635  +
        5636  +
host;x-amz-date;x-amz-region-set
        5637  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4375   5638   
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
 4376   5639   
new file mode 100644
 4377   5640   
index 0000000..edb21e5
 4378         -
-- /dev/null
        5641  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4379   5642   
@@ -0,0 +1 @@
        5643  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4380   5644   
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
 4381   5645   
new file mode 100644
 4382   5646   
index 0000000..e60394c
 4383         -
-- /dev/null
        5647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4384   5648   
@@ -0,0 +1,6 @@
        5649  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5650  +
Host:example.amazonaws.com
        5651  +
X-Amz-Date:20150830T123600Z
        5652  +
X-Amz-Region-Set:us-east-1
        5653  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        5654  +
 4385   5655   
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
 4386   5656   
new file mode 100644
 4387   5657   
index 0000000..1dfc886
 4388         -
-- /dev/null
        5658  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4389   5659   
@@ -0,0 +1,4 @@
        5660  +
AWS4-ECDSA-P256-SHA256
        5661  +
20150830T123600Z
        5662  +
20150830/service/aws4_request
        5663  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4390   5664   
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
 4391   5665   
new file mode 100644
 4392   5666   
index 0000000..379dcb2
 4393         -
-- /dev/null
        5667  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4394   5668   
@@ -0,0 +1,4 @@
        5669  +
{
        5670  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5671  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5672  +
}
 4395   5673   
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
 4396   5674   
new file mode 100644
 4397   5675   
index 0000000..e94dc0c
 4398         -
-- /dev/null
        5676  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4399   5677   
@@ -0,0 +1,7 @@
        5678  +
GET
        5679  +
/
        5680  +
%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
        5681  +
host:example.amazonaws.com
        5682  +
        5683  +
host
        5684  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4400   5685   
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
 4401   5686   
new file mode 100644
 4402   5687   
index 0000000..7489437
 4403         -
-- /dev/null
        5688  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4404   5689   
@@ -0,0 +1 @@
        5690  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4405   5691   
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
 4406   5692   
new file mode 100644
 4407   5693   
index 0000000..90c0e73
 4408         -
-- /dev/null
        5694  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4409   5695   
@@ -0,0 +1,3 @@
        5696  +
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
        5697  +
Host:example.amazonaws.com
        5698  +
 4410   5699   
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
 4411   5700   
new file mode 100644
 4412   5701   
index 0000000..ab8a711
 4413         -
-- /dev/null
        5702  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4414   5703   
@@ -0,0 +1,4 @@
        5704  +
AWS4-ECDSA-P256-SHA256
        5705  +
20150830T123600Z
        5706  +
20150830/service/aws4_request
        5707  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4415   5708   
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
 4416   5709   
new file mode 100644
 4417   5710   
index 0000000..368c6e3
 4418         -
-- /dev/null
        5711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4419   5712   
@@ -0,0 +1,2 @@
        5713  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5714  +
Host:example.amazonaws.com
 4420   5715   
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
 4421   5716   
new file mode 100644
 4422   5717   
index 0000000..0468d80
 4423         -
-- /dev/null
        5718  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4424   5719   
@@ -0,0 +1,12 @@
        5720  +
{
        5721  +
    "credentials": {
        5722  +
        "access_key_id": "AKIDEXAMPLE",
        5723  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5724  +
    },
        5725  +
    "expiration_in_seconds": 3600,
        5726  +
    "normalize": true,
        5727  +
    "region": "us-east-1",
        5728  +
    "service": "service",
        5729  +
    "sign_body": false,
        5730  +
    "timestamp": "2015-08-30T12:36:00Z"
        5731  +
}
              \
 No newline at end of file
 4425   5732   
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
 4426   5733   
similarity index 99%
 4427   5734   
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
 4428   5735   
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
 4429   5736   
index 74f625a..3db56f7 100644
 4430   5737   
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
 4431   5738   
new file mode 100644
 4432   5739   
index 0000000..e6042bc
 4433         -
-- /dev/null
        5740  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4434   5741   
@@ -0,0 +1 @@
        5742  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4435   5743   
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
 4436   5744   
new file mode 100644
 4437   5745   
index 0000000..5505969
 4438         -
-- /dev/null
        5746  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4439   5747   
@@ -0,0 +1,6 @@
        5748  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        5749  +
Host:example.amazonaws.com
        5750  +
X-Amz-Date:20150830T123600Z
        5751  +
X-Amz-Region-Set:us-east-1
        5752  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        5753  +
 4440   5754   
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
 4441   5755   
similarity index 99%
 4442   5756   
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
 4443   5757   
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
 4444   5758   
index 44873b7..e8f5e31 100644
 4445   5759   
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
 4446   5760   
new file mode 100644
 4447   5761   
index 0000000..379dcb2
 4448         -
-- /dev/null
        5762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4449   5763   
@@ -0,0 +1,4 @@
        5764  +
{
        5765  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5766  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5767  +
}
 4450   5768   
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
 4451   5769   
similarity index 99%
 4452   5770   
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
 4453   5771   
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
 4454   5772   
index 6d30727..3fe6a9f 100644
 4455   5773   
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
 4456   5774   
new file mode 100644
 4457   5775   
index 0000000..3f35de8
 4458         -
-- /dev/null
        5776  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4459   5777   
@@ -0,0 +1 @@
        5778  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 4460   5779   
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
 4461   5780   
new file mode 100644
 4462   5781   
index 0000000..30b336b
 4463         -
-- /dev/null
        5782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 4464   5783   
@@ -0,0 +1,3 @@
        5784  +
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
        5785  +
Host:example.amazonaws.com
        5786  +
 4465   5787   
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
 4466   5788   
similarity index 99%
 4467   5789   
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
 4468   5790   
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
 4469   5791   
index 99d0510..7f0565f 100644
 4470   5792   
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
 4471   5793   
similarity index 100%
 4472   5794   
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
 4473   5795   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 4474   5796   
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
 4475   5797   
new file mode 100644
 4476   5798   
index 0000000..0468d80
 4477         -
-- /dev/null
        5799  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 4478   5800   
@@ -0,0 +1,12 @@
        5801  +
{
        5802  +
    "credentials": {
        5803  +
        "access_key_id": "AKIDEXAMPLE",
        5804  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5805  +
    },
        5806  +
    "expiration_in_seconds": 3600,
        5807  +
    "normalize": true,
        5808  +
    "region": "us-east-1",
        5809  +
    "service": "service",
        5810  +
    "sign_body": false,
        5811  +
    "timestamp": "2015-08-30T12:36:00Z"
        5812  +
}
              \
 No newline at end of file
 4479   5813   
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
 4480   5814   
similarity index 99%
 4481   5815   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 4482   5816   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4483   5817   
index 816c862..cc4537a 100644
 4484   5818   
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
 4485   5819   
new file mode 100644
 4486   5820   
index 0000000..70d38c1
 4487         -
-- /dev/null
        5821  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 4488   5822   
@@ -0,0 +1 @@
        5823  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 4489   5824   
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
 4490   5825   
new file mode 100644
 4491   5826   
index 0000000..0647eea
 4492         -
-- /dev/null
        5827  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 4493   5828   
@@ -0,0 +1,6 @@
        5829  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5830  +
Host:example.amazonaws.com
        5831  +
X-Amz-Date:20150830T123600Z
        5832  +
X-Amz-Region-Set:us-east-1
        5833  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        5834  +
 4494   5835   
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
 4495   5836   
similarity index 99%
 4496   5837   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 4497   5838   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4498   5839   
index 6129fc5..cc19d14 100644
 4499   5840   
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
 4500   5841   
new file mode 100644
 4501   5842   
index 0000000..379dcb2
 4502         -
-- /dev/null
        5843  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 4503   5844   
@@ -0,0 +1,4 @@
        5845  +
{
        5846  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5847  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5848  +
}
 4504   5849   
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
 4505   5850   
similarity index 99%
 4506   5851   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 4507   5852   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4508   5853   
index b77ee9f..ed6a10e 100644
 4509   5854   
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
 4510   5855   
new file mode 100644
 4511   5856   
index 0000000..2ceba7b
 4512         -
-- /dev/null
        5857  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 4513   5858   
@@ -0,0 +1 @@
        5859  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 4514   5860   
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
 4515   5861   
new file mode 100644
 4516   5862   
index 0000000..0cd6d0a
 4517         -
-- /dev/null
        5863  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 4518   5864   
@@ -0,0 +1,3 @@
        5865  +
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
        5866  +
Host:example.amazonaws.com
        5867  +
 4519   5868   
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
 4520   5869   
similarity index 99%
 4521   5870   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 4522   5871   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4523   5872   
index 1cfed7a..aad1421 100644
 4524   5873   
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
 4525   5874   
similarity index 86%
 4526   5875   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 4527   5876   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4528   5877   
index d2833b3..36b2fe3 100644
 4529         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        5878  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4530   5879   
@@ -1,3 +1,2 @@
 4531   5880   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4532   5881   
Host:example.amazonaws.com
 4533         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4534   5882   
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
 4535   5883   
new file mode 100644
 4536   5884   
index 0000000..0468d80
 4537         -
-- /dev/null
        5885  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 4538   5886   
@@ -0,0 +1,12 @@
        5887  +
{
        5888  +
    "credentials": {
        5889  +
        "access_key_id": "AKIDEXAMPLE",
        5890  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5891  +
    },
        5892  +
    "expiration_in_seconds": 3600,
        5893  +
    "normalize": true,
        5894  +
    "region": "us-east-1",
        5895  +
    "service": "service",
        5896  +
    "sign_body": false,
        5897  +
    "timestamp": "2015-08-30T12:36:00Z"
        5898  +
}
              \
 No newline at end of file
 4539   5899   
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
 4540   5900   
new file mode 100644
 4541   5901   
index 0000000..76db73d
 4542         -
-- /dev/null
        5902  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 4543   5903   
@@ -0,0 +1,9 @@
        5904  +
GET
        5905  +
/
        5906  +
        5907  +
host:example.amazonaws.com
        5908  +
x-amz-date:20150830T123600Z
        5909  +
x-amz-region-set:us-east-1
        5910  +
        5911  +
host;x-amz-date;x-amz-region-set
        5912  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4544   5913   
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
 4545   5914   
new file mode 100644
 4546   5915   
index 0000000..281cc62
 4547         -
-- /dev/null
        5916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 4548   5917   
@@ -0,0 +1 @@
        5918  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 4549   5919   
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
 4550   5920   
new file mode 100644
 4551   5921   
index 0000000..cce9925
 4552         -
-- /dev/null
        5922  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 4553   5923   
@@ -0,0 +1,6 @@
        5924  +
GET / HTTP/1.1
        5925  +
Host:example.amazonaws.com
        5926  +
X-Amz-Date:20150830T123600Z
        5927  +
X-Amz-Region-Set:us-east-1
        5928  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        5929  +
 4554   5930   
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
 4555   5931   
new file mode 100644
 4556   5932   
index 0000000..600f1d8
 4557         -
-- /dev/null
        5933  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 4558   5934   
@@ -0,0 +1,4 @@
        5935  +
AWS4-ECDSA-P256-SHA256
        5936  +
20150830T123600Z
        5937  +
20150830/service/aws4_request
        5938  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4559   5939   
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
 4560   5940   
new file mode 100644
 4561   5941   
index 0000000..379dcb2
 4562         -
-- /dev/null
        5942  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 4563   5943   
@@ -0,0 +1,4 @@
        5944  +
{
        5945  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5946  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5947  +
}
 4564   5948   
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
 4565   5949   
new file mode 100644
 4566   5950   
index 0000000..779c51c
 4567         -
-- /dev/null
        5951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 4568   5952   
@@ -0,0 +1,7 @@
        5953  +
GET
        5954  +
/
        5955  +
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
        5956  +
host:example.amazonaws.com
        5957  +
        5958  +
host
        5959  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4569   5960   
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
 4570   5961   
new file mode 100644
 4571   5962   
index 0000000..2979e5e
 4572         -
-- /dev/null
        5963  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 4573   5964   
@@ -0,0 +1 @@
        5965  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 4574   5966   
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
 4575   5967   
new file mode 100644
 4576   5968   
index 0000000..1b3179c
 4577         -
-- /dev/null
        5969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 4578   5970   
@@ -0,0 +1,3 @@
        5971  +
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
        5972  +
Host:example.amazonaws.com
        5973  +
 4579   5974   
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
 4580   5975   
new file mode 100644
 4581   5976   
index 0000000..6e29a7e
 4582         -
-- /dev/null
        5977  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 4583   5978   
@@ -0,0 +1,4 @@
        5979  +
AWS4-ECDSA-P256-SHA256
        5980  +
20150830T123600Z
        5981  +
20150830/service/aws4_request
        5982  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4584   5983   
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
 4585   5984   
similarity index 60%
 4586   5985   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 4587   5986   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4588   5987   
index 0f7a9bf..e659c3b 100644
 4589         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        5988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4590   5989   
@@ -1,3 +1,2 @@
 4591   5990   
GET / HTTP/1.1
 4592   5991   
Host:example.amazonaws.com
 4593         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4594   5992   
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
 4595   5993   
new file mode 100644
 4596   5994   
index 0000000..0468d80
 4597         -
-- /dev/null
        5995  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 4598   5996   
@@ -0,0 +1,12 @@
        5997  +
{
        5998  +
    "credentials": {
        5999  +
        "access_key_id": "AKIDEXAMPLE",
        6000  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6001  +
    },
        6002  +
    "expiration_in_seconds": 3600,
        6003  +
    "normalize": true,
        6004  +
    "region": "us-east-1",
        6005  +
    "service": "service",
        6006  +
    "sign_body": false,
        6007  +
    "timestamp": "2015-08-30T12:36:00Z"
        6008  +
}
              \
 No newline at end of file
 4599   6009   
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
 4600   6010   
new file mode 100644
 4601   6011   
index 0000000..8841ddf
 4602         -
-- /dev/null
        6012  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 4603   6013   
@@ -0,0 +1,9 @@
        6014  +
GET
        6015  +
/
        6016  +
%E1%88%B4=bar
        6017  +
host:example.amazonaws.com
        6018  +
x-amz-date:20150830T123600Z
        6019  +
x-amz-region-set:us-east-1
        6020  +
        6021  +
host;x-amz-date;x-amz-region-set
        6022  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4604   6023   
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
 4605   6024   
new file mode 100644
 4606   6025   
index 0000000..1497add
 4607         -
-- /dev/null
        6026  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 4608   6027   
@@ -0,0 +1 @@
        6028  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 4609   6029   
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
 4610   6030   
new file mode 100644
 4611   6031   
index 0000000..961bc10
 4612         -
-- /dev/null
        6032  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 4613   6033   
@@ -0,0 +1,6 @@
        6034  +
GET /?ሴ=bar HTTP/1.1
        6035  +
Host:example.amazonaws.com
        6036  +
X-Amz-Date:20150830T123600Z
        6037  +
X-Amz-Region-Set:us-east-1
        6038  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        6039  +
 4614   6040   
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
 4615   6041   
new file mode 100644
 4616   6042   
index 0000000..e78ed70
 4617         -
-- /dev/null
        6043  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 4618   6044   
@@ -0,0 +1,4 @@
        6045  +
AWS4-ECDSA-P256-SHA256
        6046  +
20150830T123600Z
        6047  +
20150830/service/aws4_request
        6048  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 4619   6049   
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
 4620   6050   
new file mode 100644
 4621   6051   
index 0000000..379dcb2
 4622         -
-- /dev/null
        6052  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 4623   6053   
@@ -0,0 +1,4 @@
        6054  +
{
        6055  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6056  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6057  +
}
 4624   6058   
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
 4625   6059   
new file mode 100644
 4626   6060   
index 0000000..6d5ae93
 4627         -
-- /dev/null
        6061  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 4628   6062   
@@ -0,0 +1,7 @@
        6063  +
GET
        6064  +
/
        6065  +
%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
        6066  +
host:example.amazonaws.com
        6067  +
        6068  +
host
        6069  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4629   6070   
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
 4630   6071   
new file mode 100644
 4631   6072   
index 0000000..92107f2
 4632         -
-- /dev/null
        6073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 4633   6074   
@@ -0,0 +1 @@
        6075  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 4634   6076   
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
 4635   6077   
new file mode 100644
 4636   6078   
index 0000000..bb8a75b
 4637         -
-- /dev/null
        6079  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 4638   6080   
@@ -0,0 +1,3 @@
        6081  +
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
        6082  +
Host:example.amazonaws.com
        6083  +
 4639   6084   
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
 4640   6085   
new file mode 100644
 4641   6086   
index 0000000..9fa94c7
 4642         -
-- /dev/null
        6087  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 4643   6088   
@@ -0,0 +1,4 @@
        6089  +
AWS4-ECDSA-P256-SHA256
        6090  +
20150830T123600Z
        6091  +
20150830/service/aws4_request
        6092  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 4644   6093   
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
 4645   6094   
new file mode 100644
 4646   6095   
index 0000000..aff333a
 4647         -
-- /dev/null
        6096  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 4648   6097   
@@ -0,0 +1,2 @@
        6098  +
GET /?ሴ=bar HTTP/1.1
        6099  +
Host:example.amazonaws.com
 4649   6100   
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
 4650   6101   
new file mode 100644
 4651   6102   
index 0000000..a334e18
 4652         -
-- /dev/null
        6103  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 4653   6104   
@@ -0,0 +1,13 @@
        6105  +
{
        6106  +
    "credentials": {
        6107  +
        "access_key_id": "AKIDEXAMPLE",
        6108  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6109  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6110  +
    },
        6111  +
    "expiration_in_seconds": 3600,
        6112  +
    "normalize": true,
        6113  +
    "region": "us-east-1",
        6114  +
    "service": "service",
        6115  +
    "sign_body": false,
        6116  +
    "timestamp": "2015-08-30T12:36:00Z"
        6117  +
}
              \
 No newline at end of file
 4654   6118   
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
 4655   6119   
similarity index 99%
 4656   6120   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 4657   6121   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 4658   6122   
index f14defd..0e9ad42 100644
 4659   6123   
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
 4660   6124   
new file mode 100644
 4661   6125   
index 0000000..a7673b5
 4662         -
-- /dev/null
        6126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 4663   6127   
@@ -0,0 +1 @@
        6128  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 4664   6129   
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
 4665   6130   
new file mode 100644
 4666   6131   
index 0000000..ed16e76
 4667         -
-- /dev/null
        6132  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 4668   6133   
@@ -0,0 +1,7 @@
        6134  +
GET / HTTP/1.1
        6135  +
Host:example.amazonaws.com
        6136  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6137  +
X-Amz-Date:20150830T123600Z
        6138  +
X-Amz-Region-Set:us-east-1
        6139  +
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
        6140  +
 4669   6141   
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
 4670   6142   
similarity index 99%
 4671   6143   
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
 4672   6144   
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
 4673   6145   
index 4edece5..6c1ec65 100644
 4674   6146   
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
 4675   6147   
new file mode 100644
 4676   6148   
index 0000000..379dcb2
 4677         -
-- /dev/null
        6149  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 4678   6150   
@@ -0,0 +1,4 @@
        6151  +
{
        6152  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6153  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6154  +
}
 4679   6155   
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
 4680   6156   
similarity index 99%
 4681   6157   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 4682   6158   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 4683   6159   
index 7c042af..1876b42 100644
 4684   6160   
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
 4685   6161   
new file mode 100644
 4686   6162   
index 0000000..903dfb4
 4687         -
-- /dev/null
        6163  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 4688   6164   
@@ -0,0 +1 @@
        6165  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 4689   6166   
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
 4690   6167   
new file mode 100644
 4691   6168   
index 0000000..bf1d246
 4692         -
-- /dev/null
        6169  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 4693   6170   
@@ -0,0 +1,3 @@
        6171  +
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
        6172  +
Host:example.amazonaws.com
        6173  +
 4694   6174   
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
 4695   6175   
similarity index 99%
 4696   6176   
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
 4697   6177   
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
 4698   6178   
index 0fd066a..f1b1790 100644
 4699   6179   
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
 4700   6180   
similarity index 60%
 4701   6181   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 4702   6182   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4703   6183   
index 0f7a9bf..e659c3b 100644
 4704         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6184  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4705   6185   
@@ -1,3 +1,2 @@
 4706   6186   
GET / HTTP/1.1
 4707   6187   
Host:example.amazonaws.com
 4708         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4709   6188   
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
 4710   6189   
new file mode 100644
 4711   6190   
index 0000000..76db73d
 4712         -
-- /dev/null
        6191  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 4713   6192   
@@ -0,0 +1,9 @@
        6193  +
GET
        6194  +
/
        6195  +
        6196  +
host:example.amazonaws.com
        6197  +
x-amz-date:20150830T123600Z
        6198  +
x-amz-region-set:us-east-1
        6199  +
        6200  +
host;x-amz-date;x-amz-region-set
        6201  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4714   6202   
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
 4715   6203   
new file mode 100644
 4716   6204   
index 0000000..0468d80
 4717         -
-- /dev/null
        6205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 4718   6206   
@@ -0,0 +1,12 @@
        6207  +
{
        6208  +
    "credentials": {
        6209  +
        "access_key_id": "AKIDEXAMPLE",
        6210  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6211  +
    },
        6212  +
    "expiration_in_seconds": 3600,
        6213  +
    "normalize": true,
        6214  +
    "region": "us-east-1",
        6215  +
    "service": "service",
        6216  +
    "sign_body": false,
        6217  +
    "timestamp": "2015-08-30T12:36:00Z"
        6218  +
}
              \
 No newline at end of file
 4719   6219   
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
 4720   6220   
new file mode 100644
 4721   6221   
index 0000000..76db73d
 4722         -
-- /dev/null
        6222  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 4723   6223   
@@ -0,0 +1,9 @@
        6224  +
GET
        6225  +
/
        6226  +
        6227  +
host:example.amazonaws.com
        6228  +
x-amz-date:20150830T123600Z
        6229  +
x-amz-region-set:us-east-1
        6230  +
        6231  +
host;x-amz-date;x-amz-region-set
        6232  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4724   6233   
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
 4725   6234   
new file mode 100644
 4726   6235   
index 0000000..a96ff24
 4727         -
-- /dev/null
        6236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 4728   6237   
@@ -0,0 +1 @@
        6238  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 4729   6239   
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
 4730   6240   
new file mode 100644
 4731   6241   
index 0000000..689078b
 4732         -
-- /dev/null
        6242  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 4733   6243   
@@ -0,0 +1,6 @@
        6244  +
GET / HTTP/1.1
        6245  +
Host:example.amazonaws.com
        6246  +
X-Amz-Date:20150830T123600Z
        6247  +
X-Amz-Region-Set:us-east-1
        6248  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6249  +
 4734   6250   
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
 4735   6251   
new file mode 100644
 4736   6252   
index 0000000..600f1d8
 4737         -
-- /dev/null
        6253  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 4738   6254   
@@ -0,0 +1,4 @@
        6255  +
AWS4-ECDSA-P256-SHA256
        6256  +
20150830T123600Z
        6257  +
20150830/service/aws4_request
        6258  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4739   6259   
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
 4740   6260   
new file mode 100644
 4741   6261   
index 0000000..379dcb2
 4742         -
-- /dev/null
        6262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 4743   6263   
@@ -0,0 +1,4 @@
        6264  +
{
        6265  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6266  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6267  +
}
 4744   6268   
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
 4745   6269   
new file mode 100644
 4746   6270   
index 0000000..779c51c
 4747         -
-- /dev/null
        6271  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 4748   6272   
@@ -0,0 +1,7 @@
        6273  +
GET
        6274  +
/
        6275  +
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
        6276  +
host:example.amazonaws.com
        6277  +
        6278  +
host
        6279  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4749   6280   
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
 4750   6281   
new file mode 100644
 4751   6282   
index 0000000..cc42158
 4752         -
-- /dev/null
        6283  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 4753   6284   
@@ -0,0 +1 @@
        6285  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 4754   6286   
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
 4755   6287   
new file mode 100644
 4756   6288   
index 0000000..dc6d01d
 4757         -
-- /dev/null
        6289  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 4758   6290   
@@ -0,0 +1,3 @@
        6291  +
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
        6292  +
Host:example.amazonaws.com
        6293  +
 4759   6294   
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
 4760   6295   
new file mode 100644
 4761   6296   
index 0000000..6e29a7e
 4762         -
-- /dev/null
        6297  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 4763   6298   
@@ -0,0 +1,4 @@
        6299  +
AWS4-ECDSA-P256-SHA256
        6300  +
20150830T123600Z
        6301  +
20150830/service/aws4_request
        6302  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4764   6303   
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
 4765   6304   
new file mode 100644
 4766   6305   
index 0000000..e659c3b
 4767         -
-- /dev/null
        6306  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 4768   6307   
@@ -0,0 +1,2 @@
        6308  +
GET / HTTP/1.1
        6309  +
Host:example.amazonaws.com
 4769   6310   
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
 4770   6311   
new file mode 100644
 4771   6312   
index 0000000..600f1d8
 4772         -
-- /dev/null
        6313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 4773   6314   
@@ -0,0 +1,4 @@
        6315  +
AWS4-ECDSA-P256-SHA256
        6316  +
20150830T123600Z
        6317  +
20150830/service/aws4_request
        6318  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4774   6319   
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
 4775   6320   
new file mode 100644
 4776   6321   
index 0000000..0468d80
 4777         -
-- /dev/null
        6322  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 4778   6323   
@@ -0,0 +1,12 @@
        6324  +
{
        6325  +
    "credentials": {
        6326  +
        "access_key_id": "AKIDEXAMPLE",
        6327  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6328  +
    },
        6329  +
    "expiration_in_seconds": 3600,
        6330  +
    "normalize": true,
        6331  +
    "region": "us-east-1",
        6332  +
    "service": "service",
        6333  +
    "sign_body": false,
        6334  +
    "timestamp": "2015-08-30T12:36:00Z"
        6335  +
}
              \
 No newline at end of file
 4779   6336   
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
 4780   6337   
similarity index 99%
 4781   6338   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 4782   6339   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 4783   6340   
index a6942c1..e881ac7 100644
 4784   6341   
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
 4785   6342   
new file mode 100644
 4786   6343   
index 0000000..4210210
 4787         -
-- /dev/null
        6344  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 4788   6345   
@@ -0,0 +1 @@
        6346  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 4789   6347   
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
 4790   6348   
new file mode 100644
 4791   6349   
index 0000000..257b110
 4792         -
-- /dev/null
        6350  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 4793   6351   
@@ -0,0 +1,6 @@
        6352  +
POST / HTTP/1.1
        6353  +
Host:example.amazonaws.com
        6354  +
X-Amz-Date:20150830T123600Z
        6355  +
X-Amz-Region-Set:us-east-1
        6356  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        6357  +
 4794   6358   
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
 4795   6359   
similarity index 99%
 4796   6360   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 4797   6361   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 4798   6362   
index d5650cb..f8adf13 100644
 4799   6363   
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
 4800   6364   
new file mode 100644
 4801   6365   
index 0000000..379dcb2
 4802         -
-- /dev/null
        6366  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 4803   6367   
@@ -0,0 +1,4 @@
        6368  +
{
        6369  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6370  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6371  +
}
 4804   6372   
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
 4805   6373   
similarity index 99%
 4806   6374   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 4807   6375   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 4808   6376   
index e48ce07..5ea8e3c 100644
 4809   6377   
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
 4810   6378   
new file mode 100644
 4811   6379   
index 0000000..9e2069e
 4812         -
-- /dev/null
        6380  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 4813   6381   
@@ -0,0 +1 @@
        6382  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 4814   6383   
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
 4815   6384   
new file mode 100644
 4816   6385   
index 0000000..67f5d29
 4817         -
-- /dev/null
        6386  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 4818   6387   
@@ -0,0 +1,3 @@
        6388  +
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
        6389  +
Host:example.amazonaws.com
        6390  +
 4819   6391   
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
 4820   6392   
similarity index 99%
 4821   6393   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 4822   6394   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 4823   6395   
index 34e3382..711c162 100644
 4824   6396   
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
 4825   6397   
similarity index 61%
 4826   6398   
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
 4827   6399   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4828   6400   
index 3dc4179..3f0a82a 100644
 4829         -
-- 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
        6401  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4830   6402   
@@ -1,3 +1,2 @@
 4831   6403   
POST / HTTP/1.1
 4832   6404   
Host:example.amazonaws.com
 4833         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4834   6405   
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
 4835   6406   
new file mode 100644
 4836   6407   
index 0000000..0468d80
 4837         -
-- /dev/null
        6408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 4838   6409   
@@ -0,0 +1,12 @@
        6410  +
{
        6411  +
    "credentials": {
        6412  +
        "access_key_id": "AKIDEXAMPLE",
        6413  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6414  +
    },
        6415  +
    "expiration_in_seconds": 3600,
        6416  +
    "normalize": true,
        6417  +
    "region": "us-east-1",
        6418  +
    "service": "service",
        6419  +
    "sign_body": false,
        6420  +
    "timestamp": "2015-08-30T12:36:00Z"
        6421  +
}
              \
 No newline at end of file
 4839   6422   
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
 4840   6423   
similarity index 99%
 4841   6424   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 4842   6425   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 4843   6426   
index a8e1727..2883822 100644
 4844   6427   
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
 4845   6428   
new file mode 100644
 4846   6429   
index 0000000..e3c2e6e
 4847         -
-- /dev/null
        6430  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 4848   6431   
@@ -0,0 +1 @@
        6432  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 4849   6433   
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
 4850   6434   
new file mode 100644
 4851   6435   
index 0000000..1d6e288
 4852         -
-- /dev/null
        6436  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 4853   6437   
@@ -0,0 +1,7 @@
        6438  +
POST / HTTP/1.1
        6439  +
Host:example.amazonaws.com
        6440  +
My-Header1:value1
        6441  +
X-Amz-Date:20150830T123600Z
        6442  +
X-Amz-Region-Set:us-east-1
        6443  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        6444  +
 4854   6445   
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
 4855   6446   
similarity index 99%
 4856   6447   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 4857   6448   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 4858   6449   
index f6e3e9b..7c5236a 100644
 4859   6450   
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
 4860   6451   
new file mode 100644
 4861   6452   
index 0000000..379dcb2
 4862         -
-- /dev/null
        6453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 4863   6454   
@@ -0,0 +1,4 @@
        6455  +
{
        6456  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6457  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6458  +
}
 4864   6459   
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
 4865   6460   
similarity index 99%
 4866   6461   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 4867   6462   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 4868   6463   
index 0ae73e1..2cf3f29 100644
 4869   6464   
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
 4870   6465   
new file mode 100644
 4871   6466   
index 0000000..2a08401
 4872         -
-- /dev/null
        6467  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 4873   6468   
@@ -0,0 +1 @@
        6469  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 4874   6470   
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
 4875   6471   
new file mode 100644
 4876   6472   
index 0000000..8d2343f
 4877         -
-- /dev/null
        6473  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 4878   6474   
@@ -0,0 +1,4 @@
        6475  +
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
        6476  +
Host:example.amazonaws.com
        6477  +
My-Header1:value1
        6478  +
 4879   6479   
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
 4880   6480   
similarity index 99%
 4881   6481   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 4882   6482   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 4883   6483   
index 8cb96bf..2c4db7a 100644
 4884   6484   
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
 4885   6485   
similarity index 69%
 4886   6486   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 4887   6487   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4888   6488   
index 0253f19..917720e 100644
 4889         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        6489  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4890   6490   
@@ -1,4 +1,3 @@
 4891   6491   
POST / HTTP/1.1
 4892   6492   
Host:example.amazonaws.com
 4893   6493   
My-Header1:value1
 4894         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4895   6494   
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
 4896   6495   
new file mode 100644
 4897   6496   
index 0000000..0468d80
 4898         -
-- /dev/null
        6497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 4899   6498   
@@ -0,0 +1,12 @@
        6499  +
{
        6500  +
    "credentials": {
        6501  +
        "access_key_id": "AKIDEXAMPLE",
        6502  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6503  +
    },
        6504  +
    "expiration_in_seconds": 3600,
        6505  +
    "normalize": true,
        6506  +
    "region": "us-east-1",
        6507  +
    "service": "service",
        6508  +
    "sign_body": false,
        6509  +
    "timestamp": "2015-08-30T12:36:00Z"
        6510  +
}
              \
 No newline at end of file
 4900   6511   
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
 4901   6512   
similarity index 99%
 4902   6513   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 4903   6514   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 4904   6515   
index 1dc3ef8..164e65c 100644
 4905   6516   
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
 4906   6517   
new file mode 100644
 4907   6518   
index 0000000..7072b0e
 4908         -
-- /dev/null
        6519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 4909   6520   
@@ -0,0 +1 @@
        6521  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 4910   6522   
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
 4911   6523   
new file mode 100644
 4912   6524   
index 0000000..17f5e3e
 4913         -
-- /dev/null
        6525  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 4914   6526   
@@ -0,0 +1,7 @@
        6527  +
POST / HTTP/1.1
        6528  +
Host:example.amazonaws.com
        6529  +
My-Header1:VALUE1
        6530  +
X-Amz-Date:20150830T123600Z
        6531  +
X-Amz-Region-Set:us-east-1
        6532  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        6533  +
 4915   6534   
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
 4916   6535   
similarity index 99%
 4917   6536   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 4918   6537   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 4919   6538   
index 59c7e45..620f54e 100644
 4920   6539   
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
 4921   6540   
new file mode 100644
 4922   6541   
index 0000000..379dcb2
 4923         -
-- /dev/null
        6542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 4924   6543   
@@ -0,0 +1,4 @@
        6544  +
{
        6545  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6546  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6547  +
}
 4925   6548   
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
 4926   6549   
similarity index 99%
 4927   6550   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 4928   6551   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 4929   6552   
index 377e6f3..23e0da3 100644
 4930   6553   
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
 4931   6554   
new file mode 100644
 4932   6555   
index 0000000..a18acb8
 4933         -
-- /dev/null
        6556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 4934   6557   
@@ -0,0 +1 @@
        6558  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 4935   6559   
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
 4936   6560   
new file mode 100644
 4937   6561   
index 0000000..7cbdcfa
 4938         -
-- /dev/null
        6562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 4939   6563   
@@ -0,0 +1,4 @@
        6564  +
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
        6565  +
Host:example.amazonaws.com
        6566  +
My-Header1:VALUE1
        6567  +
 4940   6568   
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
 4941   6569   
similarity index 99%
 4942   6570   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 4943   6571   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 4944   6572   
index 84a7afd..0c90627 100644
 4945   6573   
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
 4946   6574   
similarity index 69%
 4947   6575   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 4948   6576   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4949   6577   
index 3f9987a..5f14c91 100644
 4950         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        6578  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4951   6579   
@@ -1,4 +1,3 @@
 4952   6580   
POST / HTTP/1.1
 4953   6581   
Host:example.amazonaws.com
 4954   6582   
My-Header1:VALUE1
 4955         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4956   6583   
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
 4957   6584   
new file mode 100644
 4958   6585   
index 0000000..8f1d5ce
 4959         -
-- /dev/null
        6586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 4960   6587   
@@ -0,0 +1,14 @@
        6588  +
{
        6589  +
    "credentials": {
        6590  +
        "access_key_id": "AKIDEXAMPLE",
        6591  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6592  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6593  +
    },
        6594  +
    "expiration_in_seconds": 3600,
        6595  +
    "normalize": true,
        6596  +
    "region": "us-east-1",
        6597  +
    "service": "service",
        6598  +
    "sign_body": false,
        6599  +
    "timestamp": "2015-08-30T12:36:00Z",
        6600  +
    "omit_session_token": true
        6601  +
}
 4961   6602   
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
 4962   6603   
similarity index 99%
 4963   6604   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 4964   6605   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 4965   6606   
index a6942c1..e881ac7 100644
 4966   6607   
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
 4967   6608   
new file mode 100644
 4968   6609   
index 0000000..9c5ecb9
 4969         -
-- /dev/null
        6610  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 4970   6611   
@@ -0,0 +1 @@
        6612  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 4971   6613   
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
 4972   6614   
similarity index 52%
 4973   6615   
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
 4974   6616   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4975   6617   
index 9d91775..61b6527 100644
 4976         -
-- 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
        6618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4977   6619   
@@ -1,4 +1,7 @@
 4978   6620   
POST / HTTP/1.1
 4979   6621   
Host:example.amazonaws.com
 4980         -
X-Amz-Date:20150830T123600Z
 4981   6622   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6623  +
X-Amz-Date:20150830T123600Z
        6624  +
X-Amz-Region-Set:us-east-1
        6625  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        6626  +
 4982   6627   
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
 4983   6628   
similarity index 99%
 4984   6629   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 4985   6630   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 4986   6631   
index d5650cb..f8adf13 100644
 4987   6632   
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
 4988   6633   
new file mode 100644
 4989   6634   
index 0000000..379dcb2
 4990         -
-- /dev/null
        6635  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 4991   6636   
@@ -0,0 +1,4 @@
        6637  +
{
        6638  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6639  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6640  +
}
 4992   6641   
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
 4993   6642   
similarity index 99%
 4994   6643   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 4995   6644   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 4996   6645   
index e48ce07..5ea8e3c 100644
 4997   6646   
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
 4998   6647   
new file mode 100644
 4999   6648   
index 0000000..ff8823a
 5000         -
-- /dev/null
        6649  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 5001   6650   
@@ -0,0 +1 @@
        6651  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 5002   6652   
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
 5003   6653   
new file mode 100644
 5004   6654   
index 0000000..cfac41b
 5005         -
-- /dev/null
        6655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 5006   6656   
@@ -0,0 +1,3 @@
        6657  +
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
        6658  +
Host:example.amazonaws.com
        6659  +
 5007   6660   
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
 5008   6661   
similarity index 99%
 5009   6662   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 5010   6663   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 5011   6664   
index 34e3382..711c162 100644
 5012   6665   
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
 5013   6666   
similarity index 61%
 5014   6667   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 5015   6668   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5016   6669   
index 3dc4179..3f0a82a 100644
 5017         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        6670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 5018   6671   
@@ -1,3 +1,2 @@
 5019   6672   
POST / HTTP/1.1
 5020   6673   
Host:example.amazonaws.com
 5021         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5022   6674   
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
 5023   6675   
new file mode 100644
 5024   6676   
index 0000000..5187392
 5025         -
-- /dev/null
        6677  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 5026   6678   
@@ -0,0 +1,14 @@
        6679  +
{
        6680  +
    "credentials": {
        6681  +
        "access_key_id": "AKIDEXAMPLE",
        6682  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6683  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6684  +
    },
        6685  +
    "expiration_in_seconds": 3600,
        6686  +
    "normalize": true,
        6687  +
    "region": "us-east-1",
        6688  +
    "service": "service",
        6689  +
    "sign_body": false,
        6690  +
    "timestamp": "2015-08-30T12:36:00Z",
        6691  +
    "omit_session_token": false
        6692  +
}
 5027   6693   
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
 5028   6694   
similarity index 99%
 5029   6695   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 5030   6696   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 5031   6697   
index dd408c8..e95924e 100644
 5032   6698   
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
 5033   6699   
new file mode 100644
 5034   6700   
index 0000000..1573f07
 5035         -
-- /dev/null
        6701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 5036   6702   
@@ -0,0 +1 @@
        6703  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 5037   6704   
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
 5038   6705   
new file mode 100644
 5039   6706   
index 0000000..6ef9a08
 5040         -
-- /dev/null
        6707  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 5041   6708   
@@ -0,0 +1,7 @@
        6709  +
POST / HTTP/1.1
        6710  +
Host:example.amazonaws.com
        6711  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6712  +
X-Amz-Date:20150830T123600Z
        6713  +
X-Amz-Region-Set:us-east-1
        6714  +
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
        6715  +
 5042   6716   
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
 5043   6717   
similarity index 99%
 5044   6718   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 5045   6719   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 5046   6720   
index f352b54..3c3235f 100644
 5047   6721   
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
 5048   6722   
new file mode 100644
 5049   6723   
index 0000000..379dcb2
 5050         -
-- /dev/null
        6724  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 5051   6725   
@@ -0,0 +1,4 @@
        6726  +
{
        6727  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6728  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6729  +
}
 5052   6730   
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
 5053   6731   
similarity index 99%
 5054   6732   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 5055   6733   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 5056   6734   
index 832cdc0..63b7de5 100644
 5057   6735   
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
 5058   6736   
new file mode 100644
 5059   6737   
index 0000000..713f57c
 5060         -
-- /dev/null
        6738  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 5061   6739   
@@ -0,0 +1 @@
        6740  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 5062   6741   
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
 5063   6742   
new file mode 100644
 5064   6743   
index 0000000..32c3bb3
 5065         -
-- /dev/null
        6744  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 5066   6745   
@@ -0,0 +1,3 @@
        6746  +
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
        6747  +
Host:example.amazonaws.com
        6748  +
 5067   6749   
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
 5068   6750   
similarity index 99%
 5069   6751   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 5070   6752   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 5071   6753   
index d7f3668..b46cd8c 100644
 5072   6754   
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
 5073   6755   
similarity index 60%
 5074   6756   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 5075   6757   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5076   6758   
index 8b5efc8..3f0a82a 100644
 5077         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        6759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 5078   6760   
@@ -1,3 +1,2 @@
 5079   6761   
POST / HTTP/1.1
 5080   6762   
Host:example.amazonaws.com
 5081         -
X-Amz-Date:20150830T123600Z
 5082   6763   
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
 5083   6764   
new file mode 100644
 5084   6765   
index 0000000..0468d80
 5085         -
-- /dev/null
        6766  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 5086   6767   
@@ -0,0 +1,12 @@
        6768  +
{
        6769  +
    "credentials": {
        6770  +
        "access_key_id": "AKIDEXAMPLE",
        6771  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6772  +
    },
        6773  +
    "expiration_in_seconds": 3600,
        6774  +
    "normalize": true,
        6775  +
    "region": "us-east-1",
        6776  +
    "service": "service",
        6777  +
    "sign_body": false,
        6778  +
    "timestamp": "2015-08-30T12:36:00Z"
        6779  +
}
              \
 No newline at end of file
 5087   6780   
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
 5088   6781   
similarity index 99%
 5089   6782   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 5090   6783   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 5091   6784   
index 02af60f..34b8c11 100644
 5092   6785   
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
 5093   6786   
new file mode 100644
 5094   6787   
index 0000000..aac6427
 5095         -
-- /dev/null
        6788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 5096   6789   
@@ -0,0 +1 @@
        6790  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 5097   6791   
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
 5098   6792   
new file mode 100644
 5099   6793   
index 0000000..a611436
 5100         -
-- /dev/null
        6794  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 5101   6795   
@@ -0,0 +1,6 @@
        6796  +
POST /?Param1=value1 HTTP/1.1
        6797  +
Host:example.amazonaws.com
        6798  +
X-Amz-Date:20150830T123600Z
        6799  +
X-Amz-Region-Set:us-east-1
        6800  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        6801  +
 5102   6802   
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
 5103   6803   
similarity index 99%
 5104   6804   
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
 5105   6805   
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
 5106   6806   
index 4256b4f..ad88dff 100644
 5107   6807   
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
 5108   6808   
new file mode 100644
 5109   6809   
index 0000000..379dcb2
 5110         -
-- /dev/null
        6810  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 5111   6811   
@@ -0,0 +1,4 @@
        6812  +
{
        6813  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6814  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6815  +
}
 5112   6816   
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
 5113   6817   
similarity index 99%
 5114   6818   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 5115   6819   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5116   6820   
index fa84bbd..76d5ad6 100644
 5117   6821   
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
 5118   6822   
new file mode 100644
 5119   6823   
index 0000000..4cb1c94
 5120         -
-- /dev/null
        6824  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 5121   6825   
@@ -0,0 +1 @@
        6826  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 5122   6827   
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
 5123   6828   
new file mode 100644
 5124   6829   
index 0000000..bd22b97
 5125         -
-- /dev/null
        6830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 5126   6831   
@@ -0,0 +1,3 @@
        6832  +
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
        6833  +
Host:example.amazonaws.com
        6834  +
 5127   6835   
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
 5128   6836   
similarity index 99%
 5129   6837   
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
 5130   6838   
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
 5131   6839   
index de270ef..8c9d319 100644
 5132   6840   
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
 5133   6841   
similarity index 67%
 5134   6842   
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
 5135   6843   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5136   6844   
index 9157bc7..c9d6e5d 100644
 5137         -
-- 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
        6845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5138   6846   
@@ -1,3 +1,2 @@
 5139   6847   
POST /?Param1=value1 HTTP/1.1
 5140   6848   
Host:example.amazonaws.com
 5141         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5142   6849   
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
 5143   6850   
new file mode 100644
 5144   6851   
index 0000000..0468d80
 5145         -
-- /dev/null
        6852  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 5146   6853   
@@ -0,0 +1,12 @@
        6854  +
{
        6855  +
    "credentials": {
        6856  +
        "access_key_id": "AKIDEXAMPLE",
        6857  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6858  +
    },
        6859  +
    "expiration_in_seconds": 3600,
        6860  +
    "normalize": true,
        6861  +
    "region": "us-east-1",
        6862  +
    "service": "service",
        6863  +
    "sign_body": false,
        6864  +
    "timestamp": "2015-08-30T12:36:00Z"
        6865  +
}
              \
 No newline at end of file
 5147   6866   
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
 5148   6867   
similarity index 99%
 5149   6868   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 5150   6869   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5151   6870   
index 02af60f..34b8c11 100644
 5152   6871   
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
 5153   6872   
new file mode 100644
 5154   6873   
index 0000000..34f75c8
 5155         -
-- /dev/null
        6874  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 5156   6875   
@@ -0,0 +1 @@
        6876  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 5157   6877   
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
 5158   6878   
new file mode 100644
 5159   6879   
index 0000000..c731408
 5160         -
-- /dev/null
        6880  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 5161   6881   
@@ -0,0 +1,6 @@
        6882  +
POST /?Param1=value1 HTTP/1.1
        6883  +
Host:example.amazonaws.com
        6884  +
X-Amz-Date:20150830T123600Z
        6885  +
X-Amz-Region-Set:us-east-1
        6886  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        6887  +
 5162   6888   
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
 5163   6889   
similarity index 99%
 5164   6890   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 5165   6891   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5166   6892   
index 4256b4f..ad88dff 100644
 5167   6893   
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
 5168   6894   
new file mode 100644
 5169   6895   
index 0000000..379dcb2
 5170         -
-- /dev/null
        6896  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 5171   6897   
@@ -0,0 +1,4 @@
        6898  +
{
        6899  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6900  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6901  +
}
 5172   6902   
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
 5173   6903   
similarity index 99%
 5174   6904   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 5175   6905   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 5176   6906   
index fa84bbd..76d5ad6 100644
 5177   6907   
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
 5178   6908   
new file mode 100644
 5179   6909   
index 0000000..ae000d6
 5180         -
-- /dev/null
        6910  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 5181   6911   
@@ -0,0 +1 @@
        6912  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 5182   6913   
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
 5183   6914   
new file mode 100644
 5184   6915   
index 0000000..a868f7d
 5185         -
-- /dev/null
        6916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 5186   6917   
@@ -0,0 +1,3 @@
        6918  +
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
        6919  +
Host:example.amazonaws.com
        6920  +
 5187   6921   
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
 5188   6922   
similarity index 99%
 5189   6923   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 5190   6924   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 5191   6925   
index de270ef..8c9d319 100644
 5192   6926   
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
 5193   6927   
similarity index 67%
 5194   6928   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 5195   6929   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5196   6930   
index 9157bc7..c9d6e5d 100644
 5197         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        6931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5198   6932   
@@ -1,3 +1,2 @@
 5199   6933   
POST /?Param1=value1 HTTP/1.1
 5200   6934   
Host:example.amazonaws.com
 5201         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5202   6935   
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
 5203   6936   
new file mode 100644
 5204   6937   
index 0000000..0468d80
 5205         -
-- /dev/null
        6938  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 5206   6939   
@@ -0,0 +1,12 @@
        6940  +
{
        6941  +
    "credentials": {
        6942  +
        "access_key_id": "AKIDEXAMPLE",
        6943  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6944  +
    },
        6945  +
    "expiration_in_seconds": 3600,
        6946  +
    "normalize": true,
        6947  +
    "region": "us-east-1",
        6948  +
    "service": "service",
        6949  +
    "sign_body": false,
        6950  +
    "timestamp": "2015-08-30T12:36:00Z"
        6951  +
}
              \
 No newline at end of file
 5207   6952   
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
 5208   6953   
similarity index 99%
 5209   6954   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 5210   6955   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 5211   6956   
index a6942c1..e881ac7 100644
 5212   6957   
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
 5213   6958   
new file mode 100644
 5214   6959   
index 0000000..7c5e47b
 5215         -
-- /dev/null
        6960  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 5216   6961   
@@ -0,0 +1 @@
        6962  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 5217   6963   
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
 5218   6964   
new file mode 100644
 5219   6965   
index 0000000..c0e50a0
 5220         -
-- /dev/null
        6966  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 5221   6967   
@@ -0,0 +1,6 @@
        6968  +
POST / HTTP/1.1
        6969  +
Host:example.amazonaws.com
        6970  +
X-Amz-Date:20150830T123600Z
        6971  +
X-Amz-Region-Set:us-east-1
        6972  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        6973  +
 5222   6974   
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
 5223   6975   
similarity index 99%
 5224   6976   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 5225   6977   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 5226   6978   
index d5650cb..f8adf13 100644
 5227   6979   
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
 5228   6980   
new file mode 100644
 5229   6981   
index 0000000..379dcb2
 5230         -
-- /dev/null
        6982  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 5231   6983   
@@ -0,0 +1,4 @@
        6984  +
{
        6985  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6986  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6987  +
}
 5232   6988   
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
 5233   6989   
similarity index 99%
 5234   6990   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 5235   6991   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 5236   6992   
index e48ce07..5ea8e3c 100644
 5237   6993   
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
 5238   6994   
new file mode 100644
 5239   6995   
index 0000000..ea8e3b4
 5240         -
-- /dev/null
        6996  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 5241   6997   
@@ -0,0 +1 @@
        6998  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 5242   6999   
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
 5243   7000   
new file mode 100644
 5244   7001   
index 0000000..616973f
 5245         -
-- /dev/null
        7002  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 5246   7003   
@@ -0,0 +1,3 @@
        7004  +
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
        7005  +
Host:example.amazonaws.com
        7006  +
 5247   7007   
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
 5248   7008   
similarity index 99%
 5249   7009   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 5250   7010   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 5251   7011   
index 34e3382..711c162 100644
 5252   7012   
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
 5253   7013   
new file mode 100644
 5254   7014   
index 0000000..3f0a82a
 5255         -
-- /dev/null
        7015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 5256   7016   
@@ -0,0 +1,2 @@
        7017  +
POST / HTTP/1.1
        7018  +
Host:example.amazonaws.com
 5257   7019   
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
 5258   7020   
new file mode 100644
 5259   7021   
index 0000000..0db1df1
 5260         -
-- /dev/null
        7022  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 5261   7023   
@@ -0,0 +1,12 @@
        7024  +
{
        7025  +
    "credentials": {
        7026  +
        "access_key_id": "AKIDEXAMPLE",
        7027  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7028  +
    },
        7029  +
    "expiration_in_seconds": 3600,
        7030  +
    "normalize": true,
        7031  +
    "region": "us-east-1",
        7032  +
    "service": "service",
        7033  +
    "sign_body": true,
        7034  +
    "timestamp": "2015-08-30T12:36:00Z"
        7035  +
}
              \
 No newline at end of file
 5262   7036   
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
 5263   7037   
similarity index 62%
 5264   7038   
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
 5265   7039   
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
 5266   7040   
index 05ab787..62639b2 100644
 5267         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        7041  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 5268   7042   
@@ -1,12 +1,12 @@
 5269   7043   
POST
 5270   7044   
/
 5271   7045   
 5272   7046   
content-length:13
 5273   7047   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5274   7048   
host:example.amazonaws.com
 5275         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7049  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5276   7050   
x-amz-date:20150830T123600Z
 5277   7051   
x-amz-region-set:us-east-1
 5278   7052   
 5279   7053   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5280         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7054  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5281   7055   
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
 5282   7056   
new file mode 100644
 5283   7057   
index 0000000..006ec2e
 5284         -
-- /dev/null
        7058  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 5285   7059   
@@ -0,0 +1 @@
        7060  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 5286   7061   
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
 5287   7062   
new file mode 100644
 5288   7063   
index 0000000..87a11f2
 5289         -
-- /dev/null
        7064  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 5290   7065   
@@ -0,0 +1,10 @@
        7066  +
POST / HTTP/1.1
        7067  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7068  +
Host:example.amazonaws.com
        7069  +
Content-Length:13
        7070  +
X-Amz-Date:20150830T123600Z
        7071  +
X-Amz-Region-Set:us-east-1
        7072  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7073  +
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
        7074  +
        7075  +
Param1=value1
              \
 No newline at end of file
 5291   7076   
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
 5292   7077   
new file mode 100644
 5293   7078   
index 0000000..c047afb
 5294         -
-- /dev/null
        7079  +
++ 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
 5295   7080   
@@ -0,0 +1,4 @@
        7081  +
AWS4-ECDSA-P256-SHA256
        7082  +
20150830T123600Z
        7083  +
20150830/service/aws4_request
        7084  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 5296   7085   
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
 5297   7086   
new file mode 100644
 5298   7087   
index 0000000..379dcb2
 5299         -
-- /dev/null
        7088  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 5300   7089   
@@ -0,0 +1,4 @@
        7090  +
{
        7091  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7092  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7093  +
}
 5301   7094   
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
 5302   7095   
similarity index 85%
 5303   7096   
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
 5304   7097   
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
 5305   7098   
index fcc454f..6933a8c 100644
 5306         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        7099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 5307   7100   
@@ -1,9 +1,9 @@
 5308   7101   
POST
 5309   7102   
/
 5310   7103   
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
 5311   7104   
content-length:13
 5312   7105   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5313   7106   
host:example.amazonaws.com
 5314   7107   
 5315   7108   
content-length;content-type;host
 5316         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7109  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5317   7110   
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
 5318   7111   
new file mode 100644
 5319   7112   
index 0000000..34a2e12
 5320         -
-- /dev/null
        7113  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 5321   7114   
@@ -0,0 +1 @@
        7115  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 5322   7116   
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
 5323   7117   
new file mode 100644
 5324   7118   
index 0000000..197b99e
 5325         -
-- /dev/null
        7119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 5326   7120   
@@ -0,0 +1,6 @@
        7121  +
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
        7122  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7123  +
Host:example.amazonaws.com
        7124  +
Content-Length:13
        7125  +
        7126  +
Param1=value1
              \
 No newline at end of file
 5327   7127   
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
 5328   7128   
new file mode 100644
 5329   7129   
index 0000000..9d2bc74
 5330         -
-- /dev/null
        7130  +
++ 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
 5331   7131   
@@ -0,0 +1,4 @@
        7132  +
AWS4-ECDSA-P256-SHA256
        7133  +
20150830T123600Z
        7134  +
20150830/service/aws4_request
        7135  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 5332   7136   
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
 5333   7137   
similarity index 80%
 5334   7138   
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
 5335   7139   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5336   7140   
index 36015f1..8289eaa 100644
 5337         -
-- 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
        7141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5338   7142   
@@ -1,6 +1,6 @@
 5339   7143   
POST / HTTP/1.1
 5340   7144   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 5341   7145   
Host:example.amazonaws.com
 5342         -
X-Amz-Date:20150830T123600Z
        7146  +
Content-Length:13
 5343   7147   
 5344   7148   
Param1=value1
              \
 No newline at end of file
 5345   7149   
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
 5346   7150   
new file mode 100644
 5347   7151   
index 0000000..0db1df1
 5348         -
-- /dev/null
        7152  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 5349   7153   
@@ -0,0 +1,12 @@
        7154  +
{
        7155  +
    "credentials": {
        7156  +
        "access_key_id": "AKIDEXAMPLE",
        7157  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7158  +
    },
        7159  +
    "expiration_in_seconds": 3600,
        7160  +
    "normalize": true,
        7161  +
    "region": "us-east-1",
        7162  +
    "service": "service",
        7163  +
    "sign_body": true,
        7164  +
    "timestamp": "2015-08-30T12:36:00Z"
        7165  +
}
              \
 No newline at end of file
 5350   7166   
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
 5351   7167   
similarity index 61%
 5352   7168   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 5353   7169   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5354   7170   
index 69009dc..797632b 100644
 5355         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        7171  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5356   7172   
@@ -1,12 +1,12 @@
 5357   7173   
POST
 5358   7174   
/
 5359   7175   
 5360   7176   
content-length:13
 5361   7177   
content-type:application/x-www-form-urlencoded
 5362   7178   
host:example.amazonaws.com
 5363         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7179  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5364   7180   
x-amz-date:20150830T123600Z
 5365   7181   
x-amz-region-set:us-east-1
 5366   7182   
 5367   7183   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5368         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7184  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5369   7185   
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
 5370   7186   
new file mode 100644
 5371   7187   
index 0000000..f5a641c
 5372         -
-- /dev/null
        7188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 5373   7189   
@@ -0,0 +1 @@
        7190  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 5374   7191   
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
 5375   7192   
new file mode 100644
 5376   7193   
index 0000000..7bd94a7
 5377         -
-- /dev/null
        7194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 5378   7195   
@@ -0,0 +1,10 @@
        7196  +
POST / HTTP/1.1
        7197  +
Content-Type:application/x-www-form-urlencoded
        7198  +
Host:example.amazonaws.com
        7199  +
Content-Length:13
        7200  +
X-Amz-Date:20150830T123600Z
        7201  +
X-Amz-Region-Set:us-east-1
        7202  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7203  +
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
        7204  +
        7205  +
Param1=value1
              \
 No newline at end of file
 5379   7206   
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
 5380   7207   
new file mode 100644
 5381   7208   
index 0000000..8d25ba9
 5382         -
-- /dev/null
        7209  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 5383   7210   
@@ -0,0 +1,4 @@
        7211  +
AWS4-ECDSA-P256-SHA256
        7212  +
20150830T123600Z
        7213  +
20150830/service/aws4_request
        7214  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 5384   7215   
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
 5385   7216   
new file mode 100644
 5386   7217   
index 0000000..379dcb2
 5387         -
-- /dev/null
        7218  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 5388   7219   
@@ -0,0 +1,4 @@
        7220  +
{
        7221  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7222  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7223  +
}
 5389   7224   
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
 5390   7225   
similarity index 99%
 5391   7226   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 5392   7227   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 5393   7228   
index 9ed065b..563ff58 100644
 5394   7229   
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
 5395   7230   
new file mode 100644
 5396   7231   
index 0000000..0c77daf
 5397         -
-- /dev/null
        7232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 5398   7233   
@@ -0,0 +1 @@
        7234  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 5399   7235   
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
 5400   7236   
new file mode 100644
 5401   7237   
index 0000000..71d6de9
 5402         -
-- /dev/null
        7238  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 5403   7239   
@@ -0,0 +1,6 @@
        7240  +
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
        7241  +
Content-Type:application/x-www-form-urlencoded
        7242  +
Host:example.amazonaws.com
        7243  +
Content-Length:13
        7244  +
        7245  +
Param1=value1
              \
 No newline at end of file
 5404   7246   
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
 5405   7247   
similarity index 99%
 5406   7248   
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
 5407   7249   
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
 5408   7250   
index bef3143..cc7a224 100644
 5409   7251   
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
 5410   7252   
new file mode 100644
 5411   7253   
index 0000000..760b2d3
 5412         -
-- /dev/null
        7254  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 5413   7255   
@@ -0,0 +1,6 @@
        7256  +
POST / HTTP/1.1
        7257  +
Content-Type:application/x-www-form-urlencoded
        7258  +
Host:example.amazonaws.com
        7259  +
Content-Length:13
        7260  +
        7261  +
Param1=value1
              \
 No newline at end of file
 5414   7262   
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
 5415   7263   
index 9bd636f..b53f33f 100644
 5416         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        7264  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 5417   7265   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 5418   7266   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 5419   7267   
        }
 5420   7268   
 5421   7269   
        if let SignatureValues::QueryParams(values) = values {
 5422   7270   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 5423   7271   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 5424   7272   
 5425   7273   
            #[cfg(feature = "sigv4a")]
 5426   7274   
            if let Some(regions) = values.region_set {
 5427   7275   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 5428   7276   
            }
 5429   7277   
 5430   7278   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 5431   7279   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 5432   7280   
            add_param(
 5433   7281   
                &mut params,
 5434   7282   
                param::X_AMZ_SIGNED_HEADERS,
 5435   7283   
                values.signed_headers.as_str(),
 5436   7284   
            );
 5437   7285   
 5438   7286   
            if let Some(security_token) = values.security_token {
 5439   7287   
                add_param(
 5440   7288   
                    &mut params,
 5441   7289   
                    settings
 5442   7290   
                        .session_token_name_override
 5443   7291   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 5444   7292   
                    security_token,
 5445   7293   
                );
 5446   7294   
            }
 5447   7295   
        }
 5448         -
        // Sort by param name, and then by param value
        7296  +
        7297  +
        // Sort on the _encoded_ key/value pairs
        7298  +
        let mut params: Vec<(String, String)> = params
        7299  +
            .into_iter()
        7300  +
            .map(|x| {
        7301  +
                use aws_smithy_http::query::fmt_string;
        7302  +
                let enc_k = fmt_string(&x.0);
        7303  +
                let enc_v = fmt_string(&x.1);
        7304  +
                (enc_k, enc_v)
        7305  +
            })
        7306  +
            .collect();
        7307  +
 5449   7308   
        params.sort();
 5450   7309   
 5451   7310   
        let mut query = QueryWriter::new(uri);
 5452   7311   
        query.clear_params();
 5453   7312   
        for (key, value) in params {
 5454         -
            query.insert(&key, &value);
        7313  +
            query.insert_encoded(&key, &value);
 5455   7314   
        }
 5456   7315   
 5457   7316   
        let query = query.build_query();
 5458   7317   
        if query.is_empty() {
 5459   7318   
            None
 5460   7319   
        } else {
 5461   7320   
            Some(query)
 5462   7321   
        }
 5463   7322   
    }
 5464   7323   
 5465   7324   
    fn insert_host_header(
 5466   7325   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 5467   7326   
        uri: &Uri,
 5468   7327   
    ) -> HeaderValue {
 5469   7328   
        match canonical_headers.get(&HOST) {
 5470   7329   
            Some(header) => header.clone(),
 5471   7330   
            None => {
 5472   7331   
                let port = uri.port();
 5473   7332   
                let scheme = uri.scheme();
 5474   7333   
                let authority = uri
 5475   7334   
                    .authority()
 5476   7335   
                    .expect("request uri authority must be set for signing")
 5477   7336   
                    .as_str();
 5478   7337   
                let host = uri
 5479   7338   
                    .host()
 5480   7339   
                    .expect("request uri host must be set for signing");
 5481   7340   
 5482   7341   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 5483   7342   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 5484   7343   
                // sent in the Host header (and Hyper strips default ports if they are present)
 5485   7344   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 5486   7345   
            service,
 5487   7346   
            hashed_creq,
 5488   7347   
            signature_version: SignatureVersion::V4a,
 5489   7348   
        }
 5490   7349   
    }
 5491   7350   
}
 5492   7351   
 5493   7352   
impl fmt::Display for StringToSign<'_> {
 5494   7353   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 5495   7354   
        write!(
 5496   7355   
            f,
 5497   7356   
            "{}\n{}\n{}\n{}",
 5498   7357   
            self.algorithm,
 5499   7358   
            format_date_time(self.time),
 5500   7359   
            match self.signature_version {
 5501   7360   
                SignatureVersion::V4 => self.scope.to_string(),
 5502   7361   
                SignatureVersion::V4a => self.scope.v4a_display(),
 5503   7362   
            },
 5504   7363   
            self.hashed_creq
 5505   7364   
        )
 5506   7365   
    }
 5507   7366   
}
 5508   7367   
 5509   7368   
#[cfg(test)]
 5510   7369   
mod tests {
 5511   7370   
    use crate::date_time::test_parsers::parse_date_time;
 5512   7371   
    use crate::http_request::canonical_request::{
 5513   7372   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 5514   7373   
    };
 5515   7374   
    use crate::http_request::test;
        7375  +
    use crate::http_request::test::SigningSuiteTest;
 5516   7376   
    use crate::http_request::{
 5517   7377   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 5518   7378   
        SigningParams, SigningSettings,
 5519   7379   
    };
 5520   7380   
    use crate::sign::v4;
 5521   7381   
    use crate::sign::v4::sha256_hex_string;
 5522   7382   
    use aws_credential_types::Credentials;
 5523   7383   
    use aws_smithy_http::query_writer::QueryWriter;
 5524   7384   
    use aws_smithy_runtime_api::client::identity::Identity;
 5525   7385   
    use http0::{HeaderValue, Uri};
 5526   7386   
    use pretty_assertions::assert_eq;
 5527   7387   
    use proptest::{prelude::*, proptest};
 5528   7388   
    use std::borrow::Cow;
 5529   7389   
    use std::time::Duration;
 5530   7390   
 5531   7391   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 5532   7392   
        v4::signing_params::Builder::default()
 5533   7393   
            .identity(identity)
 5534   7394   
            .region("test-region")
 5535   7395   
            .name("testservicename")
 5536   7396   
            .time(parse_date_time("20210511T154045Z").unwrap())
 5537   7397   
            .settings(settings)
 5538   7398   
            .build()
 5539   7399   
            .unwrap()
 5540   7400   
            .into()
 5541   7401   
    }
 5542   7402   
 5543   7403   
    #[test]
 5544   7404   
    fn test_repeated_header() {
 5545         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7405  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7406  +
        let mut req = test.request();
 5546   7407   
        req.headers.push((
 5547   7408   
            "x-amz-object-attributes".to_string(),
 5548   7409   
            "Checksum".to_string(),
 5549   7410   
        ));
 5550   7411   
        req.headers.push((
 5551   7412   
            "x-amz-object-attributes".to_string(),
 5552   7413   
            "ObjectSize".to_string(),
 5553   7414   
        ));
 5554   7415   
        let req = SignableRequest::from(&req);
 5555   7416   
        let settings = SigningSettings {
 5556   7417   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5557   7418   
            session_token_mode: SessionTokenMode::Exclude,
 5558   7419   
            ..Default::default()
 5559   7420   
        };
 5560   7421   
        let identity = Credentials::for_tests().into();
 5561   7422   
        let signing_params = signing_params(&identity, settings);
 5562   7423   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5563   7424   
 5564   7425   
        assert_eq!(
 5565   7426   
            creq.values.signed_headers().to_string(),
 5566   7427   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 5567   7428   
        );
 5568   7429   
        assert_eq!(
 5569   7430   
            creq.header_values_for("x-amz-object-attributes"),
 5570   7431   
            "Checksum,ObjectSize",
 5571   7432   
        );
 5572   7433   
    }
 5573   7434   
 5574   7435   
    #[test]
 5575   7436   
    fn test_host_header_properly_handles_ports() {
 5576   7437   
        fn host_header_test_setup(endpoint: String) -> String {
 5577         -
            let mut req = test::v4::test_request("get-vanilla");
        7438  +
            let test = SigningSuiteTest::v4("get-vanilla");
        7439  +
            let mut req = test.request();
 5578   7440   
            req.uri = endpoint;
 5579   7441   
            let req = SignableRequest::from(&req);
 5580   7442   
            let settings = SigningSettings {
 5581   7443   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5582   7444   
                session_token_mode: SessionTokenMode::Exclude,
 5583   7445   
                ..Default::default()
 5584   7446   
            };
 5585   7447   
            let identity = Credentials::for_tests().into();
 5586   7448   
            let signing_params = signing_params(&identity, settings);
 5587   7449   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5588   7450   
            creq.header_values_for("host")
 5589   7451   
        }
 5590   7452   
 5591   7453   
        // HTTP request with 80 port should not be signed with that port
 5592   7454   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 5593   7455   
        assert_eq!(http_80_host_header, "localhost",);
 5594   7456   
 5595   7457   
        // HTTP request with non-80 port should be signed with that port
 5596   7458   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 5597   7459   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 5598   7460   
 5599   7461   
        // HTTPS request with 443 port should not be signed with that port
 5600   7462   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 5601   7463   
        assert_eq!(https_443_host_header, "localhost",);
 5602   7464   
 5603   7465   
        // HTTPS request with non-443 port should be signed with that port
 5604   7466   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 5605   7467   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 5606   7468   
    }
 5607   7469   
 5608   7470   
    #[test]
 5609   7471   
    fn test_set_xamz_sha_256() {
 5610         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7472  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7473  +
        let req = test.request();
 5611   7474   
        let req = SignableRequest::from(&req);
 5612   7475   
        let settings = SigningSettings {
 5613   7476   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5614   7477   
            session_token_mode: SessionTokenMode::Exclude,
 5615   7478   
            ..Default::default()
 5616   7479   
        };
 5617   7480   
        let identity = Credentials::for_tests().into();
 5618   7481   
        let mut signing_params = signing_params(&identity, settings);
 5619   7482   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5620   7483   
        assert_eq!(
 5621   7484   
            creq.values.content_sha256(),
 5622   7485   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 5623   7486   
        );
 5624   7487   
        // assert that the sha256 header was added
 5625   7488   
        assert_eq!(
 5626   7489   
            creq.values.signed_headers().as_str(),
 5627   7490   
            "host;x-amz-content-sha256;x-amz-date"
 5628   7491   
        );
 5629   7492   
 5630   7493   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 5631   7494   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5632   7495   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5633   7496   
    }
 5634   7497   
 5635   7498   
    #[test]
 5636   7499   
    fn test_unsigned_payload() {
 5637         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7500  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7501  +
        let mut req = test.request();
 5638   7502   
        req.set_body(SignableBody::UnsignedPayload);
 5639   7503   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 5640   7504   
 5641   7505   
        let settings = SigningSettings {
 5642   7506   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5643   7507   
            ..Default::default()
 5644   7508   
        };
 5645   7509   
        let identity = Credentials::for_tests().into();
 5646   7510   
        let signing_params = signing_params(&identity, settings);
 5647   7511   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5648   7512   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 5649   7513   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 5650   7514   
    }
 5651   7515   
 5652   7516   
    #[test]
 5653   7517   
    fn test_precomputed_payload() {
 5654   7518   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 5655         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7519  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7520  +
        let mut req = test.request();
 5656   7521   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 5657   7522   
        let req = SignableRequest::from(&req);
 5658   7523   
        let settings = SigningSettings {
 5659   7524   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5660   7525   
            ..Default::default()
 5661   7526   
        };
 5662   7527   
        let identity = Credentials::for_tests().into();
 5663   7528   
        let signing_params = signing_params(&identity, settings);
 5664   7529   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5665   7530   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 5666   7531   
        assert!(creq.to_string().ends_with(payload_hash));
 5667   7532   
    }
 5668   7533   
 5669   7534   
    #[test]
 5670   7535   
    fn test_generate_scope() {
 5671   7536   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 5672   7537   
        let scope = SigningScope {
 5673   7538   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5674   7539   
            region: "us-east-1",
 5675   7540   
            service: "iam",
 5676   7541   
        };
 5677   7542   
        assert_eq!(format!("{}\n", scope), expected);
 5678   7543   
    }
 5679   7544   
 5680   7545   
    #[test]
 5681   7546   
    fn test_string_to_sign() {
 5682   7547   
        let time = parse_date_time("20150830T123600Z").unwrap();
 5683         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 5684         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        7548  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7549  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        7550  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 5685   7551   
        let encoded = sha256_hex_string(creq.as_bytes());
 5686   7552   
 5687   7553   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 5688   7554   
        assert_eq!(expected_sts, actual.to_string());
 5689   7555   
    }
 5690   7556   
 5691   7557   
    #[test]
 5692   7558   
    fn test_digest_of_canonical_request() {
 5693         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        7559  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7560  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 5694   7561   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 5695   7562   
        let actual = sha256_hex_string(creq.as_bytes());
 5696   7563   
        assert_eq!(expected, actual);
 5697   7564   
    }
 5698   7565   
 5699   7566   
    #[test]
 5700   7567   
    fn test_double_url_encode_path() {
 5701         -
        let req = test::v4::test_request("double-encode-path");
        7568  +
        let test = SigningSuiteTest::v4("double-encode-path");
        7569  +
        let req = test.request();
 5702   7570   
        let req = SignableRequest::from(&req);
 5703   7571   
        let identity = Credentials::for_tests().into();
 5704   7572   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5705   7573   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5706   7574   
 5707         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        7575  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5708   7576   
        let actual = format!("{}", creq);
 5709   7577   
        assert_eq!(actual, expected);
 5710   7578   
    }
 5711   7579   
 5712   7580   
    #[test]
 5713   7581   
    fn test_double_url_encode() {
 5714         -
        let req = test::v4::test_request("double-url-encode");
        7582  +
        let test = SigningSuiteTest::v4("double-url-encode");
        7583  +
        let req = test.request();
 5715   7584   
        let req = SignableRequest::from(&req);
 5716   7585   
        let identity = Credentials::for_tests().into();
 5717   7586   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5718   7587   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5719         -
 5720         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        7588  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5721   7589   
        let actual = format!("{}", creq);
 5722   7590   
        assert_eq!(actual, expected);
 5723   7591   
    }
 5724   7592   
 5725   7593   
    #[test]
 5726   7594   
    fn test_tilde_in_uri() {
 5727   7595   
        let req = http0::Request::builder()
 5728   7596   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 5729   7597   
        let req = SignableRequest::from(&req);
 5730   7598   
        let identity = Credentials::for_tests().into();
 5731   7599   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5732   7600   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5733   7601   
        assert_eq!(
 5734   7602   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 5735   7603   
            creq.params.as_deref(),
 5736   7604   
        );
 5737   7605   
    }
 5738   7606   
 5739   7607   
    #[test]
 5740   7608   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 5741   7609   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 5742   7610   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 5743   7611   
 5744   7612   
        let mut query_writer = QueryWriter::new(&uri);
 5745   7613   
        query_writer.insert("list-type", "2");
 5746   7614   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 5747   7615   
 5748   7616   
        let req = http0::Request::builder()
 5749   7617   
            .uri(query_writer.build_uri())
 5750   7618   
            .body("")
 5751   7619   
            .unwrap()
 5752   7620   
            .into();
 5753   7621   
        let req = SignableRequest::from(&req);
 5754   7622   
        let identity = Credentials::for_tests().into();
 5755   7623   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5756   7624   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5757   7625   
 5758   7626   
        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~";
 5759   7627   
        let actual = creq.params.unwrap();
 5760   7628   
        assert_eq!(expected, actual);
 5761   7629   
    }
 5762   7630   
 5763   7631   
    #[test]
 5764   7632   
    fn test_omit_session_token() {
 5765         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7633  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7634  +
        let req = test.request();
 5766   7635   
        let req = SignableRequest::from(&req);
 5767   7636   
        let settings = SigningSettings {
 5768   7637   
            session_token_mode: SessionTokenMode::Include,
 5769   7638   
            ..Default::default()
 5770   7639   
        };
 5771   7640   
        let identity = Credentials::for_tests_with_session_token().into();
 5772   7641   
        let mut signing_params = signing_params(&identity, settings);
 5773   7642   
 5774   7643   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5775   7644   
        assert_eq!(
 5776   7645   
            creq.values.signed_headers().as_str(),
 5777   7646   
            "host;x-amz-date;x-amz-security-token"
 5778   7647   
        );
 5779   7648   
        assert_eq!(
 5780   7649   
            creq.headers.get("x-amz-security-token").unwrap(),
 5781   7650   
            "notarealsessiontoken"
 5782   7651   
        );
 5783   7652   
 5784   7653   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 5785   7654   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5786   7655   
        assert_eq!(
 5787   7656   
            creq.headers.get("x-amz-security-token").unwrap(),
 5788   7657   
            "notarealsessiontoken"
 5789   7658   
        );
 5790   7659   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5791   7660   
    }
 5792   7661   
 5793   7662   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 5794   7663   
    #[test]
 5795   7664   
    fn non_presigning_header_exclusion() {
 5796   7665   
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
 5797   7666   
index c4bbbee..30b4743 100644
 5798         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        7667  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 5799   7668   
@@ -478,436 +478,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 5800   7669   
        sensitive,
 5801   7670   
    });
 5802   7671   
}
 5803   7672   
 5804   7673   
// add signature to authorization header
 5805   7674   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 5806   7675   
fn build_authorization_header(
 5807   7676   
    access_key: &str,
 5808   7677   
    creq: &CanonicalRequest<'_>,
 5809   7678   
    sts: StringToSign<'_>,
 5810   7679   
    signature: &str,
 5811   7680   
    signature_version: SignatureVersion,
 5812   7681   
) -> String {
 5813   7682   
    let scope = match signature_version {
 5814   7683   
        SignatureVersion::V4 => sts.scope.to_string(),
 5815   7684   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 5816   7685   
    };
 5817   7686   
    format!(
 5818   7687   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 5819   7688   
        sts.algorithm,
 5820   7689   
        access_key,
 5821   7690   
        scope,
 5822   7691   
        creq.values.signed_headers().as_str(),
 5823   7692   
        signature
 5824   7693   
    )
 5825   7694   
}
 5826   7695   
#[cfg(test)]
 5827   7696   
mod tests {
 5828   7697   
    use crate::date_time::test_parsers::parse_date_time;
 5829   7698   
    use crate::http_request::sign::{add_header, SignableRequest};
        7699  +
    use crate::http_request::test::SigningSuiteTest;
 5830   7700   
    use crate::http_request::{
 5831         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        7701  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 5832   7702   
        SigningSettings,
 5833   7703   
    };
 5834   7704   
    use crate::sign::v4;
 5835   7705   
    use aws_credential_types::Credentials;
 5836   7706   
    use http0::{HeaderValue, Request};
 5837   7707   
    use pretty_assertions::assert_eq;
 5838   7708   
    use proptest::proptest;
 5839   7709   
    use std::borrow::Cow;
 5840   7710   
    use std::iter;
 5841         -
    use std::time::Duration;
 5842   7711   
 5843   7712   
    macro_rules! assert_req_eq {
 5844   7713   
        (http: $expected:expr, $actual:expr) => {
 5845   7714   
            let mut expected = ($expected).map(|_b|"body");
 5846   7715   
            let mut actual = ($actual).map(|_b|"body");
 5847   7716   
            make_headers_comparable(&mut expected);
 5848   7717   
            make_headers_comparable(&mut actual);
 5849   7718   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 5850   7719   
        };
 5851   7720   
        ($expected:tt, $actual:tt) => {
 5852   7721   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 5853   7722   
        };
 5854   7723   
    }
 5855   7724   
 5856   7725   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 5857   7726   
        for (_name, value) in request.headers_mut() {
 5858   7727   
            value.set_sensitive(false);
 5859   7728   
        }
 5860   7729   
    }
 5861   7730   
 5862         -
    #[test]
 5863         -
    fn test_sign_vanilla_with_headers() {
 5864         -
        let settings = SigningSettings::default();
 5865         -
        let identity = &Credentials::for_tests().into();
 5866         -
        let params = v4::SigningParams {
 5867         -
            identity,
 5868         -
            region: "us-east-1",
 5869         -
            name: "service",
 5870         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5871         -
            settings,
 5872         -
        }
 5873         -
        .into();
 5874         -
 5875         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5876         -
        let signable = SignableRequest::from(&original);
 5877         -
        let out = sign(signable, &params).unwrap();
 5878         -
        assert_eq!(
 5879         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 5880         -
            out.signature
 5881         -
        );
 5882         -
 5883         -
        let mut signed = original.as_http_request();
 5884         -
        out.output.apply_to_request_http0x(&mut signed);
 5885         -
 5886         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 5887         -
        assert_req_eq!(expected, signed);
 5888         -
    }
 5889         -
        7731  +
    // Sigv4A suite tests
 5890   7732   
    #[cfg(feature = "sigv4a")]
 5891         -
    mod sigv4a_tests {
 5892         -
        use super::*;
 5893         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5894         -
        use crate::http_request::{sign, test, SigningParams};
 5895         -
        use crate::sign::v4a;
 5896         -
        use p256::ecdsa::signature::{Signature, Verifier};
 5897         -
        use p256::ecdsa::{DerSignature, SigningKey};
 5898         -
        use pretty_assertions::assert_eq;
 5899         -
 5900         -
        fn new_v4a_signing_params_from_context(
 5901         -
            test_context: &'_ test::v4a::TestContext,
 5902         -
            signature_location: SignatureLocation,
 5903         -
        ) -> SigningParams<'_> {
 5904         -
            let mut params = v4a::SigningParams::from(test_context);
 5905         -
            params.settings.signature_location = signature_location;
 5906         -
 5907         -
            params.into()
 5908         -
        }
 5909         -
 5910         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 5911         -
            let tc = test::v4a::test_context(test_name);
 5912         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 5913         -
 5914         -
            let req = test::v4a::test_request(test_name);
 5915         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 5916         -
            let signable_req = SignableRequest::from(&req);
 5917         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
 5918         -
 5919         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
        7733  +
    mod v4a_suite {
        7734  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 5920   7735   
 5921         -
            let expected_string_to_sign =
 5922         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 5923         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 5924         -
            let actual_string_to_sign = StringToSign::new_v4a(
 5925         -
                *params.time(),
 5926         -
                params.region_set().unwrap(),
 5927         -
                params.name(),
 5928         -
                hashed_creq,
 5929         -
            )
 5930         -
            .to_string();
 5931         -
 5932         -
            assert_eq!(
 5933         -
                expected_string_to_sign, actual_string_to_sign,
 5934         -
                "'string to sign' didn't match"
 5935         -
            );
 5936         -
 5937         -
            let out = sign(signable_req, &params).unwrap();
 5938         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 5939         -
            out.output
 5940         -
                .apply_to_request_http0x(&mut req.as_http_request());
 5941         -
 5942         -
            let creds = params.credentials().unwrap();
 5943         -
            let signing_key =
 5944         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 5945         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 5946         -
            let sig = sig
 5947         -
                .try_into()
 5948         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 5949         -
 5950         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 5951         -
            let peer_public_key = signing_key.verifying_key();
 5952         -
            let sts = actual_string_to_sign.as_bytes();
 5953         -
            peer_public_key.verify(sts, &sig).unwrap();
        7736  +
        #[test]
        7737  +
        fn test_get_header_key_duplicate() {
        7738  +
            run_test_suite_v4a("get-header-key-duplicate")
 5954   7739   
        }
 5955   7740   
 5956   7741   
        #[test]
 5957         -
        fn test_get_header_key_duplicate() {
 5958         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        7742  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7743  +
        fn test_get_header_value_multiline() {
        7744  +
            run_test_suite_v4a("get-header-value-multiline")
 5959   7745   
        }
 5960   7746   
 5961   7747   
        #[test]
 5962   7748   
        fn test_get_header_value_order() {
 5963         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        7749  +
            run_test_suite_v4a("get-header-value-order")
 5964   7750   
        }
 5965   7751   
 5966   7752   
        #[test]
 5967   7753   
        fn test_get_header_value_trim() {
 5968         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        7754  +
            run_test_suite_v4a("get-header-value-trim");
 5969   7755   
        }
 5970   7756   
 5971   7757   
        #[test]
 5972   7758   
        fn test_get_relative_normalized() {
 5973         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        7759  +
            run_test_suite_v4a("get-relative-normalized");
 5974   7760   
        }
 5975   7761   
 5976   7762   
        #[test]
 5977   7763   
        fn test_get_relative_relative_normalized() {
 5978         -
            run_v4a_test_suite(
 5979         -
                "get-relative-relative-normalized",
 5980         -
                SignatureLocation::Headers,
 5981         -
            );
        7764  +
            run_test_suite_v4a("get-relative-relative-normalized");
 5982   7765   
        }
 5983   7766   
 5984   7767   
        #[test]
 5985   7768   
        fn test_get_relative_relative_unnormalized() {
 5986         -
            run_v4a_test_suite(
 5987         -
                "get-relative-relative-unnormalized",
 5988         -
                SignatureLocation::Headers,
 5989         -
            );
        7769  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 5990   7770   
        }
 5991   7771   
 5992   7772   
        #[test]
 5993   7773   
        fn test_get_relative_unnormalized() {
 5994         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        7774  +
            run_test_suite_v4a("get-relative-unnormalized");
 5995   7775   
        }
 5996   7776   
 5997   7777   
        #[test]
 5998   7778   
        fn test_get_slash_dot_slash_normalized() {
 5999         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        7779  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 6000   7780   
        }
 6001   7781   
 6002   7782   
        #[test]
 6003   7783   
        fn test_get_slash_dot_slash_unnormalized() {
 6004         -
            run_v4a_test_suite(
 6005         -
                "get-slash-dot-slash-unnormalized",
 6006         -
                SignatureLocation::Headers,
 6007         -
            );
        7784  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 6008   7785   
        }
 6009   7786   
 6010   7787   
        #[test]
 6011   7788   
        fn test_get_slash_normalized() {
 6012         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        7789  +
            run_test_suite_v4a("get-slash-normalized");
 6013   7790   
        }
 6014   7791   
 6015   7792   
        #[test]
 6016   7793   
        fn test_get_slash_pointless_dot_normalized() {
 6017         -
            run_v4a_test_suite(
 6018         -
                "get-slash-pointless-dot-normalized",
 6019         -
                SignatureLocation::Headers,
 6020         -
            );
        7794  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 6021   7795   
        }
 6022   7796   
 6023   7797   
        #[test]
 6024   7798   
        fn test_get_slash_pointless_dot_unnormalized() {
 6025         -
            run_v4a_test_suite(
 6026         -
                "get-slash-pointless-dot-unnormalized",
 6027         -
                SignatureLocation::Headers,
 6028         -
            );
        7799  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 6029   7800   
        }
 6030   7801   
 6031   7802   
        #[test]
 6032   7803   
        fn test_get_slash_unnormalized() {
 6033         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        7804  +
            run_test_suite_v4a("get-slash-unnormalized");
 6034   7805   
        }
 6035   7806   
 6036   7807   
        #[test]
 6037   7808   
        fn test_get_slashes_normalized() {
 6038         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        7809  +
            run_test_suite_v4a("get-slashes-normalized");
 6039   7810   
        }
 6040   7811   
 6041   7812   
        #[test]
 6042   7813   
        fn test_get_slashes_unnormalized() {
 6043         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        7814  +
            run_test_suite_v4a("get-slashes-unnormalized");
        7815  +
        }
        7816  +
        7817  +
        #[test]
        7818  +
        #[ignore = "relies on single encode of path segments"]
        7819  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7820  +
        // skipped until we add control over double_uri_encode in context.json
        7821  +
        fn test_get_space_normalized() {
        7822  +
            run_test_suite_v4a("get-space-normalized");
        7823  +
        }
        7824  +
        7825  +
        #[test]
        7826  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7827  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7828  +
        fn test_get_space_unnormalized() {
        7829  +
            run_test_suite_v4a("get-space-unnormalized");
 6044   7830   
        }
 6045   7831   
 6046   7832   
        #[test]
 6047   7833   
        fn test_get_unreserved() {
 6048         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        7834  +
            run_test_suite_v4a("get-unreserved");
        7835  +
        }
        7836  +
        7837  +
        #[test]
        7838  +
        #[ignore = "httparse fails on invalid uri character"]
        7839  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7840  +
        fn test_get_utf8() {
        7841  +
            run_test_suite_v4a("get-utf8");
 6049   7842   
        }
 6050   7843   
 6051   7844   
        #[test]
 6052   7845   
        fn test_get_vanilla() {
 6053         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        7846  +
            run_test_suite_v4a("get-vanilla");
 6054   7847   
        }
 6055   7848   
 6056   7849   
        #[test]
 6057   7850   
        fn test_get_vanilla_empty_query_key() {
 6058         -
            run_v4a_test_suite(
 6059         -
                "get-vanilla-empty-query-key",
 6060         -
                SignatureLocation::QueryParams,
 6061         -
            );
        7851  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 6062   7852   
        }
 6063   7853   
 6064   7854   
        #[test]
 6065   7855   
        fn test_get_vanilla_query() {
 6066         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        7856  +
            run_test_suite_v4a("get-vanilla-query");
        7857  +
        }
        7858  +
        7859  +
        #[test]
        7860  +
        fn test_get_vanilla_query_order_encoded() {
        7861  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 6067   7862   
        }
 6068   7863   
 6069   7864   
        #[test]
 6070   7865   
        fn test_get_vanilla_query_order_key_case() {
 6071         -
            run_v4a_test_suite(
 6072         -
                "get-vanilla-query-order-key-case",
 6073         -
                SignatureLocation::QueryParams,
 6074         -
            );
        7866  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 6075   7867   
        }
 6076   7868   
 6077   7869   
        #[test]
 6078   7870   
        fn test_get_vanilla_query_unreserved() {
 6079         -
            run_v4a_test_suite(
 6080         -
                "get-vanilla-query-unreserved",
 6081         -
                SignatureLocation::QueryParams,
 6082         -
            );
        7871  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        7872  +
        }
        7873  +
        7874  +
        #[test]
        7875  +
        #[ignore = "httparse fails on invalid uri character"]
        7876  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7877  +
        fn test_get_vanilla_utf8_query() {
        7878  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 6083   7879   
        }
 6084   7880   
 6085   7881   
        #[test]
 6086   7882   
        fn test_get_vanilla_with_session_token() {
 6087         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        7883  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 6088   7884   
        }
 6089   7885   
 6090   7886   
        #[test]
 6091   7887   
        fn test_post_header_key_case() {
 6092         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        7888  +
            run_test_suite_v4a("post-header-key-case");
 6093   7889   
        }
 6094   7890   
 6095   7891   
        #[test]
 6096   7892   
        fn test_post_header_key_sort() {
 6097         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        7893  +
            run_test_suite_v4a("post-header-key-sort");
 6098   7894   
        }
 6099   7895   
 6100   7896   
        #[test]
 6101   7897   
        fn test_post_header_value_case() {
 6102         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        7898  +
            run_test_suite_v4a("post-header-value-case");
 6103   7899   
        }
 6104   7900   
 6105   7901   
        #[test]
 6106   7902   
        fn test_post_sts_header_after() {
 6107         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        7903  +
            run_test_suite_v4a("post-sts-header-after");
 6108   7904   
        }
 6109   7905   
 6110   7906   
        #[test]
 6111   7907   
        fn test_post_sts_header_before() {
 6112         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        7908  +
            run_test_suite_v4a("post-sts-header-before");
 6113   7909   
        }
 6114   7910   
 6115   7911   
        #[test]
 6116   7912   
        fn test_post_vanilla() {
 6117         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        7913  +
            run_test_suite_v4a("post-vanilla");
 6118   7914   
        }
 6119   7915   
 6120   7916   
        #[test]
 6121   7917   
        fn test_post_vanilla_empty_query_value() {
 6122         -
            run_v4a_test_suite(
 6123         -
                "post-vanilla-empty-query-value",
 6124         -
                SignatureLocation::QueryParams,
 6125         -
            );
        7918  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 6126   7919   
        }
 6127   7920   
 6128   7921   
        #[test]
 6129   7922   
        fn test_post_vanilla_query() {
 6130         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        7923  +
            run_test_suite_v4a("post-vanilla-query");
 6131   7924   
        }
 6132   7925   
 6133   7926   
        #[test]
 6134   7927   
        fn test_post_x_www_form_urlencoded() {
 6135         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        7928  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 6136   7929   
        }
 6137   7930   
 6138   7931   
        #[test]
 6139   7932   
        fn test_post_x_www_form_urlencoded_parameters() {
 6140         -
            run_v4a_test_suite(
 6141         -
                "post-x-www-form-urlencoded-parameters",
 6142         -
                SignatureLocation::QueryParams,
 6143         -
            );
        7933  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 6144   7934   
        }
 6145   7935   
    }
 6146   7936   
 6147   7937   
    #[test]
 6148   7938   
    fn test_sign_url_escape() {
 6149         -
        let test = "double-encode-path";
        7939  +
        let test = SigningSuiteTest::v4("double-encode-path");
 6150   7940   
        let settings = SigningSettings::default();
 6151   7941   
        let identity = &Credentials::for_tests().into();
 6152   7942   
        let params = v4::SigningParams {
 6153   7943   
            identity,
 6154   7944   
            region: "us-east-1",
 6155   7945   
            name: "service",
 6156   7946   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6157   7947   
            settings,
 6158   7948   
        }
 6159   7949   
        .into();
 6160   7950   
 6161         -
        let original = test::v4::test_request(test);
        7951  +
        let original = test.request();
 6162   7952   
        let signable = SignableRequest::from(&original);
 6163   7953   
        let out = sign(signable, &params).unwrap();
 6164   7954   
        assert_eq!(
 6165   7955   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 6166   7956   
            out.signature
 6167   7957   
        );
 6168   7958   
 6169   7959   
        let mut signed = original.as_http_request();
 6170   7960   
        out.output.apply_to_request_http0x(&mut signed);
 6171   7961   
 6172         -
        let expected = test::v4::test_signed_request(test);
 6173         -
        assert_req_eq!(expected, signed);
 6174         -
    }
 6175         -
 6176         -
    #[test]
 6177         -
    fn test_sign_vanilla_with_query_params() {
 6178         -
        let settings = SigningSettings {
 6179         -
            signature_location: SignatureLocation::QueryParams,
 6180         -
            expires_in: Some(Duration::from_secs(35)),
 6181         -
            ..Default::default()
 6182         -
        };
 6183         -
        let identity = &Credentials::for_tests().into();
 6184         -
        let params = v4::SigningParams {
 6185         -
            identity,
 6186         -
            region: "us-east-1",
 6187         -
            name: "service",
 6188         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6189         -
            settings,
 6190         -
        }
 6191         -
        .into();
 6192         -
 6193         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6194         -
        let signable = SignableRequest::from(&original);
 6195         -
        let out = sign(signable, &params).unwrap();
 6196         -
        assert_eq!(
 6197         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 6198         -
            out.signature
 6199         -
        );
 6200         -
 6201         -
        let mut signed = original.as_http_request();
 6202         -
        out.output.apply_to_request_http0x(&mut signed);
 6203         -
 6204         -
        let expected =
 6205         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        7962  +
        let expected = test.signed_request(SignatureLocation::Headers);
 6206   7963   
        assert_req_eq!(expected, signed);
 6207   7964   
    }
 6208   7965   
 6209   7966   
    #[test]
 6210   7967   
    fn test_sign_headers_utf8() {
 6211   7968   
        let settings = SigningSettings::default();
 6212   7969   
        let identity = &Credentials::for_tests().into();
 6213   7970   
        let params = v4::SigningParams {
 6214   7971   
            identity,
 6215   7972   
            region: "us-east-1",
 6216   7973   
            name: "service",
 6217   7974   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6218   7975   
            settings,
 6219   7976   
        }
 6220   7977   
        .into();
 6221   7978   
 6222   7979   
        let original = http0::Request::builder()
 6223   7980   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 6224   7981   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 6225   7982   
            .body("")
 6226   7983   
            .unwrap()
 6227   7984   
            .into();
 6228   7985   
        let signable = SignableRequest::from(&original);
 6229   7986   
        let out = sign(signable, &params).unwrap();
 6230   7987   
        assert_eq!(
 6231   7988   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 6232   7989   
            out.signature
 6233   7990   
        );
 6234   7991   
 6235   7992   
        let mut signed = original.as_http_request();
 6236   7993   
@@ -1138,31 +1026,236 @@ mod tests {
 6237   7994   
        let mut request = http::Request::builder()
 6238   7995   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 6239   7996   
            .body("")
 6240   7997   
            .unwrap();
 6241   7998   
 6242   7999   
        instructions.apply_to_request_http1x(&mut request);
 6243   8000   
 6244   8001   
        assert_eq!(
 6245   8002   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 6246   8003   
            request.uri().path_and_query().unwrap().to_string()
 6247   8004   
        );
 6248   8005   
    }
 6249   8006   
 6250   8007   
    #[test]
 6251   8008   
    fn test_debug_signable_body() {
 6252   8009   
        let sut = SignableBody::Bytes(b"hello signable body");
 6253   8010   
        assert_eq!(
 6254   8011   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 6255   8012   
            format!("{sut:?}")
 6256   8013   
        );
 6257   8014   
 6258   8015   
        let sut = SignableBody::UnsignedPayload;
 6259   8016   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 6260   8017   
 6261   8018   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 6262   8019   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 6263   8020   
 6264   8021   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 6265   8022   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 6266   8023   
    }
        8024  +
        8025  +
    // v4 test suite
        8026  +
    mod v4_suite {
        8027  +
        use crate::http_request::test::run_test_suite_v4;
        8028  +
        8029  +
        #[test]
        8030  +
        fn test_get_header_key_duplicate() {
        8031  +
            run_test_suite_v4("get-header-key-duplicate");
        8032  +
        }
        8033  +
        8034  +
        #[test]
        8035  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8036  +
        fn test_get_header_value_multiline() {
        8037  +
            run_test_suite_v4("get-header-value-multiline");
        8038  +
        }
        8039  +
        8040  +
        #[test]
        8041  +
        fn test_get_header_value_order() {
        8042  +
            run_test_suite_v4("get-header-value-order");
        8043  +
        }
        8044  +
        8045  +
        #[test]
        8046  +
        fn test_get_header_value_trim() {
        8047  +
            run_test_suite_v4("get-header-value-trim");
        8048  +
        }
        8049  +
        8050  +
        #[test]
        8051  +
        fn test_get_relative_normalized() {
        8052  +
            run_test_suite_v4("get-relative-normalized");
        8053  +
        }
        8054  +
        8055  +
        #[test]
        8056  +
        fn test_get_relative_relative_normalized() {
        8057  +
            run_test_suite_v4("get-relative-relative-normalized");
        8058  +
        }
        8059  +
        8060  +
        #[test]
        8061  +
        fn test_get_relative_relative_unnormalized() {
        8062  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        8063  +
        }
        8064  +
        8065  +
        #[test]
        8066  +
        fn test_get_relative_unnormalized() {
        8067  +
            run_test_suite_v4("get-relative-unnormalized");
        8068  +
        }
        8069  +
        8070  +
        #[test]
        8071  +
        fn test_get_slash_dot_slash_normalized() {
        8072  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        8073  +
        }
        8074  +
        8075  +
        #[test]
        8076  +
        fn test_get_slash_dot_slash_unnormalized() {
        8077  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        8078  +
        }
        8079  +
        8080  +
        #[test]
        8081  +
        fn test_get_slash_normalized() {
        8082  +
            run_test_suite_v4("get-slash-normalized");
        8083  +
        }
        8084  +
        8085  +
        #[test]
        8086  +
        fn test_get_slash_pointless_dot_normalized() {
        8087  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        8088  +
        }
        8089  +
        8090  +
        #[test]
        8091  +
        fn test_get_slash_pointless_dot_unnormalized() {
        8092  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        8093  +
        }
        8094  +
        8095  +
        #[test]
        8096  +
        fn test_get_slash_unnormalized() {
        8097  +
            run_test_suite_v4("get-slash-unnormalized");
        8098  +
        }
        8099  +
        8100  +
        #[test]
        8101  +
        fn test_get_slashes_normalized() {
        8102  +
            run_test_suite_v4("get-slashes-normalized");
        8103  +
        }
        8104  +
        8105  +
        #[test]
        8106  +
        fn test_get_slashes_unnormalized() {
        8107  +
            run_test_suite_v4("get-slashes-unnormalized");
        8108  +
        }
        8109  +
        8110  +
        #[test]
        8111  +
        #[ignore = "relies on single encode of path segments"]
        8112  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8113  +
        // skipped until we add control over double_uri_encode in context.json
        8114  +
        fn test_get_space_normalized() {
        8115  +
            run_test_suite_v4("get-space-normalized");
        8116  +
        }
        8117  +
        8118  +
        #[test]
        8119  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8120  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8121  +
        fn test_get_space_unnormalized() {
        8122  +
            run_test_suite_v4("get-space-unnormalized");
        8123  +
        }
        8124  +
        8125  +
        #[test]
        8126  +
        fn test_get_unreserved() {
        8127  +
            run_test_suite_v4("get-unreserved");
        8128  +
        }
        8129  +
        8130  +
        #[test]
        8131  +
        #[ignore = "httparse fails on invalid uri character"]
        8132  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8133  +
        fn test_get_utf8() {
        8134  +
            run_test_suite_v4("get-utf8");
        8135  +
        }
        8136  +
        8137  +
        #[test]
        8138  +
        fn test_get_vanilla() {
        8139  +
            run_test_suite_v4("get-vanilla");
        8140  +
        }
        8141  +
        8142  +
        #[test]
        8143  +
        fn test_get_vanilla_empty_query_key() {
        8144  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        8145  +
        }
        8146  +
        8147  +
        #[test]
        8148  +
        fn test_get_vanilla_query() {
        8149  +
            run_test_suite_v4("get-vanilla-query");
        8150  +
        }
        8151  +
        8152  +
        #[test]
        8153  +
        fn test_get_vanilla_query_order_encoded() {
        8154  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        8155  +
        }
        8156  +
        8157  +
        #[test]
        8158  +
        fn test_get_vanilla_query_order_key_case() {
        8159  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        8160  +
        }
        8161  +
        8162  +
        #[test]
        8163  +
        fn test_get_vanilla_query_unreserved() {
        8164  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        8165  +
        }
        8166  +
        8167  +
        #[test]
        8168  +
        #[ignore = "httparse fails on invalid uri character"]
        8169  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8170  +
        fn test_get_vanilla_utf8_query() {
        8171  +
            run_test_suite_v4("get-vanilla-utf8-query");
        8172  +
        }
        8173  +
        8174  +
        #[test]
        8175  +
        fn test_get_vanilla_with_session_token() {
        8176  +
            run_test_suite_v4("get-vanilla-with-session-token");
        8177  +
        }
        8178  +
        8179  +
        #[test]
        8180  +
        fn test_post_header_key_case() {
        8181  +
            run_test_suite_v4("post-header-key-case");
        8182  +
        }
        8183  +
        8184  +
        #[test]
        8185  +
        fn test_post_header_key_sort() {
        8186  +
            run_test_suite_v4("post-header-key-sort");
        8187  +
        }
        8188  +
        8189  +
        #[test]
        8190  +
        fn test_post_header_value_case() {
        8191  +
            run_test_suite_v4("post-header-value-case");
        8192  +
        }
        8193  +
        8194  +
        #[test]
        8195  +
        fn test_post_sts_header_after() {
        8196  +
            run_test_suite_v4("post-sts-header-after");
        8197  +
        }
        8198  +
        8199  +
        #[test]
        8200  +
        fn test_post_sts_header_before() {
        8201  +
            run_test_suite_v4("post-sts-header-before");
        8202  +
        }
        8203  +
        8204  +
        #[test]
        8205  +
        fn test_post_vanilla() {
        8206  +
            run_test_suite_v4("post-vanilla");
        8207  +
        }
        8208  +
        8209  +
        #[test]
        8210  +
        fn test_post_vanilla_empty_query_value() {
        8211  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        8212  +
        }
        8213  +
        8214  +
        #[test]
        8215  +
        fn test_post_vanilla_query() {
        8216  +
            run_test_suite_v4("post-vanilla-query");
        8217  +
        }
        8218  +
        8219  +
        #[test]
        8220  +
        fn test_post_x_www_form_urlencoded() {
        8221  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        8222  +
        }
        8223  +
        8224  +
        #[test]
        8225  +
        fn test_post_x_www_form_urlencoded_parameters() {
        8226  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        8227  +
        }
        8228  +
    }
 6267   8229   
}
 6268   8230   
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
 6269   8231   
index be6c496..86eec20 100644
 6270         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        8232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 6271   8233   
@@ -1,242 +1,453 @@
 6272   8234   
/*
 6273   8235   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 6274   8236   
 * SPDX-License-Identifier: Apache-2.0
 6275   8237   
 */
 6276   8238   
 6277   8239   
//! Functions shared between the tests of several modules.
 6278   8240   
 6279         -
use crate::http_request::{SignableBody, SignableRequest};
        8241  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        8242  +
use crate::http_request::{
        8243  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        8244  +
    SigningSettings,
        8245  +
};
        8246  +
use aws_credential_types::Credentials;
        8247  +
use aws_smithy_runtime_api::client::identity::Identity;
 6280   8248   
use http0::{Method, Uri};
        8249  +
use std::borrow::Cow;
 6281   8250   
use std::error::Error as StdError;
        8251  +
use std::time::{Duration, SystemTime};
        8252  +
use time::format_description::well_known::Rfc3339;
        8253  +
use time::OffsetDateTime;
        8254  +
        8255  +
/// Common test suite collection
        8256  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        8257  +
enum Collection {
        8258  +
    V4,
        8259  +
    V4A,
        8260  +
}
 6282   8261   
 6283         -
pub(crate) mod v4 {
 6284         -
    use super::*;
        8262  +
/// A test from the common CRT test suite
        8263  +
#[derive(Debug, Clone)]
        8264  +
pub(crate) struct SigningSuiteTest {
        8265  +
    test_name: &'static str,
        8266  +
    collection: Collection,
        8267  +
}
 6285   8268   
 6286         -
    fn path(name: &str, ext: &str) -> String {
 6287         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        8269  +
impl SigningSuiteTest {
        8270  +
    /// Create a new test from the V4 test suite
        8271  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        8272  +
        Self {
        8273  +
            test_name,
        8274  +
            collection: Collection::V4,
 6288   8275   
        }
 6289         -
 6290         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 6291         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 6292         -
        read(&path(name, "creq")).trim().to_string()
 6293   8276   
    }
 6294   8277   
 6295         -
    pub(crate) fn test_sts(name: &str) -> String {
 6296         -
        read(&path(name, "sts"))
        8278  +
    /// Create a new test from the V4a test suite
        8279  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        8280  +
        Self {
        8281  +
            test_name,
        8282  +
            collection: Collection::V4A,
 6297   8283   
        }
 6298         -
 6299         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6300         -
        test_parsed_request(name, "req")
 6301   8284   
    }
 6302   8285   
 6303         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 6304         -
        test_parsed_request(name, "sreq")
        8286  +
    /// Get the path to a file in this test suite directory
        8287  +
    fn path(&self, filename: &str) -> String {
        8288  +
        let dir = match self.collection {
        8289  +
            Collection::V4 => "v4",
        8290  +
            Collection::V4A => "v4a",
        8291  +
        };
        8292  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 6305   8293   
    }
 6306   8294   
 6307         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 6308         -
        test_parsed_request(name, "qpsreq")
        8295  +
    /// Get the HTTP request for the test
        8296  +
    pub(crate) fn request(&self) -> TestRequest {
        8297  +
        test_parsed_request(&self.path("request.txt"))
 6309   8298   
    }
 6310   8299   
 6311         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 6312         -
        let path = path(name, ext);
 6313         -
        match parse_request(read(&path).as_bytes()) {
 6314         -
            Ok(parsed) => parsed,
 6315         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        8300  +
    /// Get the signed HTTP request for the test
        8301  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        8302  +
        match signature_location {
        8303  +
            SignatureLocation::QueryParams => {
        8304  +
                test_parsed_request(&self.path("query-signed-request.txt"))
 6316   8305   
            }
        8306  +
            SignatureLocation::Headers => {
        8307  +
                test_parsed_request(&self.path("header-signed-request.txt"))
 6317   8308   
            }
 6318         -
 6319         -
    #[test]
 6320         -
    fn test_parse() {
 6321         -
        test_request("post-header-key-case");
 6322   8309   
        }
 6323         -
 6324         -
    #[test]
 6325         -
    fn test_read_query_params() {
 6326         -
        test_request("get-vanilla-query-order-key-case");
 6327   8310   
    }
 6328         -
}
 6329         -
 6330         -
#[cfg(feature = "sigv4a")]
 6331         -
pub(crate) mod v4a {
 6332         -
    use super::*;
 6333         -
    use crate::http_request::{
 6334         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 6335         -
    };
 6336         -
    use aws_credential_types::Credentials;
 6337         -
    use aws_smithy_runtime_api::client::identity::Identity;
 6338         -
    use serde_derive::Deserialize;
 6339         -
    use std::time::{Duration, SystemTime};
 6340         -
    use time::format_description::well_known::Rfc3339;
 6341         -
    use time::OffsetDateTime;
 6342   8311   
 6343         -
    fn path(test_name: &str, definition_name: &str) -> String {
 6344         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        8312  +
    /// Get the canonical request for the test
        8313  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        8314  +
        match signature_location {
        8315  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        8316  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
 6345   8317   
        }
 6346         -
 6347         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6348         -
        test_parsed_request(&path(name, "request"))
 6349   8318   
    }
 6350   8319   
 6351         -
    pub(crate) fn test_canonical_request(
 6352         -
        name: &str,
 6353         -
        signature_location: SignatureLocation,
 6354         -
    ) -> String {
        8320  +
    /// Get the string to sign for the test
        8321  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
 6355   8322   
        match signature_location {
 6356         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 6357         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        8323  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        8324  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 6358   8325   
        }
 6359   8326   
    }
 6360   8327   
 6361         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
        8328  +
    /// Get the signature for the test
        8329  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
 6362   8330   
        match signature_location {
 6363         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 6364         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        8331  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        8332  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        8333  +
        }
 6365   8334   
    }
        8335  +
        8336  +
    /// Get the test context for the test
        8337  +
    pub(crate) fn context(&self) -> TestContext {
        8338  +
        let context = read(&self.path("context.json"));
        8339  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        8340  +
        tc_builder.build()
 6366   8341   
    }
        8342  +
}
 6367   8343   
 6368         -
    fn test_parsed_request(path: &str) -> TestRequest {
        8344  +
fn test_parsed_request(path: &str) -> TestRequest {
 6369   8345   
    match parse_request(read(path).as_bytes()) {
 6370   8346   
        Ok(parsed) => parsed,
 6371   8347   
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 6372   8348   
    }
 6373         -
    }
        8349  +
}
 6374   8350   
 6375         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 6376         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 6377         -
        let context = read(&path);
 6378         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 6379         -
        tc_builder.build()
 6380         -
    }
        8351  +
fn new_v4_signing_params_from_context(
        8352  +
    test_context: &'_ TestContext,
        8353  +
    signature_location: SignatureLocation,
        8354  +
) -> crate::http_request::SigningParams<'_> {
        8355  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        8356  +
    params.settings.signature_location = signature_location;
        8357  +
    params.into()
        8358  +
}
        8359  +
        8360  +
/// Run the given test from the v4 suite for both header and query
        8361  +
/// signature locations
        8362  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        8363  +
    run_v4_test(test_name, SignatureLocation::Headers);
        8364  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        8365  +
}
        8366  +
        8367  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        8368  +
    assert_eq!(expected.scheme(), actual.scheme());
        8369  +
    assert_eq!(expected.authority(), actual.authority());
        8370  +
    assert_eq!(expected.path(), actual.path());
        8371  +
        8372  +
    // query params may be out of order
        8373  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8374  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        8375  +
    expected_params.sort();
        8376  +
        8377  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8378  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        8379  +
    actual_params.sort();
        8380  +
        8381  +
    assert_eq!(expected_params, actual_params);
        8382  +
}
 6381   8383   
 6382         -
    pub(crate) struct TestContext {
        8384  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        8385  +
    let expected = expected.as_http_request();
        8386  +
    let actual = actual;
        8387  +
    assert_eq!(expected.method(), actual.method());
        8388  +
    assert_eq!(
        8389  +
        expected.headers().len(),
        8390  +
        actual.headers().len(),
        8391  +
        "extra or missing headers"
        8392  +
    );
        8393  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        8394  +
    assert_uri_eq(expected.uri(), actual.uri());
        8395  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        8396  +
}
        8397  +
        8398  +
/// Run the given test from the v4 suite for the given signature location
        8399  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        8400  +
    let test = SigningSuiteTest::v4(test_name);
        8401  +
    let tc = test.context();
        8402  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        8403  +
        8404  +
    let req = test.request();
        8405  +
    let expected_creq = test.canonical_request(signature_location);
        8406  +
    let signable_req = SignableRequest::from(&req);
        8407  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8408  +
        8409  +
    // check canonical request
        8410  +
    assert_eq!(
        8411  +
        expected_creq,
        8412  +
        actual_creq.to_string(),
        8413  +
        "canonical request didn't match (signature location: {signature_location:?})"
        8414  +
    );
        8415  +
        8416  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        8417  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8418  +
    let actual_string_to_sign = StringToSign::new_v4(
        8419  +
        *params.time(),
        8420  +
        params.region().unwrap(),
        8421  +
        params.name(),
        8422  +
        hashed_creq,
        8423  +
    )
        8424  +
    .to_string();
        8425  +
        8426  +
    // check string to sign
        8427  +
    assert_eq!(
        8428  +
        expected_string_to_sign, actual_string_to_sign,
        8429  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        8430  +
    );
        8431  +
        8432  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        8433  +
    let mut signed = req.as_http_request();
        8434  +
    out.output.apply_to_request_http0x(&mut signed);
        8435  +
        8436  +
    // check signature
        8437  +
    assert_eq!(
        8438  +
        test.signature(signature_location),
        8439  +
        out.signature,
        8440  +
        "signature didn't match (signature location: {signature_location:?})"
        8441  +
    );
        8442  +
        8443  +
    let expected = test.signed_request(signature_location);
        8444  +
    assert_requests_eq(expected, signed);
        8445  +
}
        8446  +
        8447  +
/// Test suite context.json
        8448  +
pub(crate) struct TestContext {
 6383   8449   
    pub(crate) identity: Identity,
 6384   8450   
    pub(crate) expiration_in_seconds: u64,
 6385   8451   
    pub(crate) normalize: bool,
 6386   8452   
    pub(crate) region: String,
 6387   8453   
    pub(crate) service: String,
 6388   8454   
    pub(crate) timestamp: String,
 6389   8455   
    pub(crate) omit_session_token: bool,
 6390   8456   
    pub(crate) sign_body: bool,
 6391         -
    }
 6392         -
 6393         -
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 6394         -
        fn from(tc: &'a TestContext) -> Self {
 6395         -
            crate::sign::v4a::SigningParams {
 6396         -
                identity: &tc.identity,
 6397         -
                region_set: &tc.region,
 6398         -
                name: &tc.service,
 6399         -
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 6400         -
                    .unwrap()
 6401         -
                    .into(),
 6402         -
                settings: SigningSettings {
 6403         -
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6404         -
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 6405         -
                    uri_path_normalization_mode: tc.normalize.into(),
 6406         -
                    session_token_mode: if tc.omit_session_token {
 6407         -
                        SessionTokenMode::Exclude
 6408         -
                    } else {
 6409         -
                        SessionTokenMode::Include
 6410         -
                    },
 6411         -
                    payload_checksum_kind: if tc.sign_body {
 6412         -
                        PayloadChecksumKind::XAmzSha256
 6413         -
                    } else {
 6414         -
                        PayloadChecksumKind::NoHeader
 6415         -
                    },
 6416         -
                    ..Default::default()
 6417         -
                },
 6418         -
            }
 6419         -
        }
 6420         -
    }
        8457  +
}
 6421   8458   
 6422         -
    // Serde has limitations requiring this odd workaround.
 6423         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 6424         -
    fn return_true() -> bool {
        8459  +
// Serde has limitations requiring this odd workaround.
        8460  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        8461  +
fn return_true() -> bool {
 6425   8462   
    true
 6426         -
    }
        8463  +
}
 6427   8464   
 6428         -
    #[derive(Deserialize)]
 6429         -
    pub(crate) struct TestContextBuilder {
        8465  +
#[derive(serde_derive::Deserialize)]
        8466  +
pub(crate) struct TestContextBuilder {
 6430   8467   
    credentials: TestContextCreds,
 6431   8468   
    expiration_in_seconds: u64,
 6432   8469   
    normalize: bool,
 6433   8470   
    region: String,
 6434   8471   
    service: String,
 6435   8472   
    timestamp: String,
 6436   8473   
    #[serde(default)]
 6437   8474   
    omit_session_token: bool,
 6438   8475   
    #[serde(default = "return_true")]
 6439   8476   
    sign_body: bool,
 6440         -
    }
        8477  +
}
 6441   8478   
 6442         -
    impl TestContextBuilder {
        8479  +
impl TestContextBuilder {
 6443   8480   
    pub(crate) fn build(self) -> TestContext {
 6444   8481   
        let identity = Identity::new(
 6445   8482   
            Credentials::from_keys(
 6446   8483   
                &self.credentials.access_key_id,
 6447   8484   
                &self.credentials.secret_access_key,
 6448   8485   
                self.credentials.token.clone(),
 6449   8486   
            ),
 6450   8487   
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 6451   8488   
        );
 6452   8489   
 6453   8490   
        TestContext {
 6454   8491   
            identity,
 6455   8492   
            expiration_in_seconds: self.expiration_in_seconds,
 6456   8493   
            normalize: self.normalize,
 6457   8494   
            region: self.region,
 6458   8495   
            service: self.service,
 6459   8496   
            timestamp: self.timestamp,
 6460   8497   
            omit_session_token: self.omit_session_token,
 6461   8498   
            sign_body: self.sign_body,
 6462   8499   
        }
 6463   8500   
    }
 6464         -
    }
        8501  +
}
 6465   8502   
 6466         -
    #[derive(Deserialize)]
 6467         -
    pub(crate) struct TestContextCreds {
        8503  +
#[derive(serde_derive::Deserialize)]
        8504  +
pub(crate) struct TestContextCreds {
 6468   8505   
    access_key_id: String,
 6469   8506   
    secret_access_key: String,
 6470   8507   
    token: Option<String>,
        8508  +
}
        8509  +
        8510  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        8511  +
    fn from(tc: &'a TestContext) -> Self {
        8512  +
        crate::sign::v4::SigningParams {
        8513  +
            identity: &tc.identity,
        8514  +
            region: &tc.region,
        8515  +
            name: &tc.service,
        8516  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8517  +
                .unwrap()
        8518  +
                .into(),
        8519  +
            settings: SigningSettings {
        8520  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8521  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8522  +
                uri_path_normalization_mode: tc.normalize.into(),
        8523  +
                session_token_mode: if tc.omit_session_token {
        8524  +
                    SessionTokenMode::Exclude
        8525  +
                } else {
        8526  +
                    SessionTokenMode::Include
        8527  +
                },
        8528  +
                payload_checksum_kind: if tc.sign_body {
        8529  +
                    PayloadChecksumKind::XAmzSha256
        8530  +
                } else {
        8531  +
                    PayloadChecksumKind::NoHeader
        8532  +
                },
        8533  +
                ..Default::default()
        8534  +
            },
        8535  +
        }
        8536  +
    }
        8537  +
}
        8538  +
        8539  +
#[cfg(feature = "sigv4a")]
        8540  +
pub(crate) mod v4a {
        8541  +
    use super::*;
        8542  +
    use crate::http_request::{
        8543  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        8544  +
    };
        8545  +
    use crate::sign::v4a;
        8546  +
    use p256::ecdsa::signature::{Signature, Verifier};
        8547  +
    use p256::ecdsa::{DerSignature, SigningKey};
        8548  +
    use std::time::Duration;
        8549  +
    use time::format_description::well_known::Rfc3339;
        8550  +
    use time::OffsetDateTime;
        8551  +
        8552  +
    fn new_v4a_signing_params_from_context(
        8553  +
        test_context: &'_ TestContext,
        8554  +
        signature_location: SignatureLocation,
        8555  +
    ) -> crate::http_request::SigningParams<'_> {
        8556  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        8557  +
        params.settings.signature_location = signature_location;
        8558  +
        params.into()
        8559  +
    }
        8560  +
        8561  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        8562  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        8563  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
        8564  +
    }
        8565  +
        8566  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        8567  +
        let test = SigningSuiteTest::v4a(test_name);
        8568  +
        let tc = test.context();
        8569  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        8570  +
        8571  +
        let req = test.request();
        8572  +
        let expected_creq = test.canonical_request(signature_location);
        8573  +
        let signable_req = SignableRequest::from(&req);
        8574  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8575  +
        8576  +
        assert_eq!(
        8577  +
            expected_creq,
        8578  +
            actual_creq.to_string(),
        8579  +
            "canonical request didn't match (signature location: {signature_location:?})"
        8580  +
        );
        8581  +
        8582  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        8583  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8584  +
        let actual_string_to_sign = StringToSign::new_v4a(
        8585  +
            *params.time(),
        8586  +
            params.region_set().unwrap(),
        8587  +
            params.name(),
        8588  +
            hashed_creq,
        8589  +
        )
        8590  +
        .to_string();
        8591  +
        8592  +
        assert_eq!(
        8593  +
            expected_string_to_sign, actual_string_to_sign,
        8594  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        8595  +
        );
        8596  +
        8597  +
        let out = sign(signable_req, &params).unwrap();
        8598  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        8599  +
        out.output
        8600  +
            .apply_to_request_http0x(&mut req.as_http_request());
        8601  +
        8602  +
        let creds = params.credentials().unwrap();
        8603  +
        let signing_key =
        8604  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        8605  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        8606  +
        let sig = sig
        8607  +
            .try_into()
        8608  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        8609  +
        8610  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        8611  +
        let peer_public_key = signing_key.verifying_key();
        8612  +
        let sts = actual_string_to_sign.as_bytes();
        8613  +
        peer_public_key.verify(sts, &sig).unwrap();
        8614  +
        // TODO(sigv4a) - use public.key.json as verifying key?
        8615  +
    }
        8616  +
        8617  +
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
        8618  +
        fn from(tc: &'a TestContext) -> Self {
        8619  +
            crate::sign::v4a::SigningParams {
        8620  +
                identity: &tc.identity,
        8621  +
                region_set: &tc.region,
        8622  +
                name: &tc.service,
        8623  +
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8624  +
                    .unwrap()
        8625  +
                    .into(),
        8626  +
                settings: SigningSettings {
        8627  +
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8628  +
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8629  +
                    uri_path_normalization_mode: tc.normalize.into(),
        8630  +
                    session_token_mode: if tc.omit_session_token {
        8631  +
                        SessionTokenMode::Exclude
        8632  +
                    } else {
        8633  +
                        SessionTokenMode::Include
        8634  +
                    },
        8635  +
                    payload_checksum_kind: if tc.sign_body {
        8636  +
                        PayloadChecksumKind::XAmzSha256
        8637  +
                    } else {
        8638  +
                        PayloadChecksumKind::NoHeader
        8639  +
                    },
        8640  +
                    ..Default::default()
        8641  +
                },
        8642  +
            }
        8643  +
        }
 6471   8644   
    }
 6472   8645   
 6473   8646   
    #[test]
 6474   8647   
    fn test_parse() {
 6475         -
        let req = test_request("post-header-key-case");
        8648  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 6476   8649   
        assert_eq!(req.method, "POST");
 6477   8650   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6478   8651   
        assert!(req.headers.is_empty());
 6479   8652   
    }
 6480   8653   
 6481   8654   
    #[test]
 6482   8655   
    fn test_read_query_params() {
 6483         -
        let req = test_request("get-header-value-trim");
        8656  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 6484   8657   
        assert_eq!(req.method, "GET");
 6485   8658   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6486   8659   
        assert!(!req.headers.is_empty());
 6487   8660   
    }
 6488   8661   
}
 6489   8662   
 6490   8663   
fn read(path: &str) -> String {
 6491   8664   
    println!("Loading `{}` for test case...", path);
 6492   8665   
    let v = {
 6493   8666   
        match std::fs::read_to_string(path) {
 6494   8667   
            // This replacement is necessary for tests to pass on Windows, as reading the
 6495   8668   
            // test snapshots from the file system results in CRLF line endings being inserted.
 6496   8669   
            Ok(value) => value.replace("\r\n", "\n"),
 6497   8670   
            Err(err) => {
 6498   8671   
                panic!("failed to load test case `{}`: {}", path, err);
 6499   8672   
            }
 6500   8673   
        }
 6501   8674   
    };
 6502   8675   
 6503   8676   
    v.trim().to_string()
 6504   8677   
}
 6505   8678   
 6506   8679   
pub(crate) struct TestRequest {
 6507   8680   
    pub(crate) uri: String,
 6508   8681   
    pub(crate) method: String,
 6509   8682   
    pub(crate) headers: Vec<(String, String)>,
 6510   8683   
    pub(crate) body: TestSignedBody,
 6511   8684   
}
 6512   8685   
 6513   8686   
pub(crate) enum TestSignedBody {
 6514   8687   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 6515   8688   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 6516   8689   
                    )
 6517   8690   
                })
 6518   8691   
                .collect::<Vec<_>>(),
 6519   8692   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 6520   8693   
        }
 6521   8694   
    }
 6522   8695   
}
 6523   8696   
 6524   8697   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 6525   8698   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 6526   8699   
        SignableRequest::new(
 6527   8700   
            &request.method,
 6528   8701   
            &request.uri,
 6529   8702   
            request
 6530   8703   
                .headers
 6531   8704   
                .iter()
 6532   8705   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 6533   8706   
            request.body.as_signable_body(),
 6534   8707   
        )
 6535   8708   
        .expect("URI MUST be valid")
 6536   8709   
    }
 6537   8710   
}
 6538   8711   
 6539   8712   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 6540   8713   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 6541   8714   
    // httparse 1.5 requires two trailing newlines to head the header section.
 6542   8715   
    let mut with_newline = Vec::from(s);
 6543   8716   
    with_newline.push(b'\n');
 6544   8717   
    let mut req = httparse::Request::new(&mut headers);
 6545         -
    let _ = req.parse(&with_newline).unwrap();
        8718  +
    let status = req.parse(&with_newline).unwrap();
        8719  +
        8720  +
    let body = if status.is_complete() {
        8721  +
        let body_offset = status.unwrap();
        8722  +
        // ignore the newline we added, take from original
        8723  +
        &s[body_offset..]
        8724  +
    } else {
        8725  +
        &[]
        8726  +
    };
 6546   8727   
 6547   8728   
    let mut uri_builder = Uri::builder().scheme("https");
 6548   8729   
    if let Some(path) = req.path {
 6549   8730   
        uri_builder = uri_builder.path_and_query(path);
 6550   8731   
    }
 6551   8732   
 6552   8733   
    let mut headers = vec![];
 6553   8734   
    for header in req.headers {
 6554   8735   
        let name = header.name.to_lowercase();
 6555   8736   
        if name == "host" {
 6556   8737   
            uri_builder = uri_builder.authority(header.value);
 6557   8738   
        } else if !name.is_empty() {
 6558   8739   
            headers.push((
 6559   8740   
                header.name.to_string(),
 6560   8741   
                std::str::from_utf8(header.value)?.to_string(),
 6561   8742   
            ));
 6562   8743   
        }
 6563   8744   
    }
 6564   8745   
 6565   8746   
    Ok(TestRequest {
 6566   8747   
        uri: uri_builder.build()?.to_string(),
 6567   8748   
        method: req.method.unwrap().to_string(),
 6568   8749   
        headers,
 6569         -
        body: TestSignedBody::Bytes(vec![]),
        8750  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 6570   8751   
    })
 6571   8752   
}
 6572   8753   
 6573   8754   
#[test]
 6574   8755   
fn test_parse_headers() {
 6575   8756   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 6576   8757   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 6577   8758   
    assert_eq!(
 6578   8759   
        httparse::parse_headers(buf, &mut headers),
 6579   8760   
        Ok(httparse::Status::Complete((
 6580   8761   
            56,
 6581   8762   
            &[
 6582   8763   
                httparse::Header {
 6583   8764   
                    name: "Host",
 6584   8765   
                    value: b"example.amazonaws.com",
 6585   8766   
                },
 6586   8767   
                httparse::Header {
 6587   8768   
                    name: "X-Amz-Date",
 6588   8769   
                    value: b"20150830T123600Z",
 6589   8770   
                }
 6590   8771   
            ][..]
 6591   8772   
        )))
 6592   8773   
    );
 6593   8774   
}
 6594   8775   
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
 6595   8776   
index a208453..fc00249 100644
 6596         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        8777  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 6597   8778   
@@ -168,52 +168,54 @@ pub mod signing_params {
 6598   8779   
        );
 6599   8780   
 6600   8781   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 6601   8782   
        /// a required argument was not given.
 6602   8783   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 6603   8784   
            Ok(SigningParams {
 6604   8785   
                identity: self
 6605   8786   
                    .identity
 6606   8787   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 6607   8788   
                region: self
 6608   8789   
                    .region
 6609   8790   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 6610   8791   
                name: self
 6611   8792   
                    .name
 6612   8793   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 6613   8794   
                time: self
 6614   8795   
                    .time
 6615   8796   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 6616   8797   
                settings: self
 6617   8798   
                    .settings
 6618   8799   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 6619   8800   
            })
 6620   8801   
        }
 6621   8802   
    }
 6622   8803   
}
 6623   8804   
 6624   8805   
#[cfg(test)]
 6625   8806   
mod tests {
 6626   8807   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 6627   8808   
    use crate::date_time::test_parsers::parse_date_time;
 6628         -
    use crate::http_request::test;
 6629   8809   
 6630   8810   
    #[test]
 6631   8811   
    fn test_signature_calculation() {
 6632   8812   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 6633         -
        let creq = test::v4::test_canonical_request("iam");
        8813  +
        let creq = r#"AWS4-HMAC-SHA256
        8814  +
20150830T123600Z
        8815  +
20150830/us-east-1/iam/aws4_request
        8816  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 6634   8817   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6635   8818   
 6636   8819   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 6637   8820   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 6638   8821   
 6639   8822   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 6640   8823   
        assert_eq!(expected, &signature);
 6641   8824   
    }
 6642   8825   
 6643   8826   
    #[test]
 6644   8827   
    fn sign_payload_empty_string() {
 6645   8828   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 6646   8829   
        let actual = sha256_hex_string([]);
 6647   8830   
        assert_eq!(expected, actual);
 6648   8831   
    }
 6649   8832   
}
 6650   8833   
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
 6651   8834   
index ce78c38..8c2f591 100644
 6652         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        8835  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 6653   8836   
@@ -1,43 +1,43 @@
 6654   8837   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6655   8838   
[package]
 6656   8839   
name = "aws-smithy-checksums"
 6657   8840   
version = "0.63.5"
 6658   8841   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 6659   8842   
description = "Checksum calculation and verification callbacks"
 6660   8843   
edition = "2021"
 6661   8844   
license = "Apache-2.0"
 6662   8845   
repository = "https://github.com/smithy-lang/smithy-rs"
 6663   8846   
[package.metadata.docs.rs]
 6664   8847   
all-features = true
 6665   8848   
targets = ["x86_64-unknown-linux-gnu"]
 6666   8849   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6667   8850   
rustdoc-args = ["--cfg", "docsrs"]
 6668   8851   
 6669   8852   
[dependencies]
 6670   8853   
bytes = "1.10.0"
 6671   8854   
crc-fast = "1.3.0"
 6672   8855   
hex = "0.4.3"
 6673   8856   
http = "0.2.9"
 6674   8857   
http-body = "0.4.5"
 6675   8858   
md-5 = "0.10"
 6676   8859   
pin-project-lite = "0.2.14"
 6677   8860   
sha1 = "0.10"
 6678   8861   
sha2 = "0.10"
 6679   8862   
tracing = "0.1.40"
 6680   8863   
 6681   8864   
[dependencies.aws-smithy-http]
 6682   8865   
path = "../aws-smithy-http"
 6683         -
version = "0.62.2"
        8866  +
version = "0.62.3"
 6684   8867   
 6685   8868   
[dependencies.aws-smithy-types]
 6686   8869   
path = "../aws-smithy-types"
 6687   8870   
version = "1.3.2"
 6688   8871   
 6689   8872   
[dev-dependencies]
 6690   8873   
bytes-utils = "0.1.2"
 6691   8874   
pretty_assertions = "1.3"
 6692   8875   
tracing-test = "0.2.1"
 6693   8876   
 6694   8877   
[dev-dependencies.tokio]
 6695   8878   
version = "1.23.1"
 6696   8879   
features = ["macros", "rt"]
 6697   8880   
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
 6698   8881   
index 970c99e..d3c7a49 100644
 6699         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        8882  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 6700   8883   
@@ -1,34 +1,34 @@
 6701   8884   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6702   8885   
[package]
 6703   8886   
name = "aws-smithy-http"
 6704         -
version = "0.62.2"
        8887  +
version = "0.62.3"
 6705   8888   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6706   8889   
description = "Smithy HTTP logic for smithy-rs."
 6707   8890   
edition = "2021"
 6708   8891   
license = "Apache-2.0"
 6709   8892   
repository = "https://github.com/smithy-lang/smithy-rs"
 6710   8893   
[package.metadata.docs.rs]
 6711   8894   
all-features = true
 6712   8895   
targets = ["x86_64-unknown-linux-gnu"]
 6713   8896   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6714   8897   
rustdoc-args = ["--cfg", "docsrs"]
 6715   8898   
 6716   8899   
[features]
 6717   8900   
event-stream = ["aws-smithy-eventstream"]
 6718   8901   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 6719   8902   
 6720   8903   
[dependencies]
 6721   8904   
bytes = "1.10.0"
 6722   8905   
bytes-utils = "0.1"
 6723   8906   
percent-encoding = "2.3.1"
 6724   8907   
pin-project-lite = "0.2.14"
 6725   8908   
pin-utils = "0.1.0"
 6726   8909   
tracing = "0.1.40"
 6727   8910   
futures-core = "0.3.31"
 6728   8911   
 6729   8912   
[dependencies.aws-smithy-eventstream]
 6730   8913   
path = "../aws-smithy-eventstream"
 6731   8914   
optional = true
 6732   8915   
version = "0.60.10"
 6733   8916   
 6734   8917   
[dependencies.aws-smithy-runtime-api]
 6735   8918   
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
 6736   8919   
index 508f7a2..361545e 100644
 6737         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        8920  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 6738   8921   
@@ -1,27 +1,27 @@
 6739   8922   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6740   8923   
[[bin]]
 6741   8924   
name = "read_many_from_str"
 6742   8925   
path = "fuzz_targets/read_many_from_str.rs"
 6743   8926   
test = false
 6744   8927   
doc = false
 6745   8928   
 6746   8929   
[package]
 6747   8930   
name = "aws-smithy-http-fuzz"
 6748   8931   
version = "0.0.0"
 6749   8932   
authors = ["Automatically generated"]
 6750   8933   
publish = false
 6751   8934   
edition = "2021"
 6752   8935   
 6753   8936   
[package.metadata]
 6754   8937   
cargo-fuzz = true
 6755   8938   
 6756   8939   
[dependencies]
 6757   8940   
libfuzzer-sys = "=0.4.7"
 6758   8941   
http = "0.2.3"
 6759   8942   
 6760   8943   
[dependencies.aws-smithy-http]
 6761   8944   
path = ".."
 6762         -
version = "0.62.2"
        8945  +
version = "0.62.3"
 6763   8946   
 6764   8947   
[workspace]
 6765   8948   
members = ["."]
 6766   8949   
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
 6767   8950   
index fef41d0..2792229 100644
 6768         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        8951  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 6769   8952   
@@ -25,68 +25,74 @@ impl QueryWriter {
 6770   8953   
    pub fn new(uri: &Uri) -> Self {
 6771   8954   
        let new_path_and_query = uri
 6772   8955   
            .path_and_query()
 6773   8956   
            .map(|pq| pq.to_string())
 6774   8957   
            .unwrap_or_default();
 6775   8958   
        let prefix = if uri.query().is_none() {
 6776   8959   
            Some('?')
 6777   8960   
        } else if !uri.query().unwrap_or_default().is_empty() {
 6778   8961   
            Some('&')
 6779   8962   
        } else {
 6780   8963   
            None
 6781   8964   
        };
 6782   8965   
        QueryWriter {
 6783   8966   
            base_uri: uri.clone(),
 6784   8967   
            new_path_and_query,
 6785   8968   
            prefix,
 6786   8969   
        }
 6787   8970   
    }
 6788   8971   
 6789   8972   
    /// Clears all query parameters.
 6790   8973   
    pub fn clear_params(&mut self) {
 6791   8974   
        if let Some(index) = self.new_path_and_query.find('?') {
 6792   8975   
            self.new_path_and_query.truncate(index);
 6793   8976   
            self.prefix = Some('?');
 6794   8977   
        }
 6795   8978   
    }
 6796   8979   
 6797   8980   
    /// Inserts a new query parameter. The key and value are percent encoded
 6798   8981   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 6799   8982   
    pub fn insert(&mut self, k: &str, v: &str) {
        8983  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        8984  +
    }
        8985  +
    
        8986  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        8987  +
    /// as is.
        8988  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 6800   8989   
        if let Some(prefix) = self.prefix {
 6801   8990   
            self.new_path_and_query.push(prefix);
 6802   8991   
        }
 6803   8992   
        self.prefix = Some('&');
 6804         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        8993  +
        self.new_path_and_query.push_str(encoded_k);
 6805   8994   
        self.new_path_and_query.push('=');
        8995  +
        self.new_path_and_query.push_str(encoded_v)
 6806   8996   
        
 6807         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
 6808   8997   
    }
 6809   8998   
 6810   8999   
    /// Returns just the built query string.
 6811   9000   
    pub fn build_query(self) -> String {
 6812   9001   
        self.build_uri().query().unwrap_or_default().to_string()
 6813   9002   
    }
 6814   9003   
 6815   9004   
    /// Returns a full [`Uri`] with the query string updated.
 6816   9005   
    pub fn build_uri(self) -> Uri {
 6817   9006   
        let mut parts = self.base_uri.into_parts();
 6818   9007   
        parts.path_and_query = Some(
 6819   9008   
            self.new_path_and_query
 6820   9009   
                .parse()
 6821   9010   
                .expect("adding query should not invalidate URI"),
 6822   9011   
        );
 6823   9012   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 6824   9013   
    }
 6825   9014   
}
 6826   9015   
 6827   9016   
#[cfg(test)]
 6828   9017   
mod test {
 6829   9018   
    use super::QueryWriter;
 6830   9019   
    use http_02x::Uri;
 6831   9020   
 6832   9021   
    #[test]
 6833   9022   
    fn empty_uri() {
 6834   9023   
        let uri = Uri::from_static("http://www.example.com");
 6835   9024   
        let mut query_writer = QueryWriter::new(&uri);
 6836   9025   
        query_writer.insert("key", "val%ue");
 6837   9026   
        query_writer.insert("another", "value");
 6838   9027   
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
 6839   9028   
index f108978..df7a9fe 100644
 6840         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        9029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 6841   9030   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 6842   9031   
 6843   9032   
[package.metadata.smithy-rs-release-tooling]
 6844   9033   
stable = true
 6845   9034   
[package.metadata.cargo-udeps.ignore]
 6846   9035   
normal = ["aws-smithy-http"]
 6847   9036   
 6848   9037   
[features]
 6849   9038   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 6850   9039   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 6851   9040   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 6852   9041   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 6853   9042   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 6854   9043   
rt-tokio = ["tokio/rt"]
 6855   9044   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 6856   9045   
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"]
 6857   9046   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 6858   9047   
 6859   9048   
[dependencies]
 6860   9049   
bytes = "1.10.0"
 6861   9050   
fastrand = "2.3.0"
 6862   9051   
pin-project-lite = "0.2.14"
 6863   9052   
pin-utils = "0.1.0"
 6864   9053   
tracing = "0.1.40"
 6865   9054   
 6866   9055   
[dependencies.aws-smithy-async]
 6867   9056   
path = "../aws-smithy-async"
 6868   9057   
version = "1.2.5"
 6869   9058   
 6870   9059   
[dependencies.aws-smithy-http]
 6871   9060   
path = "../aws-smithy-http"
 6872         -
version = "0.62.2"
        9061  +
version = "0.62.3"
 6873   9062   
 6874   9063   
[dependencies.aws-smithy-observability]
 6875   9064   
path = "../aws-smithy-observability"
 6876   9065   
version = "0.1.3"
 6877   9066   
 6878   9067   
[dependencies.aws-smithy-runtime-api]
 6879   9068   
path = "../aws-smithy-runtime-api"
 6880   9069   
version = "1.8.5"
 6881   9070   
 6882   9071   
[dependencies.aws-smithy-types]
 6883   9072   
path = "../aws-smithy-types"
 6884   9073   
features = ["http-body-0-4-x"]
 6885   9074   
version = "1.3.2"
 6886   9075   
 6887   9076   
[dependencies.aws-smithy-http-client]
 6888   9077   
path = "../aws-smithy-http-client"
 6889   9078   
optional = true
 6890   9079   
version = "1.0.6"
 6891   9080   
 6892   9081   
[dependencies.http-02x]
 6893   9082   
package = "http"
 6894   9083   
version = "0.2.9"
 6895   9084   
 6896   9085   
[dependencies.http-1x]
 6897   9086   
package = "http"
 6898   9087   
version = "1"
 6899   9088   
 6900   9089   
[dependencies.http-body-04x]
 6901   9090   
package = "http-body"
 6902   9091   
version = "0.4.5"
 6903   9092   
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
 6904   9093   
index 4e050c6..f58eb1c 100644
 6905         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
        9094  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 6906   9095   
@@ -1,33 +1,33 @@
 6907   9096   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6908   9097   
[package]
 6909   9098   
name = "aws-smithy-wasm"
 6910   9099   
version = "0.1.4"
 6911   9100   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 6912   9101   
description = "Smithy WebAssembly configuration for smithy-rs."
 6913   9102   
edition = "2021"
 6914   9103   
license = "Apache-2.0"
 6915   9104   
repository = "https://github.com/awslabs/smithy-rs"
 6916   9105   
[package.metadata.docs.rs]
 6917   9106   
all-features = true
 6918   9107   
targets = ["x86_64-unknown-linux-gnu"]
 6919   9108   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6920   9109   
rustdoc-args = ["--cfg", "docsrs"]
 6921   9110   
 6922   9111   
[dependencies]
 6923   9112   
bytes = "1.10.0"
 6924   9113   
http = "1.0.0"
 6925   9114   
tracing = "0.1.40"
 6926   9115   
wasi = "0.12.1"
 6927   9116   
 6928   9117   
[dependencies.aws-smithy-runtime-api]
 6929   9118   
path = "../aws-smithy-runtime-api"
 6930   9119   
features = ["http-1x"]
 6931   9120   
version = "1.8.5"
 6932   9121   
 6933   9122   
[dependencies.aws-smithy-http]
 6934   9123   
path = "../aws-smithy-http"
 6935         -
version = "0.62.2"
        9124  +
version = "0.62.3"
 6936   9125   
 6937   9126   
[dependencies.aws-smithy-types]
 6938   9127   
path = "../aws-smithy-types"
 6939   9128   
version = "1.3.2"
 6940   9129   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6941   9130   
index a880648..139e808 100644
 6942         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
        9131  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6943   9132   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 6944   9133   
edition = "2021"
 6945   9134   
license = "Apache-2.0"
 6946   9135   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6947   9136   
rust-version = "1.86.0"
 6948   9137   
readme = "README.md"
 6949   9138   
[package.metadata.smithy]
 6950   9139   
codegen-version = "ci"
 6951   9140   
[package.metadata.docs.rs]
 6952   9141   
all-features = true
 6953   9142   
targets = ["x86_64-unknown-linux-gnu"]
 6954   9143   
[dependencies.aws-credential-types]
 6955   9144   
path = "../aws-credential-types"
 6956   9145   
version = "1.2.4"
 6957   9146   
 6958   9147   
[dependencies.aws-runtime]
 6959   9148   
path = "../aws-runtime"
 6960   9149   
features = ["event-stream"]
 6961   9150   
version = "1.5.9"
 6962   9151   
 6963   9152   
[dependencies.aws-smithy-async]
 6964   9153   
path = "../aws-smithy-async"
 6965   9154   
version = "1.2.5"
 6966   9155   
 6967   9156   
[dependencies.aws-smithy-eventstream]
 6968   9157   
path = "../aws-smithy-eventstream"
 6969   9158   
version = "0.60.10"
 6970   9159   
 6971   9160   
[dependencies.aws-smithy-http]
 6972   9161   
path = "../aws-smithy-http"
 6973   9162   
features = ["event-stream"]
 6974         -
version = "0.62.2"
        9163  +
version = "0.62.3"
 6975   9164   
 6976   9165   
[dependencies.aws-smithy-json]
 6977   9166   
path = "../aws-smithy-json"
 6978   9167   
version = "0.61.4"
 6979   9168   
 6980   9169   
[dependencies.aws-smithy-runtime]
 6981   9170   
path = "../aws-smithy-runtime"
 6982   9171   
features = ["client"]
 6983   9172   
version = "1.8.5"
 6984   9173   
 6985   9174   
[dependencies.aws-smithy-runtime-api]
 6986   9175   
path = "../aws-smithy-runtime-api"
 6987   9176   
features = ["client", "http-02x"]
 6988   9177   
version = "1.8.5"
 6989   9178   
 6990   9179   
[dependencies.aws-smithy-types]
 6991   9180   
path = "../aws-smithy-types"
 6992   9181   
version = "1.3.2"
 6993   9182   
 6994   9183   
[dependencies.aws-types]
 6995   9184   
path = "../aws-types"
 6996   9185   
version = "1.3.8"
 6997   9186   
 6998   9187   
[dependencies.bytes]
 6999   9188   
version = "1.4.0"
 7000   9189   
 7001   9190   
[dependencies.fastrand]
 7002   9191   
version = "2.0.0"
 7003   9192   
 7004   9193   
[dependencies.http]
 7005   9194   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7006   9195   
index 415ecc9..667d12b 100644
 7007         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
        9196  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 7008   9197   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 7009   9198   
edition = "2021"
 7010   9199   
license = "Apache-2.0"
 7011   9200   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7012   9201   
rust-version = "1.86.0"
 7013   9202   
readme = "README.md"
 7014   9203   
[package.metadata.smithy]
 7015   9204   
codegen-version = "ci"
 7016   9205   
[package.metadata.docs.rs]
 7017   9206   
all-features = true
 7018   9207   
targets = ["x86_64-unknown-linux-gnu"]
 7019   9208   
[dependencies.aws-credential-types]
 7020   9209   
path = "../aws-credential-types"
 7021   9210   
version = "1.2.4"
 7022   9211   
 7023   9212   
[dependencies.aws-runtime]
 7024   9213   
path = "../aws-runtime"
 7025   9214   
features = ["event-stream"]
 7026   9215   
version = "1.5.9"
 7027   9216   
 7028   9217   
[dependencies.aws-smithy-async]
 7029   9218   
path = "../aws-smithy-async"
 7030   9219   
version = "1.2.5"
 7031   9220   
 7032   9221   
[dependencies.aws-smithy-eventstream]
 7033   9222   
path = "../aws-smithy-eventstream"
 7034   9223   
version = "0.60.10"
 7035   9224   
 7036   9225   
[dependencies.aws-smithy-http]
 7037   9226   
path = "../aws-smithy-http"
 7038   9227   
features = ["event-stream"]
 7039         -
version = "0.62.2"
        9228  +
version = "0.62.3"
 7040   9229   
 7041   9230   
[dependencies.aws-smithy-json]
 7042   9231   
path = "../aws-smithy-json"
 7043   9232   
version = "0.61.4"
 7044   9233   
 7045   9234   
[dependencies.aws-smithy-runtime]
 7046   9235   
path = "../aws-smithy-runtime"
 7047   9236   
features = ["client"]
 7048   9237   
version = "1.8.5"
 7049   9238   
 7050   9239   
[dependencies.aws-smithy-runtime-api]
 7051   9240   
path = "../aws-smithy-runtime-api"
 7052   9241   
features = ["client", "http-02x"]
 7053   9242   
version = "1.8.5"
 7054   9243   
 7055   9244   
[dependencies.aws-smithy-types]
 7056   9245   
path = "../aws-smithy-types"
 7057   9246   
version = "1.3.2"
 7058   9247   
 7059   9248   
[dependencies.aws-types]
 7060   9249   
path = "../aws-types"
 7061   9250   
version = "1.3.8"
 7062   9251   
 7063   9252   
[dependencies.bytes]
 7064   9253   
version = "1.4.0"
 7065   9254   
 7066   9255   
[dependencies.fastrand]
 7067   9256   
version = "2.0.0"
 7068   9257   
 7069   9258   
[dependencies.http]
 7070   9259   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7071   9260   
index 8871cab..ed88de6 100644
 7072         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
        9261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7073   9262   
@@ -1,61 +1,61 @@
 7074   9263   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7075   9264   
[package]
 7076   9265   
name = "aws-sdk-codecatalyst"
 7077   9266   
version = "0.0.0-local"
 7078   9267   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7079   9268   
description = "AWS SDK for Amazon CodeCatalyst"
 7080   9269   
edition = "2021"
 7081   9270   
license = "Apache-2.0"
 7082   9271   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7083   9272   
rust-version = "1.86.0"
 7084   9273   
readme = "README.md"
 7085   9274   
[package.metadata.smithy]
 7086   9275   
codegen-version = "ci"
 7087   9276   
[package.metadata.docs.rs]
 7088   9277   
all-features = true
 7089   9278   
targets = ["x86_64-unknown-linux-gnu"]
 7090   9279   
[dependencies.aws-credential-types]
 7091   9280   
path = "../aws-credential-types"
 7092   9281   
version = "1.2.4"
 7093   9282   
 7094   9283   
[dependencies.aws-runtime]
 7095   9284   
path = "../aws-runtime"
 7096   9285   
version = "1.5.9"
 7097   9286   
 7098   9287   
[dependencies.aws-smithy-async]
 7099   9288   
path = "../aws-smithy-async"
 7100   9289   
version = "1.2.5"
 7101   9290   
 7102   9291   
[dependencies.aws-smithy-http]
 7103   9292   
path = "../aws-smithy-http"
 7104         -
version = "0.62.2"
        9293  +
version = "0.62.3"
 7105   9294   
 7106   9295   
[dependencies.aws-smithy-json]
 7107   9296   
path = "../aws-smithy-json"
 7108   9297   
version = "0.61.4"
 7109   9298   
 7110   9299   
[dependencies.aws-smithy-runtime]
 7111   9300   
path = "../aws-smithy-runtime"
 7112   9301   
features = ["client", "http-auth"]
 7113   9302   
version = "1.8.5"
 7114   9303   
 7115   9304   
[dependencies.aws-smithy-runtime-api]
 7116   9305   
path = "../aws-smithy-runtime-api"
 7117   9306   
features = ["client", "http-02x", "http-auth"]
 7118   9307   
version = "1.8.5"
 7119   9308   
 7120   9309   
[dependencies.aws-smithy-types]
 7121   9310   
path = "../aws-smithy-types"
 7122   9311   
version = "1.3.2"
 7123   9312   
 7124   9313   
[dependencies.aws-types]
 7125   9314   
path = "../aws-types"
 7126   9315   
version = "1.3.8"
 7127   9316   
 7128   9317   
[dependencies.bytes]
 7129   9318   
version = "1.4.0"
 7130   9319   
 7131   9320   
[dependencies.fastrand]
 7132   9321   
version = "2.0.0"
 7133   9322   
 7134   9323   
[dependencies.http]
 7135   9324   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7136   9325   
index 89573ff..05238af 100644
 7137         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
        9326  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7138   9327   
@@ -1,61 +1,61 @@
 7139   9328   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7140   9329   
[package]
 7141   9330   
name = "aws-sdk-config"
 7142   9331   
version = "0.0.0-local"
 7143   9332   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7144   9333   
description = "AWS SDK for AWS Config"
 7145   9334   
edition = "2021"
 7146   9335   
license = "Apache-2.0"
 7147   9336   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7148   9337   
rust-version = "1.86.0"
 7149   9338   
readme = "README.md"
 7150   9339   
[package.metadata.smithy]
 7151   9340   
codegen-version = "ci"
 7152   9341   
[package.metadata.docs.rs]
 7153   9342   
all-features = true
 7154   9343   
targets = ["x86_64-unknown-linux-gnu"]
 7155   9344   
[dependencies.aws-credential-types]
 7156   9345   
path = "../aws-credential-types"
 7157   9346   
version = "1.2.4"
 7158   9347   
 7159   9348   
[dependencies.aws-runtime]
 7160   9349   
path = "../aws-runtime"
 7161   9350   
version = "1.5.9"
 7162   9351   
 7163   9352   
[dependencies.aws-smithy-async]
 7164   9353   
path = "../aws-smithy-async"
 7165   9354   
version = "1.2.5"
 7166   9355   
 7167   9356   
[dependencies.aws-smithy-http]
 7168   9357   
path = "../aws-smithy-http"
 7169         -
version = "0.62.2"
        9358  +
version = "0.62.3"
 7170   9359   
 7171   9360   
[dependencies.aws-smithy-json]
 7172   9361   
path = "../aws-smithy-json"
 7173   9362   
version = "0.61.4"
 7174   9363   
 7175   9364   
[dependencies.aws-smithy-runtime]
 7176   9365   
path = "../aws-smithy-runtime"
 7177   9366   
features = ["client"]
 7178   9367   
version = "1.8.5"
 7179   9368   
 7180   9369   
[dependencies.aws-smithy-runtime-api]
 7181   9370   
path = "../aws-smithy-runtime-api"
 7182   9371   
features = ["client", "http-02x"]
 7183   9372   
version = "1.8.5"
 7184   9373   
 7185   9374   
[dependencies.aws-smithy-types]
 7186   9375   
path = "../aws-smithy-types"
 7187   9376   
version = "1.3.2"
 7188   9377   
 7189   9378   
[dependencies.aws-types]
 7190   9379   
path = "../aws-types"
 7191   9380   
version = "1.3.8"
 7192   9381   
 7193   9382   
[dependencies.bytes]
 7194   9383   
version = "1.4.0"
 7195   9384   
 7196   9385   
[dependencies.fastrand]
 7197   9386   
version = "2.0.0"
 7198   9387   
 7199   9388   
[dependencies.http]
 7200   9389   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7201   9390   
index d397c58..2c1062b 100644
 7202         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
        9391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7203   9392   
@@ -1,61 +1,61 @@
 7204   9393   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7205   9394   
[package]
 7206   9395   
name = "aws-sdk-dynamodb"
 7207   9396   
version = "0.0.0-local"
 7208   9397   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7209   9398   
description = "AWS SDK for Amazon DynamoDB"
 7210   9399   
edition = "2021"
 7211   9400   
license = "Apache-2.0"
 7212   9401   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7213   9402   
rust-version = "1.86.0"
 7214   9403   
readme = "README.md"
 7215   9404   
[package.metadata.smithy]
 7216   9405   
codegen-version = "ci"
 7217   9406   
[package.metadata.docs.rs]
 7218   9407   
all-features = true
 7219   9408   
targets = ["x86_64-unknown-linux-gnu"]
 7220   9409   
[dependencies.aws-credential-types]
 7221   9410   
path = "../aws-credential-types"
 7222   9411   
version = "1.2.4"
 7223   9412   
 7224   9413   
[dependencies.aws-runtime]
 7225   9414   
path = "../aws-runtime"
 7226   9415   
version = "1.5.9"
 7227   9416   
 7228   9417   
[dependencies.aws-smithy-async]
 7229   9418   
path = "../aws-smithy-async"
 7230   9419   
version = "1.2.5"
 7231   9420   
 7232   9421   
[dependencies.aws-smithy-http]
 7233   9422   
path = "../aws-smithy-http"
 7234         -
version = "0.62.2"
        9423  +
version = "0.62.3"
 7235   9424   
 7236   9425   
[dependencies.aws-smithy-json]
 7237   9426   
path = "../aws-smithy-json"
 7238   9427   
version = "0.61.4"
 7239   9428   
 7240   9429   
[dependencies.aws-smithy-runtime]
 7241   9430   
path = "../aws-smithy-runtime"
 7242   9431   
features = ["client"]
 7243   9432   
version = "1.8.5"
 7244   9433   
 7245   9434   
[dependencies.aws-smithy-runtime-api]
 7246   9435   
path = "../aws-smithy-runtime-api"
 7247   9436   
features = ["client", "http-02x"]
 7248   9437   
version = "1.8.5"
 7249   9438   
 7250   9439   
[dependencies.aws-smithy-types]
 7251   9440   
path = "../aws-smithy-types"
 7252   9441   
version = "1.3.2"
 7253   9442   
 7254   9443   
[dependencies.aws-types]
 7255   9444   
path = "../aws-types"
 7256   9445   
version = "1.3.8"
 7257   9446   
 7258   9447   
[dependencies.bytes]
 7259   9448   
version = "1.4.0"
 7260   9449   
 7261   9450   
[dependencies.fastrand]
 7262   9451   
version = "2.0.0"
 7263   9452   
 7264   9453   
[dependencies.http]
 7265   9454   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7266   9455   
index c0ba315..46168af 100644
 7267         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
        9456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7268   9457   
@@ -1,61 +1,61 @@
 7269   9458   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7270   9459   
[package]
 7271   9460   
name = "aws-sdk-ec2"
 7272   9461   
version = "0.0.0-local"
 7273   9462   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7274   9463   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 7275   9464   
edition = "2021"
 7276   9465   
license = "Apache-2.0"
 7277   9466   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7278   9467   
rust-version = "1.86.0"
 7279   9468   
readme = "README.md"
 7280   9469   
[package.metadata.smithy]
 7281   9470   
codegen-version = "ci"
 7282   9471   
[package.metadata.docs.rs]
 7283   9472   
all-features = true
 7284   9473   
targets = ["x86_64-unknown-linux-gnu"]
 7285   9474   
[dependencies.aws-credential-types]
 7286   9475   
path = "../aws-credential-types"
 7287   9476   
version = "1.2.4"
 7288   9477   
 7289   9478   
[dependencies.aws-runtime]
 7290   9479   
path = "../aws-runtime"
 7291   9480   
version = "1.5.9"
 7292   9481   
 7293   9482   
[dependencies.aws-smithy-async]
 7294   9483   
path = "../aws-smithy-async"
 7295   9484   
version = "1.2.5"
 7296   9485   
 7297   9486   
[dependencies.aws-smithy-http]
 7298   9487   
path = "../aws-smithy-http"
 7299         -
version = "0.62.2"
        9488  +
version = "0.62.3"
 7300   9489   
 7301   9490   
[dependencies.aws-smithy-json]
 7302   9491   
path = "../aws-smithy-json"
 7303   9492   
version = "0.61.4"
 7304   9493   
 7305   9494   
[dependencies.aws-smithy-query]
 7306   9495   
path = "../aws-smithy-query"
 7307   9496   
version = "0.60.7"
 7308   9497   
 7309   9498   
[dependencies.aws-smithy-runtime]
 7310   9499   
path = "../aws-smithy-runtime"
 7311   9500   
features = ["client"]
 7312   9501   
version = "1.8.5"
 7313   9502   
 7314   9503   
[dependencies.aws-smithy-runtime-api]
 7315   9504   
path = "../aws-smithy-runtime-api"
 7316   9505   
features = ["client", "http-02x"]
 7317   9506   
version = "1.8.5"
 7318   9507   
 7319   9508   
[dependencies.aws-smithy-types]
 7320   9509   
path = "../aws-smithy-types"
 7321   9510   
version = "1.3.2"
 7322   9511   
 7323   9512   
[dependencies.aws-smithy-xml]
 7324   9513   
path = "../aws-smithy-xml"
 7325   9514   
version = "0.60.10"
 7326   9515   
 7327   9516   
[dependencies.aws-types]
 7328   9517   
path = "../aws-types"
 7329   9518   
version = "1.3.8"
 7330   9519   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7331   9520   
index 4474d17..095d40e 100644
 7332         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
        9521  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7333   9522   
@@ -1,61 +1,61 @@
 7334   9523   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7335   9524   
[package]
 7336   9525   
name = "aws-sdk-ecs"
 7337   9526   
version = "0.0.0-local"
 7338   9527   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7339   9528   
description = "AWS SDK for Amazon EC2 Container Service"
 7340   9529   
edition = "2021"
 7341   9530   
license = "Apache-2.0"
 7342   9531   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7343   9532   
rust-version = "1.86.0"
 7344   9533   
readme = "README.md"
 7345   9534   
[package.metadata.smithy]
 7346   9535   
codegen-version = "ci"
 7347   9536   
[package.metadata.docs.rs]
 7348   9537   
all-features = true
 7349   9538   
targets = ["x86_64-unknown-linux-gnu"]
 7350   9539   
[dependencies.aws-credential-types]
 7351   9540   
path = "../aws-credential-types"
 7352   9541   
version = "1.2.4"
 7353   9542   
 7354   9543   
[dependencies.aws-runtime]
 7355   9544   
path = "../aws-runtime"
 7356   9545   
version = "1.5.9"
 7357   9546   
 7358   9547   
[dependencies.aws-smithy-async]
 7359   9548   
path = "../aws-smithy-async"
 7360   9549   
version = "1.2.5"
 7361   9550   
 7362   9551   
[dependencies.aws-smithy-http]
 7363   9552   
path = "../aws-smithy-http"
 7364         -
version = "0.62.2"
        9553  +
version = "0.62.3"
 7365   9554   
 7366   9555   
[dependencies.aws-smithy-json]
 7367   9556   
path = "../aws-smithy-json"
 7368   9557   
version = "0.61.4"
 7369   9558   
 7370   9559   
[dependencies.aws-smithy-runtime]
 7371   9560   
path = "../aws-smithy-runtime"
 7372   9561   
features = ["client"]
 7373   9562   
version = "1.8.5"
 7374   9563   
 7375   9564   
[dependencies.aws-smithy-runtime-api]
 7376   9565   
path = "../aws-smithy-runtime-api"
 7377   9566   
features = ["client", "http-02x"]
 7378   9567   
version = "1.8.5"
 7379   9568   
 7380   9569   
[dependencies.aws-smithy-types]
 7381   9570   
path = "../aws-smithy-types"
 7382   9571   
version = "1.3.2"
 7383   9572   
 7384   9573   
[dependencies.aws-types]
 7385   9574   
path = "../aws-types"
 7386   9575   
version = "1.3.8"
 7387   9576   
 7388   9577   
[dependencies.bytes]
 7389   9578   
version = "1.4.0"
 7390   9579   
 7391   9580   
[dependencies.fastrand]
 7392   9581   
version = "2.0.0"
 7393   9582   
 7394   9583   
[dependencies.http]
 7395   9584   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7396   9585   
index 15b1d77..16d7d89 100644
 7397         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
        9586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7398   9587   
@@ -1,65 +1,65 @@
 7399   9588   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7400   9589   
[package]
 7401   9590   
name = "aws-sdk-glacier"
 7402   9591   
version = "0.0.0-local"
 7403   9592   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7404   9593   
description = "AWS SDK for Amazon Glacier"
 7405   9594   
edition = "2021"
 7406   9595   
license = "Apache-2.0"
 7407   9596   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7408   9597   
rust-version = "1.86.0"
 7409   9598   
readme = "README.md"
 7410   9599   
[package.metadata.smithy]
 7411   9600   
codegen-version = "ci"
 7412   9601   
[package.metadata.docs.rs]
 7413   9602   
all-features = true
 7414   9603   
targets = ["x86_64-unknown-linux-gnu"]
 7415   9604   
[dependencies.aws-credential-types]
 7416   9605   
path = "../aws-credential-types"
 7417   9606   
version = "1.2.4"
 7418   9607   
 7419   9608   
[dependencies.aws-runtime]
 7420   9609   
path = "../aws-runtime"
 7421   9610   
version = "1.5.9"
 7422   9611   
 7423   9612   
[dependencies.aws-sigv4]
 7424   9613   
path = "../aws-sigv4"
 7425         -
version = "1.3.3"
        9614  +
version = "1.3.4"
 7426   9615   
 7427   9616   
[dependencies.aws-smithy-async]
 7428   9617   
path = "../aws-smithy-async"
 7429   9618   
version = "1.2.5"
 7430   9619   
 7431   9620   
[dependencies.aws-smithy-http]
 7432   9621   
path = "../aws-smithy-http"
 7433         -
version = "0.62.2"
        9622  +
version = "0.62.3"
 7434   9623   
 7435   9624   
[dependencies.aws-smithy-json]
 7436   9625   
path = "../aws-smithy-json"
 7437   9626   
version = "0.61.4"
 7438   9627   
 7439   9628   
[dependencies.aws-smithy-runtime]
 7440   9629   
path = "../aws-smithy-runtime"
 7441   9630   
features = ["client"]
 7442   9631   
version = "1.8.5"
 7443   9632   
 7444   9633   
[dependencies.aws-smithy-runtime-api]
 7445   9634   
path = "../aws-smithy-runtime-api"
 7446   9635   
features = ["client", "http-02x"]
 7447   9636   
version = "1.8.5"
 7448   9637   
 7449   9638   
[dependencies.aws-smithy-types]
 7450   9639   
path = "../aws-smithy-types"
 7451   9640   
version = "1.3.2"
 7452   9641   
 7453   9642   
[dependencies.aws-types]
 7454   9643   
path = "../aws-types"
 7455   9644   
version = "1.3.8"
 7456   9645   
 7457   9646   
[dependencies.bytes]
 7458   9647   
version = "1.4.0"
 7459   9648   
 7460   9649   
[dependencies.fastrand]
 7461   9650   
version = "2.0.0"
 7462   9651   
 7463   9652   
[dependencies.hex]
 7464   9653   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7465   9654   
index d718a3a..65e6f24 100644
 7466         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
        9655  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7467   9656   
@@ -1,61 +1,61 @@
 7468   9657   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7469   9658   
[package]
 7470   9659   
name = "aws-sdk-iam"
 7471   9660   
version = "0.0.0-local"
 7472   9661   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7473   9662   
description = "AWS SDK for AWS Identity and Access Management"
 7474   9663   
edition = "2021"
 7475   9664   
license = "Apache-2.0"
 7476   9665   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7477   9666   
rust-version = "1.86.0"
 7478   9667   
readme = "README.md"
 7479   9668   
[package.metadata.smithy]
 7480   9669   
codegen-version = "ci"
 7481   9670   
[package.metadata.docs.rs]
 7482   9671   
all-features = true
 7483   9672   
targets = ["x86_64-unknown-linux-gnu"]
 7484   9673   
[dependencies.aws-credential-types]
 7485   9674   
path = "../aws-credential-types"
 7486   9675   
version = "1.2.4"
 7487   9676   
 7488   9677   
[dependencies.aws-runtime]
 7489   9678   
path = "../aws-runtime"
 7490   9679   
version = "1.5.9"
 7491   9680   
 7492   9681   
[dependencies.aws-smithy-async]
 7493   9682   
path = "../aws-smithy-async"
 7494   9683   
version = "1.2.5"
 7495   9684   
 7496   9685   
[dependencies.aws-smithy-http]
 7497   9686   
path = "../aws-smithy-http"
 7498         -
version = "0.62.2"
        9687  +
version = "0.62.3"
 7499   9688   
 7500   9689   
[dependencies.aws-smithy-json]
 7501   9690   
path = "../aws-smithy-json"
 7502   9691   
version = "0.61.4"
 7503   9692   
 7504   9693   
[dependencies.aws-smithy-query]
 7505   9694   
path = "../aws-smithy-query"
 7506   9695   
version = "0.60.7"
 7507   9696   
 7508   9697   
[dependencies.aws-smithy-runtime]
 7509   9698   
path = "../aws-smithy-runtime"
 7510   9699   
features = ["client"]
 7511   9700   
version = "1.8.5"
 7512   9701   
 7513   9702   
[dependencies.aws-smithy-runtime-api]
 7514   9703   
path = "../aws-smithy-runtime-api"
 7515   9704   
features = ["client", "http-02x"]
 7516   9705   
version = "1.8.5"
 7517   9706   
 7518   9707   
[dependencies.aws-smithy-types]
 7519   9708   
path = "../aws-smithy-types"
 7520   9709   
version = "1.3.2"
 7521   9710   
 7522   9711   
[dependencies.aws-smithy-xml]
 7523   9712   
path = "../aws-smithy-xml"
 7524   9713   
version = "0.60.10"
 7525   9714   
 7526   9715   
[dependencies.aws-types]
 7527   9716   
path = "../aws-types"
 7528   9717   
version = "1.3.8"
 7529   9718   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7530   9719   
index 0ed4302..3d828a5 100644
 7531         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
        9720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7532   9721   
@@ -1,61 +1,61 @@
 7533   9722   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7534   9723   
[package]
 7535   9724   
name = "aws-sdk-kms"
 7536   9725   
version = "0.0.0-local"
 7537   9726   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7538   9727   
description = "AWS SDK for AWS Key Management Service"
 7539   9728   
edition = "2021"
 7540   9729   
license = "Apache-2.0"
 7541   9730   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7542   9731   
rust-version = "1.86.0"
 7543   9732   
readme = "README.md"
 7544   9733   
[package.metadata.smithy]
 7545   9734   
codegen-version = "ci"
 7546   9735   
[package.metadata.docs.rs]
 7547   9736   
all-features = true
 7548   9737   
targets = ["x86_64-unknown-linux-gnu"]
 7549   9738   
[dependencies.aws-credential-types]
 7550   9739   
path = "../aws-credential-types"
 7551   9740   
version = "1.2.4"
 7552   9741   
 7553   9742   
[dependencies.aws-runtime]
 7554   9743   
path = "../aws-runtime"
 7555   9744   
version = "1.5.9"
 7556   9745   
 7557   9746   
[dependencies.aws-smithy-async]
 7558   9747   
path = "../aws-smithy-async"
 7559   9748   
version = "1.2.5"
 7560   9749   
 7561   9750   
[dependencies.aws-smithy-http]
 7562   9751   
path = "../aws-smithy-http"
 7563         -
version = "0.62.2"
        9752  +
version = "0.62.3"
 7564   9753   
 7565   9754   
[dependencies.aws-smithy-json]
 7566   9755   
path = "../aws-smithy-json"
 7567   9756   
version = "0.61.4"
 7568   9757   
 7569   9758   
[dependencies.aws-smithy-runtime]
 7570   9759   
path = "../aws-smithy-runtime"
 7571   9760   
features = ["client"]
 7572   9761   
version = "1.8.5"
 7573   9762   
 7574   9763   
[dependencies.aws-smithy-runtime-api]
 7575   9764   
path = "../aws-smithy-runtime-api"
 7576   9765   
features = ["client", "http-02x"]
 7577   9766   
version = "1.8.5"
 7578   9767   
 7579   9768   
[dependencies.aws-smithy-types]
 7580   9769   
path = "../aws-smithy-types"
 7581   9770   
version = "1.3.2"
 7582   9771   
 7583   9772   
[dependencies.aws-types]
 7584   9773   
path = "../aws-types"
 7585   9774   
version = "1.3.8"
 7586   9775   
 7587   9776   
[dependencies.bytes]
 7588   9777   
version = "1.4.0"
 7589   9778   
 7590   9779   
[dependencies.fastrand]
 7591   9780   
version = "2.0.0"
 7592   9781   
 7593   9782   
[dependencies.http]
 7594   9783   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7595   9784   
index 6518dfc..6b94752 100644
 7596         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
        9785  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7597   9786   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 7598   9787   
edition = "2021"
 7599   9788   
license = "Apache-2.0"
 7600   9789   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7601   9790   
rust-version = "1.86.0"
 7602   9791   
readme = "README.md"
 7603   9792   
[package.metadata.smithy]
 7604   9793   
codegen-version = "ci"
 7605   9794   
[package.metadata.docs.rs]
 7606   9795   
all-features = true
 7607   9796   
targets = ["x86_64-unknown-linux-gnu"]
 7608   9797   
[dependencies.aws-credential-types]
 7609   9798   
path = "../aws-credential-types"
 7610   9799   
version = "1.2.4"
 7611   9800   
 7612   9801   
[dependencies.aws-runtime]
 7613   9802   
path = "../aws-runtime"
 7614   9803   
features = ["event-stream"]
 7615   9804   
version = "1.5.9"
 7616   9805   
 7617   9806   
[dependencies.aws-smithy-async]
 7618   9807   
path = "../aws-smithy-async"
 7619   9808   
version = "1.2.5"
 7620   9809   
 7621   9810   
[dependencies.aws-smithy-eventstream]
 7622   9811   
path = "../aws-smithy-eventstream"
 7623   9812   
version = "0.60.10"
 7624   9813   
 7625   9814   
[dependencies.aws-smithy-http]
 7626   9815   
path = "../aws-smithy-http"
 7627   9816   
features = ["event-stream"]
 7628         -
version = "0.62.2"
        9817  +
version = "0.62.3"
 7629   9818   
 7630   9819   
[dependencies.aws-smithy-json]
 7631   9820   
path = "../aws-smithy-json"
 7632   9821   
version = "0.61.4"
 7633   9822   
 7634   9823   
[dependencies.aws-smithy-runtime]
 7635   9824   
path = "../aws-smithy-runtime"
 7636   9825   
features = ["client"]
 7637   9826   
version = "1.8.5"
 7638   9827   
 7639   9828   
[dependencies.aws-smithy-runtime-api]
 7640   9829   
path = "../aws-smithy-runtime-api"
 7641   9830   
features = ["client", "http-02x"]
 7642   9831   
version = "1.8.5"
 7643   9832   
 7644   9833   
[dependencies.aws-smithy-types]
 7645   9834   
path = "../aws-smithy-types"
 7646   9835   
version = "1.3.2"
 7647   9836   
 7648   9837   
[dependencies.aws-types]
 7649   9838   
path = "../aws-types"
 7650   9839   
version = "1.3.8"
 7651   9840   
 7652   9841   
[dependencies.bytes]
 7653   9842   
version = "1.4.0"
 7654   9843   
 7655   9844   
[dependencies.fastrand]
 7656   9845   
version = "2.0.0"
 7657   9846   
 7658   9847   
[dependencies.http]
 7659   9848   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7660   9849   
index dabb0e0..34cbc15 100644
 7661         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
        9850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7662   9851   
@@ -1,65 +1,65 @@
 7663   9852   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7664   9853   
[package]
 7665   9854   
name = "aws-sdk-polly"
 7666   9855   
version = "0.0.0-local"
 7667   9856   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7668   9857   
description = "AWS SDK for Amazon Polly"
 7669   9858   
edition = "2021"
 7670   9859   
license = "Apache-2.0"
 7671   9860   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7672   9861   
rust-version = "1.86.0"
 7673   9862   
readme = "README.md"
 7674   9863   
[package.metadata.smithy]
 7675   9864   
codegen-version = "ci"
 7676   9865   
[package.metadata.docs.rs]
 7677   9866   
all-features = true
 7678   9867   
targets = ["x86_64-unknown-linux-gnu"]
 7679   9868   
[dependencies.aws-credential-types]
 7680   9869   
path = "../aws-credential-types"
 7681   9870   
version = "1.2.4"
 7682   9871   
 7683   9872   
[dependencies.aws-runtime]
 7684   9873   
path = "../aws-runtime"
 7685   9874   
version = "1.5.9"
 7686   9875   
 7687   9876   
[dependencies.aws-sigv4]
 7688   9877   
path = "../aws-sigv4"
 7689         -
version = "1.3.3"
        9878  +
version = "1.3.4"
 7690   9879   
 7691   9880   
[dependencies.aws-smithy-async]
 7692   9881   
path = "../aws-smithy-async"
 7693   9882   
version = "1.2.5"
 7694   9883   
 7695   9884   
[dependencies.aws-smithy-http]
 7696   9885   
path = "../aws-smithy-http"
 7697         -
version = "0.62.2"
        9886  +
version = "0.62.3"
 7698   9887   
 7699   9888   
[dependencies.aws-smithy-json]
 7700   9889   
path = "../aws-smithy-json"
 7701   9890   
version = "0.61.4"
 7702   9891   
 7703   9892   
[dependencies.aws-smithy-runtime]
 7704   9893   
path = "../aws-smithy-runtime"
 7705   9894   
features = ["client"]
 7706   9895   
version = "1.8.5"
 7707   9896   
 7708   9897   
[dependencies.aws-smithy-runtime-api]
 7709   9898   
path = "../aws-smithy-runtime-api"
 7710   9899   
features = ["client", "http-02x"]
 7711   9900   
version = "1.8.5"
 7712   9901   
 7713   9902   
[dependencies.aws-smithy-types]
 7714   9903   
path = "../aws-smithy-types"
 7715   9904   
version = "1.3.2"
 7716   9905   
 7717   9906   
[dependencies.aws-types]
 7718   9907   
path = "../aws-types"
 7719   9908   
version = "1.3.8"
 7720   9909   
 7721   9910   
[dependencies.bytes]
 7722   9911   
version = "1.4.0"
 7723   9912   
 7724   9913   
[dependencies.fastrand]
 7725   9914   
version = "2.0.0"
 7726   9915   
 7727   9916   
[dependencies.http]
 7728   9917   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7729   9918   
index a884716..f3d8713 100644
 7730         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
        9919  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7731   9920   
@@ -1,61 +1,61 @@
 7732   9921   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7733   9922   
[package]
 7734   9923   
name = "aws-sdk-qldbsession"
 7735   9924   
version = "0.0.0-local"
 7736   9925   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7737   9926   
description = "AWS SDK for Amazon QLDB Session"
 7738   9927   
edition = "2021"
 7739   9928   
license = "Apache-2.0"
 7740   9929   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7741   9930   
rust-version = "1.86.0"
 7742   9931   
readme = "README.md"
 7743   9932   
[package.metadata.smithy]
 7744   9933   
codegen-version = "ci"
 7745   9934   
[package.metadata.docs.rs]
 7746   9935   
all-features = true
 7747   9936   
targets = ["x86_64-unknown-linux-gnu"]
 7748   9937   
[dependencies.aws-credential-types]
 7749   9938   
path = "../aws-credential-types"
 7750   9939   
version = "1.2.4"
 7751   9940   
 7752   9941   
[dependencies.aws-runtime]
 7753   9942   
path = "../aws-runtime"
 7754   9943   
version = "1.5.9"
 7755   9944   
 7756   9945   
[dependencies.aws-smithy-async]
 7757   9946   
path = "../aws-smithy-async"
 7758   9947   
version = "1.2.5"
 7759   9948   
 7760   9949   
[dependencies.aws-smithy-http]
 7761   9950   
path = "../aws-smithy-http"
 7762         -
version = "0.62.2"
        9951  +
version = "0.62.3"
 7763   9952   
 7764   9953   
[dependencies.aws-smithy-json]
 7765   9954   
path = "../aws-smithy-json"
 7766   9955   
version = "0.61.4"
 7767   9956   
 7768   9957   
[dependencies.aws-smithy-runtime]
 7769   9958   
path = "../aws-smithy-runtime"
 7770   9959   
features = ["client"]
 7771   9960   
version = "1.8.5"
 7772   9961   
 7773   9962   
[dependencies.aws-smithy-runtime-api]
 7774   9963   
path = "../aws-smithy-runtime-api"
 7775   9964   
features = ["client", "http-02x"]
 7776   9965   
version = "1.8.5"
 7777   9966   
 7778   9967   
[dependencies.aws-smithy-types]
 7779   9968   
path = "../aws-smithy-types"
 7780   9969   
version = "1.3.2"
 7781   9970   
 7782   9971   
[dependencies.aws-types]
 7783   9972   
path = "../aws-types"
 7784   9973   
version = "1.3.8"
 7785   9974   
 7786   9975   
[dependencies.bytes]
 7787   9976   
version = "1.4.0"
 7788   9977   
 7789   9978   
[dependencies.fastrand]
 7790   9979   
version = "2.0.0"
 7791   9980   
 7792   9981   
[dependencies.http]
 7793   9982   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7794   9983   
index 32a7dc9..a2c752d 100644
 7795         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
        9984  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7796   9985   
@@ -1,61 +1,61 @@
 7797   9986   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7798   9987   
[package]
 7799   9988   
name = "aws-sdk-route53"
 7800   9989   
version = "0.0.0-local"
 7801   9990   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7802   9991   
description = "AWS SDK for Amazon Route 53"
 7803   9992   
edition = "2021"
 7804   9993   
license = "Apache-2.0"
 7805   9994   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7806   9995   
rust-version = "1.86.0"
 7807   9996   
readme = "README.md"
 7808   9997   
[package.metadata.smithy]
 7809   9998   
codegen-version = "ci"
 7810   9999   
[package.metadata.docs.rs]
 7811  10000   
all-features = true
 7812  10001   
targets = ["x86_64-unknown-linux-gnu"]
 7813  10002   
[dependencies.aws-credential-types]
 7814  10003   
path = "../aws-credential-types"
 7815  10004   
version = "1.2.4"
 7816  10005   
 7817  10006   
[dependencies.aws-runtime]
 7818  10007   
path = "../aws-runtime"
 7819  10008   
version = "1.5.9"
 7820  10009   
 7821  10010   
[dependencies.aws-smithy-async]
 7822  10011   
path = "../aws-smithy-async"
 7823  10012   
version = "1.2.5"
 7824  10013   
 7825  10014   
[dependencies.aws-smithy-http]
 7826  10015   
path = "../aws-smithy-http"
 7827         -
version = "0.62.2"
       10016  +
version = "0.62.3"
 7828  10017   
 7829  10018   
[dependencies.aws-smithy-json]
 7830  10019   
path = "../aws-smithy-json"
 7831  10020   
version = "0.61.4"
 7832  10021   
 7833  10022   
[dependencies.aws-smithy-runtime]
 7834  10023   
path = "../aws-smithy-runtime"
 7835  10024   
features = ["client"]
 7836  10025   
version = "1.8.5"
 7837  10026   
 7838  10027   
[dependencies.aws-smithy-runtime-api]
 7839  10028   
path = "../aws-smithy-runtime-api"
 7840  10029   
features = ["client", "http-02x"]
 7841  10030   
version = "1.8.5"
 7842  10031   
 7843  10032   
[dependencies.aws-smithy-types]
 7844  10033   
path = "../aws-smithy-types"
 7845  10034   
version = "1.3.2"
 7846  10035   
 7847  10036   
[dependencies.aws-smithy-xml]
 7848  10037   
path = "../aws-smithy-xml"
 7849  10038   
version = "0.60.10"
 7850  10039   
 7851  10040   
[dependencies.aws-types]
 7852  10041   
path = "../aws-types"
 7853  10042   
version = "1.3.8"
 7854  10043   
 7855  10044   
[dependencies.fastrand]
 7856  10045   
version = "2.0.0"
 7857  10046   
 7858  10047   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7859  10048   
index f65e261..2f6bec0 100644
 7860         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       10049  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7861  10050   
@@ -1,75 +1,75 @@
 7862  10051   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7863  10052   
[package]
 7864  10053   
name = "aws-sdk-s3"
 7865  10054   
version = "0.0.0-local"
 7866  10055   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7867  10056   
description = "AWS SDK for Amazon Simple Storage Service"
 7868  10057   
edition = "2021"
 7869  10058   
license = "Apache-2.0"
 7870  10059   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7871  10060   
rust-version = "1.86.0"
 7872  10061   
readme = "README.md"
 7873  10062   
[package.metadata.smithy]
 7874  10063   
codegen-version = "ci"
 7875  10064   
[package.metadata.docs.rs]
 7876  10065   
all-features = true
 7877  10066   
targets = ["x86_64-unknown-linux-gnu"]
 7878  10067   
[dependencies.aws-credential-types]
 7879  10068   
path = "../aws-credential-types"
 7880  10069   
version = "1.2.4"
 7881  10070   
 7882  10071   
[dependencies.aws-runtime]
 7883  10072   
path = "../aws-runtime"
 7884  10073   
features = ["event-stream", "http-02x"]
 7885  10074   
version = "1.5.9"
 7886  10075   
 7887  10076   
[dependencies.aws-sigv4]
 7888  10077   
path = "../aws-sigv4"
 7889         -
version = "1.3.3"
       10078  +
version = "1.3.4"
 7890  10079   
 7891  10080   
[dependencies.aws-smithy-async]
 7892  10081   
path = "../aws-smithy-async"
 7893  10082   
version = "1.2.5"
 7894  10083   
 7895  10084   
[dependencies.aws-smithy-checksums]
 7896  10085   
path = "../aws-smithy-checksums"
 7897  10086   
version = "0.63.5"
 7898  10087   
 7899  10088   
[dependencies.aws-smithy-eventstream]
 7900  10089   
path = "../aws-smithy-eventstream"
 7901  10090   
version = "0.60.10"
 7902  10091   
 7903  10092   
[dependencies.aws-smithy-http]
 7904  10093   
path = "../aws-smithy-http"
 7905  10094   
features = ["event-stream"]
 7906         -
version = "0.62.2"
       10095  +
version = "0.62.3"
 7907  10096   
 7908  10097   
[dependencies.aws-smithy-json]
 7909  10098   
path = "../aws-smithy-json"
 7910  10099   
version = "0.61.4"
 7911  10100   
 7912  10101   
[dependencies.aws-smithy-runtime]
 7913  10102   
path = "../aws-smithy-runtime"
 7914  10103   
features = ["client"]
 7915  10104   
version = "1.8.5"
 7916  10105   
 7917  10106   
[dependencies.aws-smithy-runtime-api]
 7918  10107   
path = "../aws-smithy-runtime-api"
 7919  10108   
features = ["client", "http-02x"]
 7920  10109   
version = "1.8.5"
 7921  10110   
 7922  10111   
[dependencies.aws-smithy-types]
 7923  10112   
path = "../aws-smithy-types"
 7924  10113   
version = "1.3.2"
 7925  10114   
 7926  10115   
[dependencies.aws-smithy-xml]
 7927  10116   
path = "../aws-smithy-xml"
 7928  10117   
version = "0.60.10"
 7929  10118   
 7930  10119   
[dependencies.aws-types]
 7931  10120   
path = "../aws-types"
 7932  10121   
version = "1.3.8"
 7933  10122   
 7934  10123   
[dependencies.bytes]
 7935  10124   
version = "1.4.0"
 7936  10125   
 7937  10126   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7938  10127   
index b4d1cdd..861c0cc 100644
 7939         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       10128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7940  10129   
@@ -1,61 +1,61 @@
 7941  10130   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7942  10131   
[package]
 7943  10132   
name = "aws-sdk-s3control"
 7944  10133   
version = "0.0.0-local"
 7945  10134   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7946  10135   
description = "AWS SDK for AWS S3 Control"
 7947  10136   
edition = "2021"
 7948  10137   
license = "Apache-2.0"
 7949  10138   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7950  10139   
rust-version = "1.86.0"
 7951  10140   
readme = "README.md"
 7952  10141   
[package.metadata.smithy]
 7953  10142   
codegen-version = "ci"
 7954  10143   
[package.metadata.docs.rs]
 7955  10144   
all-features = true
 7956  10145   
targets = ["x86_64-unknown-linux-gnu"]
 7957  10146   
[dependencies.aws-credential-types]
 7958  10147   
path = "../aws-credential-types"
 7959  10148   
version = "1.2.4"
 7960  10149   
 7961  10150   
[dependencies.aws-runtime]
 7962  10151   
path = "../aws-runtime"
 7963  10152   
version = "1.5.9"
 7964  10153   
 7965  10154   
[dependencies.aws-smithy-async]
 7966  10155   
path = "../aws-smithy-async"
 7967  10156   
version = "1.2.5"
 7968  10157   
 7969  10158   
[dependencies.aws-smithy-http]
 7970  10159   
path = "../aws-smithy-http"
 7971         -
version = "0.62.2"
       10160  +
version = "0.62.3"
 7972  10161   
 7973  10162   
[dependencies.aws-smithy-json]
 7974  10163   
path = "../aws-smithy-json"
 7975  10164   
version = "0.61.4"
 7976  10165   
 7977  10166   
[dependencies.aws-smithy-runtime]
 7978  10167   
path = "../aws-smithy-runtime"
 7979  10168   
features = ["client"]
 7980  10169   
version = "1.8.5"
 7981  10170   
 7982  10171   
[dependencies.aws-smithy-runtime-api]
 7983  10172   
path = "../aws-smithy-runtime-api"
 7984  10173   
features = ["client", "http-02x"]
 7985  10174   
version = "1.8.5"
 7986  10175   
 7987  10176   
[dependencies.aws-smithy-types]
 7988  10177   
path = "../aws-smithy-types"
 7989  10178   
version = "1.3.2"
 7990  10179   
 7991  10180   
[dependencies.aws-smithy-xml]
 7992  10181   
path = "../aws-smithy-xml"
 7993  10182   
version = "0.60.10"
 7994  10183   
 7995  10184   
[dependencies.aws-types]
 7996  10185   
path = "../aws-types"
 7997  10186   
version = "1.3.8"
 7998  10187   
 7999  10188   
[dependencies.fastrand]
 8000  10189   
version = "2.0.0"
 8001  10190   
 8002  10191   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8003  10192   
index 2cde182..fc367f4 100644
 8004         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       10193  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 8005  10194   
@@ -1,61 +1,61 @@
 8006  10195   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8007  10196   
[package]
 8008  10197   
name = "aws-sdk-sso"
 8009  10198   
version = "0.0.0-local"
 8010  10199   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8011  10200   
description = "AWS SDK for AWS Single Sign-On"
 8012  10201   
edition = "2021"
 8013  10202   
license = "Apache-2.0"
 8014  10203   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8015  10204   
rust-version = "1.86.0"
 8016  10205   
readme = "README.md"
 8017  10206   
[package.metadata.smithy]
 8018  10207   
codegen-version = "ci"
 8019  10208   
[package.metadata.docs.rs]
 8020  10209   
all-features = true
 8021  10210   
targets = ["x86_64-unknown-linux-gnu"]
 8022  10211   
[dependencies.aws-credential-types]
 8023  10212   
path = "../aws-credential-types"
 8024  10213   
version = "1.2.4"
 8025  10214   
 8026  10215   
[dependencies.aws-runtime]
 8027  10216   
path = "../aws-runtime"
 8028  10217   
version = "1.5.9"
 8029  10218   
 8030  10219   
[dependencies.aws-smithy-async]
 8031  10220   
path = "../aws-smithy-async"
 8032  10221   
version = "1.2.5"
 8033  10222   
 8034  10223   
[dependencies.aws-smithy-http]
 8035  10224   
path = "../aws-smithy-http"
 8036         -
version = "0.62.2"
       10225  +
version = "0.62.3"
 8037  10226   
 8038  10227   
[dependencies.aws-smithy-json]
 8039  10228   
path = "../aws-smithy-json"
 8040  10229   
version = "0.61.4"
 8041  10230   
 8042  10231   
[dependencies.aws-smithy-runtime]
 8043  10232   
path = "../aws-smithy-runtime"
 8044  10233   
features = ["client"]
 8045  10234   
version = "1.8.5"
 8046  10235   
 8047  10236   
[dependencies.aws-smithy-runtime-api]
 8048  10237   
path = "../aws-smithy-runtime-api"
 8049  10238   
features = ["client", "http-02x"]
 8050  10239   
version = "1.8.5"
 8051  10240   
 8052  10241   
[dependencies.aws-smithy-types]
 8053  10242   
path = "../aws-smithy-types"
 8054  10243   
version = "1.3.2"
 8055  10244   
 8056  10245   
[dependencies.aws-types]
 8057  10246   
path = "../aws-types"
 8058  10247   
version = "1.3.8"
 8059  10248   
 8060  10249   
[dependencies.bytes]
 8061  10250   
version = "1.4.0"
 8062  10251   
 8063  10252   
[dependencies.fastrand]
 8064  10253   
version = "2.0.0"
 8065  10254   
 8066  10255   
[dependencies.http]
 8067  10256   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8068  10257   
index 7a34c16..588d0bd 100644
 8069         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       10258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8070  10259   
@@ -1,61 +1,61 @@
 8071  10260   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8072  10261   
[package]
 8073  10262   
name = "aws-sdk-ssooidc"
 8074  10263   
version = "0.0.0-local"
 8075  10264   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8076  10265   
description = "AWS SDK for AWS SSO OIDC"
 8077  10266   
edition = "2021"
 8078  10267   
license = "Apache-2.0"
 8079  10268   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8080  10269   
rust-version = "1.86.0"
 8081  10270   
readme = "README.md"
 8082  10271   
[package.metadata.smithy]
 8083  10272   
codegen-version = "ci"
 8084  10273   
[package.metadata.docs.rs]
 8085  10274   
all-features = true
 8086  10275   
targets = ["x86_64-unknown-linux-gnu"]
 8087  10276   
[dependencies.aws-credential-types]
 8088  10277   
path = "../aws-credential-types"
 8089  10278   
version = "1.2.4"
 8090  10279   
 8091  10280   
[dependencies.aws-runtime]
 8092  10281   
path = "../aws-runtime"
 8093  10282   
version = "1.5.9"
 8094  10283   
 8095  10284   
[dependencies.aws-smithy-async]
 8096  10285   
path = "../aws-smithy-async"
 8097  10286   
version = "1.2.5"
 8098  10287   
 8099  10288   
[dependencies.aws-smithy-http]
 8100  10289   
path = "../aws-smithy-http"
 8101         -
version = "0.62.2"
       10290  +
version = "0.62.3"
 8102  10291   
 8103  10292   
[dependencies.aws-smithy-json]
 8104  10293   
path = "../aws-smithy-json"
 8105  10294   
version = "0.61.4"
 8106  10295   
 8107  10296   
[dependencies.aws-smithy-runtime]
 8108  10297   
path = "../aws-smithy-runtime"
 8109  10298   
features = ["client"]
 8110  10299   
version = "1.8.5"
 8111  10300   
 8112  10301   
[dependencies.aws-smithy-runtime-api]
 8113  10302   
path = "../aws-smithy-runtime-api"
 8114  10303   
features = ["client", "http-02x"]
 8115  10304   
version = "1.8.5"
 8116  10305   
 8117  10306   
[dependencies.aws-smithy-types]
 8118  10307   
path = "../aws-smithy-types"
 8119  10308   
version = "1.3.2"
 8120  10309   
 8121  10310   
[dependencies.aws-types]
 8122  10311   
path = "../aws-types"
 8123  10312   
version = "1.3.8"
 8124  10313   
 8125  10314   
[dependencies.bytes]
 8126  10315   
version = "1.4.0"
 8127  10316   
 8128  10317   
[dependencies.fastrand]
 8129  10318   
version = "2.0.0"
 8130  10319   
 8131  10320   
[dependencies.http]
 8132  10321   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8133  10322   
index 895dfb3..f2ce34e 100644
 8134         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       10323  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8135  10324   
@@ -1,61 +1,61 @@
 8136  10325   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8137  10326   
[package]
 8138  10327   
name = "aws-sdk-sts"
 8139  10328   
version = "0.0.0-local"
 8140  10329   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8141  10330   
description = "AWS SDK for AWS Security Token Service"
 8142  10331   
edition = "2021"
 8143  10332   
license = "Apache-2.0"
 8144  10333   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8145  10334   
rust-version = "1.86.0"
 8146  10335   
readme = "README.md"
 8147  10336   
[package.metadata.smithy]
 8148  10337   
codegen-version = "ci"
 8149  10338   
[package.metadata.docs.rs]
 8150  10339   
all-features = true
 8151  10340   
targets = ["x86_64-unknown-linux-gnu"]
 8152  10341   
[dependencies.aws-credential-types]
 8153  10342   
path = "../aws-credential-types"
 8154  10343   
version = "1.2.4"
 8155  10344   
 8156  10345   
[dependencies.aws-runtime]
 8157  10346   
path = "../aws-runtime"
 8158  10347   
version = "1.5.9"
 8159  10348   
 8160  10349   
[dependencies.aws-smithy-async]
 8161  10350   
path = "../aws-smithy-async"
 8162  10351   
version = "1.2.5"
 8163  10352   
 8164  10353   
[dependencies.aws-smithy-http]
 8165  10354   
path = "../aws-smithy-http"
 8166         -
version = "0.62.2"
       10355  +
version = "0.62.3"
 8167  10356   
 8168  10357   
[dependencies.aws-smithy-json]
 8169  10358   
path = "../aws-smithy-json"
 8170  10359   
version = "0.61.4"
 8171  10360   
 8172  10361   
[dependencies.aws-smithy-query]
 8173  10362   
path = "../aws-smithy-query"
 8174  10363   
version = "0.60.7"
 8175  10364   
 8176  10365   
[dependencies.aws-smithy-runtime]
 8177  10366   
path = "../aws-smithy-runtime"
 8178  10367   
features = ["client"]
 8179  10368   
version = "1.8.5"
 8180  10369   
 8181  10370   
[dependencies.aws-smithy-runtime-api]
 8182  10371   
path = "../aws-smithy-runtime-api"
 8183  10372   
features = ["client", "http-02x"]
 8184  10373   
version = "1.8.5"
 8185  10374   
 8186  10375   
[dependencies.aws-smithy-types]
 8187  10376   
path = "../aws-smithy-types"
 8188  10377   
version = "1.3.2"
 8189  10378   
 8190  10379   
[dependencies.aws-smithy-xml]
 8191  10380   
path = "../aws-smithy-xml"
 8192  10381   
version = "0.60.10"
 8193  10382   
 8194  10383   
[dependencies.aws-types]
 8195  10384   
path = "../aws-types"
 8196  10385   
version = "1.3.8"
 8197  10386   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8198  10387   
index d556561..91178b6 100644
 8199         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       10388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8200  10389   
@@ -1,61 +1,61 @@
 8201  10390   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8202  10391   
[package]
 8203  10392   
name = "aws-sdk-timestreamquery"
 8204  10393   
version = "0.0.0-local"
 8205  10394   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8206  10395   
description = "AWS SDK for Amazon Timestream Query"
 8207  10396   
edition = "2021"
 8208  10397   
license = "Apache-2.0"
 8209  10398   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8210  10399   
rust-version = "1.86.0"
 8211  10400   
readme = "README.md"
 8212  10401   
[package.metadata.smithy]
 8213  10402   
codegen-version = "ci"
 8214  10403   
[package.metadata.docs.rs]
 8215  10404   
all-features = true
 8216  10405   
targets = ["x86_64-unknown-linux-gnu"]
 8217  10406   
[dependencies.aws-credential-types]
 8218  10407   
path = "../aws-credential-types"
 8219  10408   
version = "1.2.4"
 8220  10409   
 8221  10410   
[dependencies.aws-runtime]
 8222  10411   
path = "../aws-runtime"
 8223  10412   
version = "1.5.9"
 8224  10413   
 8225  10414   
[dependencies.aws-smithy-async]
 8226  10415   
path = "../aws-smithy-async"
 8227  10416   
version = "1.2.5"
 8228  10417   
 8229  10418   
[dependencies.aws-smithy-http]
 8230  10419   
path = "../aws-smithy-http"
 8231         -
version = "0.62.2"
       10420  +
version = "0.62.3"
 8232  10421   
 8233  10422   
[dependencies.aws-smithy-json]
 8234  10423   
path = "../aws-smithy-json"
 8235  10424   
version = "0.61.4"
 8236  10425   
 8237  10426   
[dependencies.aws-smithy-runtime]
 8238  10427   
path = "../aws-smithy-runtime"
 8239  10428   
features = ["client"]
 8240  10429   
version = "1.8.5"
 8241  10430   
 8242  10431   
[dependencies.aws-smithy-runtime-api]
 8243  10432   
path = "../aws-smithy-runtime-api"
 8244  10433   
features = ["client", "http-02x"]
 8245  10434   
version = "1.8.5"
 8246  10435   
 8247  10436   
[dependencies.aws-smithy-types]
 8248  10437   
path = "../aws-smithy-types"
 8249  10438   
version = "1.3.2"
 8250  10439   
 8251  10440   
[dependencies.aws-types]
 8252  10441   
path = "../aws-types"
 8253  10442   
version = "1.3.8"
 8254  10443   
 8255  10444   
[dependencies.bytes]
 8256  10445   
version = "1.4.0"
 8257  10446   
 8258  10447   
[dependencies.fastrand]
 8259  10448   
version = "2.0.0"
 8260  10449   
 8261  10450   
[dependencies.http]
 8262  10451   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8263  10452   
index 0c56e4c..95731e3 100644
 8264         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       10453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8265  10454   
@@ -1,61 +1,61 @@
 8266  10455   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8267  10456   
[package]
 8268  10457   
name = "aws-sdk-timestreamwrite"
 8269  10458   
version = "0.0.0-local"
 8270  10459   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8271  10460   
description = "AWS SDK for Amazon Timestream Write"
 8272  10461   
edition = "2021"
 8273  10462   
license = "Apache-2.0"
 8274  10463   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8275  10464   
rust-version = "1.86.0"
 8276  10465   
readme = "README.md"
 8277  10466   
[package.metadata.smithy]
 8278  10467   
codegen-version = "ci"
 8279  10468   
[package.metadata.docs.rs]
 8280  10469   
all-features = true
 8281  10470   
targets = ["x86_64-unknown-linux-gnu"]
 8282  10471   
[dependencies.aws-credential-types]
 8283  10472   
path = "../aws-credential-types"
 8284  10473   
version = "1.2.4"
 8285  10474   
 8286  10475   
[dependencies.aws-runtime]
 8287  10476   
path = "../aws-runtime"
 8288  10477   
version = "1.5.9"
 8289  10478   
 8290  10479   
[dependencies.aws-smithy-async]
 8291  10480   
path = "../aws-smithy-async"
 8292  10481   
version = "1.2.5"
 8293  10482   
 8294  10483   
[dependencies.aws-smithy-http]
 8295  10484   
path = "../aws-smithy-http"
 8296         -
version = "0.62.2"
       10485  +
version = "0.62.3"
 8297  10486   
 8298  10487   
[dependencies.aws-smithy-json]
 8299  10488   
path = "../aws-smithy-json"
 8300  10489   
version = "0.61.4"
 8301  10490   
 8302  10491   
[dependencies.aws-smithy-runtime]
 8303  10492   
path = "../aws-smithy-runtime"
 8304  10493   
features = ["client"]
 8305  10494   
version = "1.8.5"
 8306  10495   
 8307  10496   
[dependencies.aws-smithy-runtime-api]
 8308  10497   
path = "../aws-smithy-runtime-api"
 8309  10498   
features = ["client", "http-02x"]
 8310  10499   
version = "1.8.5"
 8311  10500   
 8312  10501   
[dependencies.aws-smithy-types]
 8313  10502   
path = "../aws-smithy-types"
 8314  10503   
version = "1.3.2"
 8315  10504   
 8316  10505   
[dependencies.aws-types]
 8317  10506   
path = "../aws-types"
 8318  10507   
version = "1.3.8"
 8319  10508   
 8320  10509   
[dependencies.bytes]
 8321  10510   
version = "1.4.0"
 8322  10511   
 8323  10512   
[dependencies.fastrand]
 8324  10513   
version = "2.0.0"
 8325  10514   
 8326  10515   
[dependencies.http]
 8327  10516   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8328  10517   
index 5b35037..9fb220a 100644
 8329         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       10518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8330  10519   
@@ -1,71 +1,71 @@
 8331  10520   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8332  10521   
[package]
 8333  10522   
name = "aws-sdk-transcribestreaming"
 8334  10523   
version = "0.0.0-local"
 8335  10524   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8336  10525   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 8337  10526   
edition = "2021"
 8338  10527   
license = "Apache-2.0"
 8339  10528   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8340  10529   
rust-version = "1.86.0"
 8341  10530   
readme = "README.md"
 8342  10531   
[package.metadata.smithy]
 8343  10532   
codegen-version = "ci"
 8344  10533   
[package.metadata.docs.rs]
 8345  10534   
all-features = true
 8346  10535   
targets = ["x86_64-unknown-linux-gnu"]
 8347  10536   
[dependencies.aws-credential-types]
 8348  10537   
path = "../aws-credential-types"
 8349  10538   
version = "1.2.4"
 8350  10539   
 8351  10540   
[dependencies.aws-runtime]
 8352  10541   
path = "../aws-runtime"
 8353  10542   
features = ["event-stream"]
 8354  10543   
version = "1.5.9"
 8355  10544   
 8356  10545   
[dependencies.aws-sigv4]
 8357  10546   
path = "../aws-sigv4"
 8358         -
version = "1.3.3"
       10547  +
version = "1.3.4"
 8359  10548   
 8360  10549   
[dependencies.aws-smithy-async]
 8361  10550   
path = "../aws-smithy-async"
 8362  10551   
version = "1.2.5"
 8363  10552   
 8364  10553   
[dependencies.aws-smithy-eventstream]
 8365  10554   
path = "../aws-smithy-eventstream"
 8366  10555   
version = "0.60.10"
 8367  10556   
 8368  10557   
[dependencies.aws-smithy-http]
 8369  10558   
path = "../aws-smithy-http"
 8370  10559   
features = ["event-stream"]
 8371         -
version = "0.62.2"
       10560  +
version = "0.62.3"
 8372  10561   
 8373  10562   
[dependencies.aws-smithy-json]
 8374  10563   
path = "../aws-smithy-json"
 8375  10564   
version = "0.61.4"
 8376  10565   
 8377  10566   
[dependencies.aws-smithy-runtime]
 8378  10567   
path = "../aws-smithy-runtime"
 8379  10568   
features = ["client"]
 8380  10569   
version = "1.8.5"
 8381  10570