AWS SDK

AWS SDK

rev. 628eeeeeed390f5efdbfe607c18848c033debd3e (ignoring whitespace)

Files changed:

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

@@ -1,0 +2,0 @@
    1         -
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
    2         -
Host:example.amazonaws.com

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

@@ -1,0 +4,0 @@
    1         -
GET /?Param2=value2&Param1=value1 HTTP/1.1
    2         -
Host:example.amazonaws.com
    3         -
X-Amz-Date:20150830T123600Z
    4         -
Authorization: AWS4-HMAC-SHA256 Credential=ANOTREAL/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947

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

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

  214         -
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
  215    140   
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
  216    141   
deleted file mode 100644
  217    142   
index 89e572e..0000000
  218         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.authz
         143  +
++ /dev/null
  219    144   
@@ -1 +0,0 @@
  220         -
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
  221    145   
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
  222    146   
deleted file mode 100644
  223    147   
index fcf23ce..0000000
  224         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sreq
         148  +
++ /dev/null
  225    149   
@@ -1,4 +0,0 @@
  226         -
POST / HTTP/1.1
  227         -
Host:example.amazonaws.com
  228         -
X-Amz-Date:20150830T123600Z
  229         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
  230    150   
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
  231    151   
deleted file mode 100644
  232    152   
index a62589f..0000000
  233         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.authz
         153  +
++ /dev/null
  234    154   
@@ -1 +0,0 @@
  235         -
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
  236    155   
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
  237    156   
deleted file mode 100644
  238    157   
index b4b78a1..0000000
  239         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sreq
         158  +
++ /dev/null
  240    159   
@@ -1,5 +0,0 @@
  241         -
POST / HTTP/1.1
  242         -
Host:example.amazonaws.com
  243         -
My-Header1:value1
  244         -
X-Amz-Date:20150830T123600Z
  245         -
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
  246    160   
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
  247    161   
deleted file mode 100644
  248    162   
index d9e52a3..0000000
  249         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.authz
         163  +
++ /dev/null
  250    164   
@@ -1 +0,0 @@
  251         -
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
  252    165   
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
  253    166   
deleted file mode 100644
  254    167   
index 99c3210..0000000
  255         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sreq
         168  +
++ /dev/null
  256    169   
@@ -1,5 +0,0 @@
  257         -
POST / HTTP/1.1
  258         -
Host:example.amazonaws.com
  259         -
My-Header1:VALUE1
  260         -
X-Amz-Date:20150830T123600Z
  261         -
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
  262    170   
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
  263    171   
deleted file mode 100644
  264    172   
index 89e572e..0000000
  265         -
-- 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
         173  +
++ /dev/null
  266    174   
@@ -1 +0,0 @@
  267         -
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
  268    175   
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
  269    176   
deleted file mode 100644
  270    177   
index 64aa046..0000000
  271         -
-- 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
         178  +
++ /dev/null
  272    179   
@@ -1 +0,0 @@
  273         -
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
  274    180   
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
  275    181   
deleted file mode 100644
  276    182   
index cc34282..0000000
  277         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/readme.txt
         183  +
++ /dev/null
  278    184   
@@ -1,15 +0,0 @@
  279         -
A note about using temporary security credentials:
  280         -

  281         -
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).
  282         -

  283         -
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.
  284         -

  285         -
The test suite has 2 examples:
  286         -

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

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

  291         -
The test suite uses this example value for X-Amz-Security-Token:
  292         -

  293         -
AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
              \
 No newline at end of file
  294    185   
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
  295    186   
deleted file mode 100644
  296    187   
index 44280cd..0000000
  297         -
-- 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
         188  +
++ /dev/null
  298    189   
@@ -1 +0,0 @@
  299         -
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
  300    190   
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
  301    191   
deleted file mode 100644
  302    192   
index 82af150..0000000
  303         -
-- 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
         193  +
++ /dev/null
  304    194   
@@ -1,4 +0,0 @@
  305         -
POST /?Param1=value1 HTTP/1.1
  306         -
Host:example.amazonaws.com
  307         -
X-Amz-Date:20150830T123600Z
  308         -
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
  309    195   
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
  310    196   
deleted file mode 100644
  311    197   
index 44280cd..0000000
  312         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.authz
         198  +
++ /dev/null
  313    199   
@@ -1 +0,0 @@
  314         -
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
  315    200   
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
  316    201   
deleted file mode 100644
  317    202   
index 82af150..0000000
  318         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sreq
         203  +
++ /dev/null
  319    204   
@@ -1,4 +0,0 @@
  320         -
POST /?Param1=value1 HTTP/1.1
  321         -
Host:example.amazonaws.com
  322         -
X-Amz-Date:20150830T123600Z
  323         -
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
  324    205   
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
  325    206   
deleted file mode 100644
  326    207   
index 89e572e..0000000
  327         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.authz
         208  +
++ /dev/null
  328    209   
@@ -1 +0,0 @@
  329         -
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
  330    210   
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
  331    211   
deleted file mode 100644
  332    212   
index a5ada0d..0000000
  333         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sreq
         213  +
++ /dev/null
  334    214   
@@ -1,4 +0,0 @@
  335         -
POST / HTTP/1.1
  336         -
Host:example.amazonaws.com
  337         -
X-Amz-Date:20150830T123600Z
  338         -
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
  339    215   
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
  340    216   
deleted file mode 100644
  341    217   
index df90ca3..0000000
  342         -
-- 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
         218  +
++ /dev/null
  343    219   
@@ -1 +0,0 @@
  344         -
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
  345    220   
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
  346    221   
deleted file mode 100644
  347    222   
index 457b0d5..0000000
  348         -
-- 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
         223  +
++ /dev/null
  349    224   
@@ -1,9 +0,0 @@
  350         -
POST
  351         -
/
  352         -
Param1=value1
  353         -
content-type:application/x-www-form-urlencoded; charset=utf-8
  354         -
host:example.amazonaws.com
  355         -
x-amz-date:20150830T123600Z
  356         -
  357         -
content-type;host;x-amz-date
  358         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
  359    225   
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
  360    226   
deleted file mode 100644
  361    227   
index b8ecb89..0000000
  362         -
-- 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
         228  +
++ /dev/null
  363    229   
@@ -1,7 +0,0 @@
  364         -
POST / HTTP/1.1
  365         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  366         -
Host:example.amazonaws.com
  367         -
X-Amz-Date:20150830T123600Z
  368         -
Authorization: AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=ad1ac0c5fa1793b9b9d23894903b9ce84044d014533a633091e12c840473b393
  369         -
  370         -
Param1=value1
              \
 No newline at end of file
  371    230   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.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
  372    231   
deleted file mode 100644
  373    232   
index 79077d2..0000000
  374         -
-- 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
         233  +
++ /dev/null
  375    234   
@@ -1 +0,0 @@
  376         -
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
  377    235   
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
  378    236   
deleted file mode 100644
  379    237   
index 7852617..0000000
  380         -
-- 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
         238  +
++ /dev/null
  381    239   
@@ -1,4 +0,0 @@
  382         -
POST / HTTP/1.1
  383         -
Content-Type:application/x-www-form-urlencoded; charset=utf-8
  384         -
Host:example.amazonaws.com
  385         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
  386    240   
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
  387    241   
deleted file mode 100644
  388    242   
index 3e2e571..0000000
  389         -
-- 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
         243  +
++ /dev/null
  390    244   
@@ -1,4 +0,0 @@
  391         -
POST / HTTP/1.1
  392         -
Host:example.amazonaws.com
  393         -
X-Amz-Date:20150830T123600Z
  394         -
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
  395    245   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded/post-x-www-form-urlencoded.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
  396    246   
deleted file mode 100644
  397    247   
index 89ceae8..0000000
  398         -
-- 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
         248  +
++ /dev/null
  399    249   
@@ -1,4 +0,0 @@
  400         -
AWS4-HMAC-SHA256
  401         -
20150830T123600Z
  402         -
20150830/us-east-1/service/aws4_request
  403         -
6a42edc18395dd67cc71407d4307ff29ab1646b08c1a0107edb319e08e2bc584
              \
 No newline at end of file
  404    250   
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
  405    251   
deleted file mode 100755
  406    252   
index d645695..0000000
  407         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/LICENSE
         253  +
++ /dev/null
  408    254   
@@ -1,202 +0,0 @@
  409         -
  410         -
                                 Apache License
  411         -
                           Version 2.0, January 2004
  412         -
                        http://www.apache.org/licenses/
  413         -
  414         -
   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
  415         -
  416         -
   1. Definitions.
  417         -
  418         -
      "License" shall mean the terms and conditions for use, reproduction,
  419         -
      and distribution as defined by Sections 1 through 9 of this document.
  420         -
  421         -
      "Licensor" shall mean the copyright owner or entity authorized by
  422         -
      the copyright owner that is granting the License.
  423         -
  424         -
      "Legal Entity" shall mean the union of the acting entity and all
  425         -
      other entities that control, are controlled by, or are under common
  426         -
      control with that entity. For the purposes of this definition,
  427         -
      "control" means (i) the power, direct or indirect, to cause the
  428         -
      direction or management of such entity, whether by contract or
  429         -
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
  430         -
      outstanding shares, or (iii) beneficial ownership of such entity.
  431         -
  432         -
      "You" (or "Your") shall mean an individual or Legal Entity
  433         -
      exercising permissions granted by this License.
  434         -
  435         -
      "Source" form shall mean the preferred form for making modifications,
  436         -
      including but not limited to software source code, documentation
  437         -
      source, and configuration files.
  438         -
  439         -
      "Object" form shall mean any form resulting from mechanical
  440         -
      transformation or translation of a Source form, including but
  441         -
      not limited to compiled object code, generated documentation,
  442         -
      and conversions to other media types.
  443         -
  444         -
      "Work" shall mean the work of authorship, whether in Source or
  445         -
      Object form, made available under the License, as indicated by a
  446         -
      copyright notice that is included in or attached to the work
  447         -
      (an example is provided in the Appendix below).
  448         -
  449         -
      "Derivative Works" shall mean any work, whether in Source or Object
  450         -
      form, that is based on (or derived from) the Work and for which the
  451         -
      editorial revisions, annotations, elaborations, or other modifications
  452         -
      represent, as a whole, an original work of authorship. For the purposes
  453         -
      of this License, Derivative Works shall not include works that remain
  454         -
      separable from, or merely link (or bind by name) to the interfaces of,
  455         -
      the Work and Derivative Works thereof.
  456         -
  457         -
      "Contribution" shall mean any work of authorship, including
  458         -
      the original version of the Work and any modifications or additions
  459         -
      to that Work or Derivative Works thereof, that is intentionally
  460         -
      submitted to Licensor for inclusion in the Work by the copyright owner
  461         -
      or by an individual or Legal Entity authorized to submit on behalf of
  462         -
      the copyright owner. For the purposes of this definition, "submitted"
  463         -
      means any form of electronic, verbal, or written communication sent
  464         -
      to the Licensor or its representatives, including but not limited to
  465         -
      communication on electronic mailing lists, source code control systems,
  466         -
      and issue tracking systems that are managed by, or on behalf of, the
  467         -
      Licensor for the purpose of discussing and improving the Work, but
  468         -
      excluding communication that is conspicuously marked or otherwise
  469         -
      designated in writing by the copyright owner as "Not a Contribution."
  470         -
  471         -
      "Contributor" shall mean Licensor and any individual or Legal Entity
  472         -
      on behalf of whom a Contribution has been received by Licensor and
  473         -
      subsequently incorporated within the Work.
  474         -
  475         -
   2. Grant of Copyright License. Subject to the terms and conditions of
  476         -
      this License, each Contributor hereby grants to You a perpetual,
  477         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  478         -
      copyright license to reproduce, prepare Derivative Works of,
  479         -
      publicly display, publicly perform, sublicense, and distribute the
  480         -
      Work and such Derivative Works in Source or Object form.
  481         -
  482         -
   3. Grant of Patent License. Subject to the terms and conditions of
  483         -
      this License, each Contributor hereby grants to You a perpetual,
  484         -
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
  485         -
      (except as stated in this section) patent license to make, have made,
  486         -
      use, offer to sell, sell, import, and otherwise transfer the Work,
  487         -
      where such license applies only to those patent claims licensable
  488         -
      by such Contributor that are necessarily infringed by their
  489         -
      Contribution(s) alone or by combination of their Contribution(s)
  490         -
      with the Work to which such Contribution(s) was submitted. If You
  491         -
      institute patent litigation against any entity (including a
  492         -
      cross-claim or counterclaim in a lawsuit) alleging that the Work
  493         -
      or a Contribution incorporated within the Work constitutes direct
  494         -
      or contributory patent infringement, then any patent licenses
  495         -
      granted to You under this License for that Work shall terminate
  496         -
      as of the date such litigation is filed.
  497         -
  498         -
   4. Redistribution. You may reproduce and distribute copies of the
  499         -
      Work or Derivative Works thereof in any medium, with or without
  500         -
      modifications, and in Source or Object form, provided that You
  501         -
      meet the following conditions:
  502         -
  503         -
      (a) You must give any other recipients of the Work or
  504         -
          Derivative Works a copy of this License; and
  505         -
  506         -
      (b) You must cause any modified files to carry prominent notices
  507         -
          stating that You changed the files; and
  508         -
  509         -
      (c) You must retain, in the Source form of any Derivative Works
  510         -
          that You distribute, all copyright, patent, trademark, and
  511         -
          attribution notices from the Source form of the Work,
  512         -
          excluding those notices that do not pertain to any part of
  513         -
          the Derivative Works; and
  514         -
  515         -
      (d) If the Work includes a "NOTICE" text file as part of its
  516         -
          distribution, then any Derivative Works that You distribute must
  517         -
          include a readable copy of the attribution notices contained
  518         -
          within such NOTICE file, excluding those notices that do not
  519         -
          pertain to any part of the Derivative Works, in at least one
  520         -
          of the following places: within a NOTICE text file distributed
  521         -
          as part of the Derivative Works; within the Source form or
  522         -
          documentation, if provided along with the Derivative Works; or,
  523         -
          within a display generated by the Derivative Works, if and
  524         -
          wherever such third-party notices normally appear. The contents
  525         -
          of the NOTICE file are for informational purposes only and
  526         -
          do not modify the License. You may add Your own attribution
  527         -
          notices within Derivative Works that You distribute, alongside
  528         -
          or as an addendum to the NOTICE text from the Work, provided
  529         -
          that such additional attribution notices cannot be construed
  530         -
          as modifying the License.
  531         -
  532         -
      You may add Your own copyright statement to Your modifications and
  533         -
      may provide additional or different license terms and conditions
  534         -
      for use, reproduction, or distribution of Your modifications, or
  535         -
      for any such Derivative Works as a whole, provided Your use,
  536         -
      reproduction, and distribution of the Work otherwise complies with
  537         -
      the conditions stated in this License.
  538         -
  539         -
   5. Submission of Contributions. Unless You explicitly state otherwise,
  540         -
      any Contribution intentionally submitted for inclusion in the Work
  541         -
      by You to the Licensor shall be under the terms and conditions of
  542         -
      this License, without any additional terms or conditions.
  543         -
      Notwithstanding the above, nothing herein shall supersede or modify
  544         -
      the terms of any separate license agreement you may have executed
  545         -
      with Licensor regarding such Contributions.
  546         -
  547         -
   6. Trademarks. This License does not grant permission to use the trade
  548         -
      names, trademarks, service marks, or product names of the Licensor,
  549         -
      except as required for reasonable and customary use in describing the
  550         -
      origin of the Work and reproducing the content of the NOTICE file.
  551         -
  552         -
   7. Disclaimer of Warranty. Unless required by applicable law or
  553         -
      agreed to in writing, Licensor provides the Work (and each
  554         -
      Contributor provides its Contributions) on an "AS IS" BASIS,
  555         -
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
  556         -
      implied, including, without limitation, any warranties or conditions
  557         -
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
  558         -
      PARTICULAR PURPOSE. You are solely responsible for determining the
  559         -
      appropriateness of using or redistributing the Work and assume any
  560         -
      risks associated with Your exercise of permissions under this License.
  561         -
  562         -
   8. Limitation of Liability. In no event and under no legal theory,
  563         -
      whether in tort (including negligence), contract, or otherwise,
  564         -
      unless required by applicable law (such as deliberate and grossly
  565         -
      negligent acts) or agreed to in writing, shall any Contributor be
  566         -
      liable to You for damages, including any direct, indirect, special,
  567         -
      incidental, or consequential damages of any character arising as a
  568         -
      result of this License or out of the use or inability to use the
  569         -
      Work (including but not limited to damages for loss of goodwill,
  570         -
      work stoppage, computer failure or malfunction, or any and all
  571         -
      other commercial damages or losses), even if such Contributor
  572         -
      has been advised of the possibility of such damages.
  573         -
  574         -
   9. Accepting Warranty or Additional Liability. While redistributing
  575         -
      the Work or Derivative Works thereof, You may choose to offer,
  576         -
      and charge a fee for, acceptance of support, warranty, indemnity,
  577         -
      or other liability obligations and/or rights consistent with this
  578         -
      License. However, in accepting such obligations, You may act only
  579         -
      on Your own behalf and on Your sole responsibility, not on behalf
  580         -
      of any other Contributor, and only if You agree to indemnify,
  581         -
      defend, and hold each Contributor harmless for any liability
  582         -
      incurred by, or claims asserted against, such Contributor by reason
  583         -
      of your accepting any such warranty or additional liability.
  584         -
  585         -
   END OF TERMS AND CONDITIONS
  586         -
  587         -
   APPENDIX: How to apply the Apache License to your work.
  588         -
  589         -
      To apply the Apache License to your work, attach the following
  590         -
      boilerplate notice, with the fields enclosed by brackets "[]"
  591         -
      replaced with your own identifying information. (Don't include
  592         -
      the brackets!)  The text should be enclosed in the appropriate
  593         -
      comment syntax for the file format. We also recommend that a
  594         -
      file or class name and description of purpose be included on the
  595         -
      same "printed page" as the copyright notice for easier
  596         -
      identification within third-party archives.
  597         -
  598         -
   Copyright [yyyy] [name of copyright owner]
  599         -
  600         -
   Licensed under the Apache License, Version 2.0 (the "License");
  601         -
   you may not use this file except in compliance with the License.
  602         -
   You may obtain a copy of the License at
  603         -
  604         -
       http://www.apache.org/licenses/LICENSE-2.0
  605         -
  606         -
   Unless required by applicable law or agreed to in writing, software
  607         -
   distributed under the License is distributed on an "AS IS" BASIS,
  608         -
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  609         -
   See the License for the specific language governing permissions and
  610         -
   limitations under the License.
  611    255   
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
  612    256   
deleted file mode 100755
  613    257   
index d85f69e..0000000
  614         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/NOTICE
         258  +
++ /dev/null
  615    259   
@@ -1,2 +0,0 @@
  616         -
AWS Signature Version 4a Test Suite
  617         -
Copyright 2021 Amazon.com, Inc. or its affiliates. All Rights Reserved.
  618    260   
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
  619    261   
deleted file mode 100644
  620    262   
index c716622..0000000
  621         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/README.md
         263  +
++ /dev/null
  622    264   
@@ -1,24 +0,0 @@
  623         -
Where did the files in this directory come from?
  624         -
================================================
  625         -
  626         -
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.
  627         -
  628         -
Signature Version 4A Test Suite
  629         -
------------------------------
  630         -
  631         -
To assist you in the development of an AWS client that supports Signature Version 4A, you can use the
  632         -
files in the test suite to ensure your code is performing each step of the signing process correctly.
  633         -
  634         -
Each test group contains several files that you can use to validate most of the tasks described in
  635         -
Signature Version 4A Signing Process. The following list describes the contents of each file.
  636         -
  637         -
- context.json - Credentials and signer options to use when signing test requests
  638         -
- request.txt - The web request to be signed.
  639         -
- header-canonical-request.txt - The resulting canonical request in header-signature mode.
  640         -
- header-string-to-sign.txt - The resulting string to sign in header-signature mode.
  641         -
- query-canonical-request.txt - The resulting canonical request in query-signature mode.
  642         -
- query-string-to-sign.txt - The resulting string to sign in header-query mode.
  643         -
  644         -
Sigv4A signature generation isn't deterministic, so generated signatures can't be tested against known good ones.
  645         -
Instead, tests generate a signature, derive a verification key from the signing key, and verify the signature and
  646         -
the string to sign. This mirrors what AWS services do when verifying Sigv4A-signed requests.
  647    265   
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
  648    266   
deleted file mode 100644
  649    267   
index 45771c7..0000000
  650         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/context.json
         268  +
++ /dev/null
  651    269   
@@ -1,12 +0,0 @@
  652         -
{
  653         -
    "credentials": {
  654         -
        "access_key_id": "AKIDEXAMPLE",
  655         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  656         -
    },
  657         -
    "expiration_in_seconds": 3600,
  658         -
    "normalize": true,
  659         -
    "region": "us-east-1",
  660         -
    "service": "service",
  661         -
    "sign_body": false,
  662         -
    "timestamp": "2015-08-30T12:36:00Z"
  663         -
}
  664    270   
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
  665    271   
deleted file mode 100644
  666    272   
index 45771c7..0000000
  667         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/context.json
         273  +
++ /dev/null
  668    274   
@@ -1,12 +0,0 @@
  669         -
{
  670         -
    "credentials": {
  671         -
        "access_key_id": "AKIDEXAMPLE",
  672         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  673         -
    },
  674         -
    "expiration_in_seconds": 3600,
  675         -
    "normalize": true,
  676         -
    "region": "us-east-1",
  677         -
    "service": "service",
  678         -
    "sign_body": false,
  679         -
    "timestamp": "2015-08-30T12:36:00Z"
  680         -
}
  681    275   
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
  682    276   
deleted file mode 100644
  683    277   
index 45771c7..0000000
  684         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/context.json
         278  +
++ /dev/null
  685    279   
@@ -1,12 +0,0 @@
  686         -
{
  687         -
    "credentials": {
  688         -
        "access_key_id": "AKIDEXAMPLE",
  689         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  690         -
    },
  691         -
    "expiration_in_seconds": 3600,
  692         -
    "normalize": true,
  693         -
    "region": "us-east-1",
  694         -
    "service": "service",
  695         -
    "sign_body": false,
  696         -
    "timestamp": "2015-08-30T12:36:00Z"
  697         -
}
  698    280   
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
  699    281   
deleted file mode 100644
  700    282   
index 45771c7..0000000
  701         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/context.json
         283  +
++ /dev/null
  702    284   
@@ -1,12 +0,0 @@
  703         -
{
  704         -
    "credentials": {
  705         -
        "access_key_id": "AKIDEXAMPLE",
  706         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  707         -
    },
  708         -
    "expiration_in_seconds": 3600,
  709         -
    "normalize": true,
  710         -
    "region": "us-east-1",
  711         -
    "service": "service",
  712         -
    "sign_body": false,
  713         -
    "timestamp": "2015-08-30T12:36:00Z"
  714         -
}
  715    285   
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
  716    286   
deleted file mode 100644
  717    287   
index afe367b..0000000
  718         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/context.json
         288  +
++ /dev/null
  719    289   
@@ -1,12 +0,0 @@
  720         -
{
  721         -
    "credentials": {
  722         -
        "access_key_id": "AKIDEXAMPLE",
  723         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  724         -
    },
  725         -
    "expiration_in_seconds": 3600,
  726         -
    "normalize": false,
  727         -
    "region": "us-east-1",
  728         -
    "service": "service",
  729         -
    "sign_body": false,
  730         -
    "timestamp": "2015-08-30T12:36:00Z"
  731         -
}
  732    290   
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
  733    291   
deleted file mode 100644
  734    292   
index 45771c7..0000000
  735         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/context.json
         293  +
++ /dev/null
  736    294   
@@ -1,12 +0,0 @@
  737         -
{
  738         -
    "credentials": {
  739         -
        "access_key_id": "AKIDEXAMPLE",
  740         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  741         -
    },
  742         -
    "expiration_in_seconds": 3600,
  743         -
    "normalize": true,
  744         -
    "region": "us-east-1",
  745         -
    "service": "service",
  746         -
    "sign_body": false,
  747         -
    "timestamp": "2015-08-30T12:36:00Z"
  748         -
}
  749    295   
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
  750    296   
deleted file mode 100644
  751    297   
index afe367b..0000000
  752         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/context.json
         298  +
++ /dev/null
  753    299   
@@ -1,12 +0,0 @@
  754         -
{
  755         -
    "credentials": {
  756         -
        "access_key_id": "AKIDEXAMPLE",
  757         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  758         -
    },
  759         -
    "expiration_in_seconds": 3600,
  760         -
    "normalize": false,
  761         -
    "region": "us-east-1",
  762         -
    "service": "service",
  763         -
    "sign_body": false,
  764         -
    "timestamp": "2015-08-30T12:36:00Z"
  765         -
}
  766    300   
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
  767    301   
deleted file mode 100644
  768    302   
index 45771c7..0000000
  769         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/context.json
         303  +
++ /dev/null
  770    304   
@@ -1,12 +0,0 @@
  771         -
{
  772         -
    "credentials": {
  773         -
        "access_key_id": "AKIDEXAMPLE",
  774         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  775         -
    },
  776         -
    "expiration_in_seconds": 3600,
  777         -
    "normalize": true,
  778         -
    "region": "us-east-1",
  779         -
    "service": "service",
  780         -
    "sign_body": false,
  781         -
    "timestamp": "2015-08-30T12:36:00Z"
  782         -
}
  783    305   
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
  784    306   
deleted file mode 100644
  785    307   
index 45771c7..0000000
  786         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/context.json
         308  +
++ /dev/null
  787    309   
@@ -1,12 +0,0 @@
  788         -
{
  789         -
    "credentials": {
  790         -
        "access_key_id": "AKIDEXAMPLE",
  791         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  792         -
    },
  793         -
    "expiration_in_seconds": 3600,
  794         -
    "normalize": true,
  795         -
    "region": "us-east-1",
  796         -
    "service": "service",
  797         -
    "sign_body": false,
  798         -
    "timestamp": "2015-08-30T12:36:00Z"
  799         -
}
  800    310   
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
  801    311   
deleted file mode 100644
  802    312   
index 45771c7..0000000
  803         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/context.json
         313  +
++ /dev/null
  804    314   
@@ -1,12 +0,0 @@
  805         -
{
  806         -
    "credentials": {
  807         -
        "access_key_id": "AKIDEXAMPLE",
  808         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  809         -
    },
  810         -
    "expiration_in_seconds": 3600,
  811         -
    "normalize": true,
  812         -
    "region": "us-east-1",
  813         -
    "service": "service",
  814         -
    "sign_body": false,
  815         -
    "timestamp": "2015-08-30T12:36:00Z"
  816         -
}
  817    315   
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
  818    316   
deleted file mode 100644
  819    317   
index 45771c7..0000000
  820         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/context.json
         318  +
++ /dev/null
  821    319   
@@ -1,12 +0,0 @@
  822         -
{
  823         -
    "credentials": {
  824         -
        "access_key_id": "AKIDEXAMPLE",
  825         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  826         -
    },
  827         -
    "expiration_in_seconds": 3600,
  828         -
    "normalize": true,
  829         -
    "region": "us-east-1",
  830         -
    "service": "service",
  831         -
    "sign_body": false,
  832         -
    "timestamp": "2015-08-30T12:36:00Z"
  833         -
}
  834    320   
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
  835    321   
deleted file mode 100644
  836    322   
index 45771c7..0000000
  837         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/context.json
         323  +
++ /dev/null
  838    324   
@@ -1,12 +0,0 @@
  839         -
{
  840         -
    "credentials": {
  841         -
        "access_key_id": "AKIDEXAMPLE",
  842         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  843         -
    },
  844         -
    "expiration_in_seconds": 3600,
  845         -
    "normalize": true,
  846         -
    "region": "us-east-1",
  847         -
    "service": "service",
  848         -
    "sign_body": false,
  849         -
    "timestamp": "2015-08-30T12:36:00Z"
  850         -
}
  851    325   
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
  852    326   
deleted file mode 100644
  853    327   
index 47e7128..0000000
  854         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-canonical-request.txt
         328  +
++ /dev/null
  855    329   
@@ -1,9 +0,0 @@
  856         -
GET
  857         -
/
  858         -
  859         -
host:example.amazonaws.com
  860         -
x-amz-date:20150830T123600Z
  861         -
x-amz-region-set:us-east-1
  862         -
  863         -
host;x-amz-date;x-amz-region-set
  864         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  865    330   
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
  866    331   
deleted file mode 100644
  867    332   
index 95d7219..0000000
  868         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/header-string-to-sign.txt
         333  +
++ /dev/null
  869    334   
@@ -1,4 +0,0 @@
  870         -
AWS4-ECDSA-P256-SHA256
  871         -
20150830T123600Z
  872         -
20150830/service/aws4_request
  873         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  874    335   
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
  875    336   
deleted file mode 100644
  876    337   
index a34ea26..0000000
  877         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-canonical-request.txt
         338  +
++ /dev/null
  878    339   
@@ -1,7 +0,0 @@
  879         -
GET
  880         -
/
  881         -
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
  882         -
host:example.amazonaws.com
  883         -
  884         -
host
  885         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  886    340   
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
  887    341   
deleted file mode 100644
  888    342   
index 48f855c..0000000
  889         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/query-string-to-sign.txt
         343  +
++ /dev/null
  890    344   
@@ -1,4 +0,0 @@
  891         -
AWS4-ECDSA-P256-SHA256
  892         -
20150830T123600Z
  893         -
20150830/service/aws4_request
  894         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  895    345   
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
  896    346   
deleted file mode 100644
  897    347   
index 45771c7..0000000
  898         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/context.json
         348  +
++ /dev/null
  899    349   
@@ -1,12 +0,0 @@
  900         -
{
  901         -
    "credentials": {
  902         -
        "access_key_id": "AKIDEXAMPLE",
  903         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  904         -
    },
  905         -
    "expiration_in_seconds": 3600,
  906         -
    "normalize": true,
  907         -
    "region": "us-east-1",
  908         -
    "service": "service",
  909         -
    "sign_body": false,
  910         -
    "timestamp": "2015-08-30T12:36:00Z"
  911         -
}
  912    350   
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
  913    351   
deleted file mode 100644
  914    352   
index 47e7128..0000000
  915         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-canonical-request.txt
         353  +
++ /dev/null
  916    354   
@@ -1,9 +0,0 @@
  917         -
GET
  918         -
/
  919         -
  920         -
host:example.amazonaws.com
  921         -
x-amz-date:20150830T123600Z
  922         -
x-amz-region-set:us-east-1
  923         -
  924         -
host;x-amz-date;x-amz-region-set
  925         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  926    355   
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
  927    356   
deleted file mode 100644
  928    357   
index 95d7219..0000000
  929         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/header-string-to-sign.txt
         358  +
++ /dev/null
  930    359   
@@ -1,4 +0,0 @@
  931         -
AWS4-ECDSA-P256-SHA256
  932         -
20150830T123600Z
  933         -
20150830/service/aws4_request
  934         -
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
  935    360   
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
  936    361   
deleted file mode 100644
  937    362   
index a34ea26..0000000
  938         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-canonical-request.txt
         363  +
++ /dev/null
  939    364   
@@ -1,7 +0,0 @@
  940         -
GET
  941         -
/
  942         -
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
  943         -
host:example.amazonaws.com
  944         -
  945         -
host
  946         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
  947    365   
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
  948    366   
deleted file mode 100644
  949    367   
index 48f855c..0000000
  950         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/query-string-to-sign.txt
         368  +
++ /dev/null
  951    369   
@@ -1,4 +0,0 @@
  952         -
AWS4-ECDSA-P256-SHA256
  953         -
20150830T123600Z
  954         -
20150830/service/aws4_request
  955         -
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
  956    370   
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
  957    371   
deleted file mode 100644
  958    372   
index 45771c7..0000000
  959         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/context.json
         373  +
++ /dev/null
  960    374   
@@ -1,12 +0,0 @@
  961         -
{
  962         -
    "credentials": {
  963         -
        "access_key_id": "AKIDEXAMPLE",
  964         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  965         -
    },
  966         -
    "expiration_in_seconds": 3600,
  967         -
    "normalize": true,
  968         -
    "region": "us-east-1",
  969         -
    "service": "service",
  970         -
    "sign_body": false,
  971         -
    "timestamp": "2015-08-30T12:36:00Z"
  972         -
}
  973    375   
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
  974    376   
deleted file mode 100644
  975    377   
index 45771c7..0000000
  976         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/context.json
         378  +
++ /dev/null
  977    379   
@@ -1,12 +0,0 @@
  978         -
{
  979         -
    "credentials": {
  980         -
        "access_key_id": "AKIDEXAMPLE",
  981         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  982         -
    },
  983         -
    "expiration_in_seconds": 3600,
  984         -
    "normalize": true,
  985         -
    "region": "us-east-1",
  986         -
    "service": "service",
  987         -
    "sign_body": false,
  988         -
    "timestamp": "2015-08-30T12:36:00Z"
  989         -
}
  990    380   
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
  991    381   
deleted file mode 100644
  992    382   
index 45771c7..0000000
  993         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/context.json
         383  +
++ /dev/null
  994    384   
@@ -1,12 +0,0 @@
  995         -
{
  996         -
    "credentials": {
  997         -
        "access_key_id": "AKIDEXAMPLE",
  998         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
  999         -
    },
 1000         -
    "expiration_in_seconds": 3600,
 1001         -
    "normalize": true,
 1002         -
    "region": "us-east-1",
 1003         -
    "service": "service",
 1004         -
    "sign_body": false,
 1005         -
    "timestamp": "2015-08-30T12:36:00Z"
 1006         -
}
 1007    385   
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
 1008    386   
deleted file mode 100644
 1009    387   
index 45771c7..0000000
 1010         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/context.json
         388  +
++ /dev/null
 1011    389   
@@ -1,12 +0,0 @@
 1012         -
{
 1013         -
    "credentials": {
 1014         -
        "access_key_id": "AKIDEXAMPLE",
 1015         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1016         -
    },
 1017         -
    "expiration_in_seconds": 3600,
 1018         -
    "normalize": true,
 1019         -
    "region": "us-east-1",
 1020         -
    "service": "service",
 1021         -
    "sign_body": false,
 1022         -
    "timestamp": "2015-08-30T12:36:00Z"
 1023         -
}
 1024    390   
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
 1025    391   
deleted file mode 100644
 1026    392   
index 45771c7..0000000
 1027         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/context.json
         393  +
++ /dev/null
 1028    394   
@@ -1,12 +0,0 @@
 1029         -
{
 1030         -
    "credentials": {
 1031         -
        "access_key_id": "AKIDEXAMPLE",
 1032         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1033         -
    },
 1034         -
    "expiration_in_seconds": 3600,
 1035         -
    "normalize": true,
 1036         -
    "region": "us-east-1",
 1037         -
    "service": "service",
 1038         -
    "sign_body": false,
 1039         -
    "timestamp": "2015-08-30T12:36:00Z"
 1040         -
}
 1041    395   
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
 1042    396   
deleted file mode 100644
 1043    397   
index 45771c7..0000000
 1044         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/context.json
         398  +
++ /dev/null
 1045    399   
@@ -1,12 +0,0 @@
 1046         -
{
 1047         -
    "credentials": {
 1048         -
        "access_key_id": "AKIDEXAMPLE",
 1049         -
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
 1050         -
    },
 1051         -
    "expiration_in_seconds": 3600,
 1052         -
    "normalize": true,
 1053         -
    "region": "us-east-1",
 1054         -
    "service": "service",
 1055         -
    "sign_body": false,
 1056         -
    "timestamp": "2015-08-30T12:36:00Z"
 1057         -
}
 1058    400   
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
 1059    401   
deleted file mode 100644
 1060    402   
index b6fdecf..0000000
 1061         -
-- 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
         403  +
++ /dev/null
 1062    404   
@@ -1,4 +0,0 @@
 1063         -
AWS4-ECDSA-P256-SHA256
 1064         -
20150830T123600Z
 1065         -
20150830/service/aws4_request
 1066         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1067    405   
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
 1068    406   
deleted file mode 100644
 1069    407   
index a300bea..0000000
 1070         -
-- 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
         408  +
++ /dev/null
 1071    409   
@@ -1,4 +0,0 @@
 1072         -
AWS4-ECDSA-P256-SHA256
 1073         -
20150830T123600Z
 1074         -
20150830/service/aws4_request
 1075         -
ab426c74406d082ad98929df8969624e6ed5cb7f4e8501fbbe7d8c20e9c3b417
 1076    410   
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
 1077    411   
deleted file mode 100644
 1078    412   
index b6fdecf..0000000
 1079         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-string-to-sign.txt
         413  +
++ /dev/null
 1080    414   
@@ -1,4 +0,0 @@
 1081         -
AWS4-ECDSA-P256-SHA256
 1082         -
20150830T123600Z
 1083         -
20150830/service/aws4_request
 1084         -
03c5c4387e7c1bd3a606d1b19301d277e51d7621ced07c8c9ff2aeb151c0f4c6
 1085    415   
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
 1086    416   
new file mode 100644
 1087    417   
index 0000000..a674243
 1088         -
-- /dev/null
         418  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/README.md
 1089    419   
@@ -0,0 +1,7 @@
         420  +
# AWS SigV4 and SigV4A Signing Test Suite
         421  +
         422  +
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).
         423  +
         424  +
We added the following changes:
         425  +
         426  +
* 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
 1090    427   
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
 1091    428   
similarity index 100%
 1092    429   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.creq
 1093    430   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-canonical-request.txt
 1094    431   
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
 1095    432   
similarity index 100%
 1096    433   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.sreq
 1097    434   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/header-signed-request.txt
 1098    435   
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
 1099    436   
similarity index 100%
 1100    437   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-encode-path/double-encode-path.req
 1101    438   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-encode-path/request.txt
 1102    439   
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
 1103    440   
similarity index 100%
 1104    441   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.creq
 1105    442   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-canonical-request.txt
 1106    443   
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
 1107    444   
similarity index 100%
 1108    445   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sreq
 1109    446   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-signed-request.txt
 1110    447   
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
 1111    448   
similarity index 100%
 1112    449   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.sts
 1113    450   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/header-string-to-sign.txt
 1114    451   
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
 1115    452   
similarity index 100%
 1116    453   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/double-url-encode/double-url-encode.req
 1117    454   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/double-url-encode/request.txt
 1118    455   
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
 1119    456   
similarity index 99%
 1120    457   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/context.json
 1121    458   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/context.json
 1122    459   
index 45771c7..0468d80 100644
 1123    460   
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
 1124    461   
similarity index 100%
 1125    462   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.creq
 1126    463   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-canonical-request.txt
 1127    464   
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
 1128    465   
new file mode 100644
 1129    466   
index 0000000..7fc5d7a
 1130         -
-- /dev/null
         467  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signature.txt
 1131    468   
@@ -0,0 +1 @@
         469  +
c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
              \
 No newline at end of file
 1132    470   
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
 1133    471   
new file mode 100644
 1134    472   
index 0000000..36a1205
 1135         -
-- /dev/null
         473  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-signed-request.txt
 1136    474   
@@ -0,0 +1,8 @@
         475  +
GET / HTTP/1.1
         476  +
Host:example.amazonaws.com
         477  +
My-Header1:value2
         478  +
My-Header1:value2
         479  +
My-Header1:value1
         480  +
X-Amz-Date:20150830T123600Z
         481  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c9d5ea9f3f72853aea855b47ea873832890dbdd183b4468f858259531a5138ea
         482  +
 1137    483   
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
 1138    484   
similarity index 100%
 1139    485   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.sts
 1140    486   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/header-string-to-sign.txt
 1141    487   
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
 1142    488   
new file mode 100644
 1143    489   
index 0000000..f9f4190
 1144         -
-- /dev/null
         490  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-canonical-request.txt
 1145    491   
@@ -0,0 +1,8 @@
         492  +
GET
         493  +
/
         494  +
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
         495  +
host:example.amazonaws.com
         496  +
my-header1:value2,value2,value1
         497  +
         498  +
host;my-header1
         499  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1146    500   
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
 1147    501   
new file mode 100644
 1148    502   
index 0000000..5d0d87f
 1149         -
-- /dev/null
         503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signature.txt
 1150    504   
@@ -0,0 +1 @@
         505  +
3349ee0b81b4b589da0ff28a395c3591e04de515651dd74f298fa992d1507a97
              \
 No newline at end of file
 1151    506   
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
 1152    507   
new file mode 100644
 1153    508   
index 0000000..c1dfcf4
 1154         -
-- /dev/null
         509  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-signed-request.txt
 1155    510   
@@ -0,0 +1,6 @@
         511  +
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
         512  +
Host:example.amazonaws.com
         513  +
My-Header1:value2
         514  +
My-Header1:value2
         515  +
My-Header1:value1
         516  +
 1156    517   
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
 1157    518   
similarity index 53%
 1158    519   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
 1159    520   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1160    521   
index 0a3350a..077c1bb 100644
 1161         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.sts
         522  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/query-string-to-sign.txt
 1162    523   
@@ -1,4 +1,4 @@
 1163    524   
AWS4-HMAC-SHA256
 1164    525   
20150830T123600Z
 1165    526   
20150830/us-east-1/service/aws4_request
 1166         -
b7b6cbfd8a0430b78891e986784da2630c8a135a8595cec25b26ea94f926ee55
              \
 No newline at end of file
         527  +
fe8b58fb44117d598520befc07c144a5699c661a8db78f9ce4caee1655dec813
              \
 No newline at end of file
 1167    528   
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
 1168    529   
similarity index 100%
 1169    530   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/request.txt
 1170    531   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-key-duplicate/request.txt
 1171    532   
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
 1172    533   
similarity index 99%
 1173    534   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/context.json
 1174    535   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/context.json
 1175    536   
index 45771c7..0468d80 100644
 1176    537   
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
 1177    538   
similarity index 82%
 1178    539   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
 1179    540   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1180    541   
index 721a39f..8cb5476 100644
 1181         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.creq
         542  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-canonical-request.txt
 1182    543   
@@ -1,9 +1,9 @@
 1183    544   
GET
 1184    545   
/
 1185    546   
 1186    547   
host:example.amazonaws.com
 1187         -
my-header1:value1,value2,value3
         548  +
my-header1:value1 value2 value3
 1188    549   
x-amz-date:20150830T123600Z
 1189    550   
 1190    551   
host;my-header1;x-amz-date
 1191    552   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1192    553   
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
 1193    554   
new file mode 100644
 1194    555   
index 0000000..e6ff7a9
 1195         -
-- /dev/null
         556  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signature.txt
 1196    557   
@@ -0,0 +1 @@
         558  +
cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
              \
 No newline at end of file
 1197    559   
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
 1198    560   
new file mode 100644
 1199    561   
index 0000000..b5ef6a0
 1200         -
-- /dev/null
         562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-signed-request.txt
 1201    563   
@@ -0,0 +1,8 @@
         564  +
GET / HTTP/1.1
         565  +
Host:example.amazonaws.com
         566  +
My-Header1:value1
         567  +
  value2
         568  +
     value3
         569  +
X-Amz-Date:20150830T123600Z
         570  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cfd34249e4b1c8d6b91ef74165d41a32e5fab3306300901bb65a51a73575eefd
         571  +
 1202    572   
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
 1203    573   
similarity index 53%
 1204    574   
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
 1205    575   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1206    576   
index fd43a41..97c7430 100644
 1207         -
-- 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
         577  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/header-string-to-sign.txt
 1208    578   
@@ -1,4 +1,4 @@
 1209    579   
AWS4-HMAC-SHA256
 1210    580   
20150830T123600Z
 1211    581   
20150830/us-east-1/service/aws4_request
 1212         -
704b4cef673542d84cdff252633f065e8daeba5f168b77116f8b1bcaf3d38f89
              \
 No newline at end of file
         582  +
e99419459a677bc11de234014be3c4e72c1ea5b454ceb58b613061f5d7a162e8
              \
 No newline at end of file
 1213    583   
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
 1214    584   
new file mode 100644
 1215    585   
index 0000000..aac46de
 1216         -
-- /dev/null
         586  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-canonical-request.txt
 1217    587   
@@ -0,0 +1,8 @@
         588  +
GET
         589  +
/
         590  +
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
         591  +
host:example.amazonaws.com
         592  +
my-header1:value1 value2 value3
         593  +
         594  +
host;my-header1
         595  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1218    596   
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
 1219    597   
new file mode 100644
 1220    598   
index 0000000..205732d
 1221         -
-- /dev/null
         599  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signature.txt
 1222    600   
@@ -0,0 +1 @@
         601  +
e6f5def831211aca02987a44b96826706278c7bc078112ae0263659c5b2f2d56
              \
 No newline at end of file
 1223    602   
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
 1224    603   
new file mode 100644
 1225    604   
index 0000000..a891b87
 1226         -
-- /dev/null
         605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-signed-request.txt
 1227    606   
@@ -0,0 +1,6 @@
         607  +
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
         608  +
Host:example.amazonaws.com
         609  +
My-Header1:value1
         610  +
  value2
         611  +
     value3
         612  +
 1228    613   
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
 1229    614   
similarity index 53%
 1230    615   
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
 1231    616   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1232    617   
index 90e66b8..ec3fe45 100644
 1233         -
-- 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
         618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/query-string-to-sign.txt
 1234    619   
@@ -1,4 +1,4 @@
 1235    620   
AWS4-HMAC-SHA256
 1236    621   
20150830T123600Z
 1237    622   
20150830/us-east-1/service/aws4_request
 1238         -
c968629d70850097a2d8781c9bf7edcb988b04cac14cca9be4acc3595f884606
              \
 No newline at end of file
         623  +
0e73c10e35324b4d215da4bb70be61d13a3d30d569be4ed6e8fd8948965341ca
              \
 No newline at end of file
 1239    624   
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
 1240    625   
similarity index 75%
 1241    626   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
 1242    627   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1243    628   
index 7caa6ac..b5026cd 100644
 1244         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-multiline/get-header-value-multiline.req
         629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-multiline/request.txt
 1245    630   
@@ -1,6 +1,5 @@
 1246    631   
GET / HTTP/1.1
 1247    632   
Host:example.amazonaws.com
 1248    633   
My-Header1:value1
 1249    634   
  value2
 1250    635   
     value3
 1251         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 1252    636   
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
 1253    637   
similarity index 99%
 1254    638   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/context.json
 1255    639   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/context.json
 1256    640   
index 45771c7..0468d80 100644
 1257    641   
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
 1258    642   
similarity index 100%
 1259    643   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.creq
 1260    644   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-canonical-request.txt
 1261    645   
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
 1262    646   
new file mode 100644
 1263    647   
index 0000000..8ef0494
 1264         -
-- /dev/null
         648  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signature.txt
 1265    649   
@@ -0,0 +1 @@
         650  +
08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
              \
 No newline at end of file
 1266    651   
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
 1267    652   
new file mode 100644
 1268    653   
index 0000000..b786dc9
 1269         -
-- /dev/null
         654  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-signed-request.txt
 1270    655   
@@ -0,0 +1,9 @@
         656  +
GET / HTTP/1.1
         657  +
Host:example.amazonaws.com
         658  +
My-Header1:value4
         659  +
My-Header1:value1
         660  +
My-Header1:value3
         661  +
My-Header1:value2
         662  +
X-Amz-Date:20150830T123600Z
         663  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=08c7e5a9acfcfeb3ab6b2185e75ce8b1deb5e634ec47601a50643f830c755c01
         664  +
 1271    665   
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
 1272    666   
similarity index 100%
 1273    667   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.sts
 1274    668   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/header-string-to-sign.txt
 1275    669   
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
 1276    670   
new file mode 100644
 1277    671   
index 0000000..a211cc5
 1278         -
-- /dev/null
         672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-canonical-request.txt
 1279    673   
@@ -0,0 +1,8 @@
         674  +
GET
         675  +
/
         676  +
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
         677  +
host:example.amazonaws.com
         678  +
my-header1:value4,value1,value3,value2
         679  +
         680  +
host;my-header1
         681  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1280    682   
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
 1281    683   
new file mode 100644
 1282    684   
index 0000000..417b0fa
 1283         -
-- /dev/null
         685  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signature.txt
 1284    686   
@@ -0,0 +1 @@
         687  +
313720e71ca6202fdcfa9b20f88de01a4eb0638a83c833b1c184359a4eda864e
              \
 No newline at end of file
 1285    688   
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
 1286    689   
new file mode 100644
 1287    690   
index 0000000..b615e5d
 1288         -
-- /dev/null
         691  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-signed-request.txt
 1289    692   
@@ -0,0 +1,7 @@
         693  +
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
         694  +
Host:example.amazonaws.com
         695  +
My-Header1:value4
         696  +
My-Header1:value1
         697  +
My-Header1:value3
         698  +
My-Header1:value2
         699  +
 1290    700   
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
 1291    701   
similarity index 53%
 1292    702   
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
 1293    703   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1294    704   
index f7e615e..dcaaa1b 100644
 1295         -
-- 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
         705  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/query-string-to-sign.txt
 1296    706   
@@ -1,4 +1,4 @@
 1297    707   
AWS4-HMAC-SHA256
 1298    708   
20150830T123600Z
 1299    709   
20150830/us-east-1/service/aws4_request
 1300         -
5a4a15e664c6705d500b13808c1c0e2e83f6a4748f1110a980051440f5a0d9f9
              \
 No newline at end of file
         710  +
f4d3f13084ba7664111670ce26458291d3e0c620acd9384f8cd6b60d8e83423e
              \
 No newline at end of file
 1301    711   
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
 1302    712   
similarity index 100%
 1303    713   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/request.txt
 1304    714   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-order/request.txt
 1305    715   
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
 1306    716   
similarity index 99%
 1307    717   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/context.json
 1308    718   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/context.json
 1309    719   
index 45771c7..0468d80 100644
 1310    720   
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
 1311    721   
similarity index 100%
 1312    722   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.creq
 1313    723   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-canonical-request.txt
 1314    724   
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
 1315    725   
new file mode 100644
 1316    726   
index 0000000..36081a9
 1317         -
-- /dev/null
         727  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signature.txt
 1318    728   
@@ -0,0 +1 @@
         729  +
acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
              \
 No newline at end of file
 1319    730   
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
 1320    731   
new file mode 100644
 1321    732   
index 0000000..6331d16
 1322         -
-- /dev/null
         733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-signed-request.txt
 1323    734   
@@ -0,0 +1,7 @@
         735  +
GET / HTTP/1.1
         736  +
Host:example.amazonaws.com
         737  +
My-Header1: value1
         738  +
My-Header2: "a   b   c"
         739  +
X-Amz-Date:20150830T123600Z
         740  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;my-header2;x-amz-date, Signature=acc3ed3afb60bb290fc8d2dd0098b9911fcaa05412b367055dee359757a9c736
         741  +
 1324    742   
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
 1325    743   
similarity index 100%
 1326    744   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.sts
 1327    745   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/header-string-to-sign.txt
 1328    746   
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
 1329    747   
new file mode 100644
 1330    748   
index 0000000..125c1f9
 1331         -
-- /dev/null
         749  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-canonical-request.txt
 1332    750   
@@ -0,0 +1,9 @@
         751  +
GET
         752  +
/
         753  +
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
         754  +
host:example.amazonaws.com
         755  +
my-header1:value1
         756  +
my-header2:"a b c"
         757  +
         758  +
host;my-header1;my-header2
         759  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1333    760   
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
 1334    761   
new file mode 100644
 1335    762   
index 0000000..17007a8
 1336         -
-- /dev/null
         763  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signature.txt
 1337    764   
@@ -0,0 +1 @@
         765  +
e7bb0fd515e125e1aec2ecc4c0c17484fb06f6846b927c35e46005dd3df3acd4
              \
 No newline at end of file
 1338    766   
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
 1339    767   
new file mode 100644
 1340    768   
index 0000000..e519fd9
 1341         -
-- /dev/null
         769  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-signed-request.txt
 1342    770   
@@ -0,0 +1,5 @@
         771  +
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
         772  +
Host:example.amazonaws.com
         773  +
My-Header1: value1
         774  +
My-Header2: "a   b   c"
         775  +
 1343    776   
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
 1344    777   
new file mode 100644
 1345    778   
index 0000000..6b4b781
 1346         -
-- /dev/null
         779  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/query-string-to-sign.txt
 1347    780   
@@ -0,0 +1,4 @@
         781  +
AWS4-HMAC-SHA256
         782  +
20150830T123600Z
         783  +
20150830/us-east-1/service/aws4_request
         784  +
84c9e353b6161b689210977f93b93e6a7182f9ecb2ceae8af8c3d86b080a88ae
              \
 No newline at end of file
 1348    785   
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
 1349    786   
similarity index 100%
 1350    787   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/request.txt
 1351    788   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-header-value-trim/request.txt
 1352    789   
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
 1353    790   
new file mode 100644
 1354    791   
index 0000000..0468d80
 1355         -
-- /dev/null
         792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/context.json
 1356    793   
@@ -0,0 +1,12 @@
         794  +
{
         795  +
    "credentials": {
         796  +
        "access_key_id": "AKIDEXAMPLE",
         797  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
         798  +
    },
         799  +
    "expiration_in_seconds": 3600,
         800  +
    "normalize": true,
         801  +
    "region": "us-east-1",
         802  +
    "service": "service",
         803  +
    "sign_body": false,
         804  +
    "timestamp": "2015-08-30T12:36:00Z"
         805  +
}
              \
 No newline at end of file
 1357    806   
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
 1358    807   
similarity index 100%
 1359    808   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.creq
 1360    809   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-canonical-request.txt
 1361    810   
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
 1362    811   
new file mode 100644
 1363    812   
index 0000000..87f295f
 1364         -
-- /dev/null
         813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signature.txt
 1365    814   
@@ -0,0 +1 @@
         815  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1366    816   
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
 1367    817   
new file mode 100644
 1368    818   
index 0000000..0de8327
 1369         -
-- /dev/null
         819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-signed-request.txt
 1370    820   
@@ -0,0 +1,5 @@
         821  +
GET /example/.. HTTP/1.1
         822  +
Host:example.amazonaws.com
         823  +
X-Amz-Date:20150830T123600Z
         824  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         825  +
 1371    826   
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
 1372    827   
similarity index 100%
 1373    828   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.sts
 1374    829   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/header-string-to-sign.txt
 1375    830   
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
 1376    831   
new file mode 100644
 1377    832   
index 0000000..fb2420d
 1378         -
-- /dev/null
         833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-canonical-request.txt
 1379    834   
@@ -0,0 +1,7 @@
         835  +
GET
         836  +
/
         837  +
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
         838  +
host:example.amazonaws.com
         839  +
         840  +
host
         841  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1380    842   
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
 1381    843   
new file mode 100644
 1382    844   
index 0000000..da5c905
 1383         -
-- /dev/null
         845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signature.txt
 1384    846   
@@ -0,0 +1 @@
         847  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1385    848   
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
 1386    849   
new file mode 100644
 1387    850   
index 0000000..4329c98
 1388         -
-- /dev/null
         851  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-signed-request.txt
 1389    852   
@@ -0,0 +1,3 @@
         853  +
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
         854  +
Host:example.amazonaws.com
         855  +
 1390    856   
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
 1391    857   
new file mode 100644
 1392    858   
index 0000000..d837e67
 1393         -
-- /dev/null
         859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/query-string-to-sign.txt
 1394    860   
@@ -0,0 +1,4 @@
         861  +
AWS4-HMAC-SHA256
         862  +
20150830T123600Z
         863  +
20150830/us-east-1/service/aws4_request
         864  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1395    865   
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
 1396    866   
similarity index 100%
 1397    867   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/request.txt
 1398    868   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-normalized/request.txt
 1399    869   
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
 1400    870   
new file mode 100644
 1401    871   
index 0000000..0468d80
 1402         -
-- /dev/null
         872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/context.json
 1403    873   
@@ -0,0 +1,12 @@
         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  +
}
              \
 No newline at end of file
 1404    886   
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
 1405    887   
similarity index 100%
 1406    888   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.creq
 1407    889   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-canonical-request.txt
 1408    890   
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
 1409    891   
new file mode 100644
 1410    892   
index 0000000..87f295f
 1411         -
-- /dev/null
         893  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signature.txt
 1412    894   
@@ -0,0 +1 @@
         895  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1413    896   
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
 1414    897   
new file mode 100644
 1415    898   
index 0000000..f9b3815
 1416         -
-- /dev/null
         899  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-signed-request.txt
 1417    900   
@@ -0,0 +1,5 @@
         901  +
GET /example1/example2/../.. HTTP/1.1
         902  +
Host:example.amazonaws.com
         903  +
X-Amz-Date:20150830T123600Z
         904  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
         905  +
 1418    906   
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
 1419    907   
similarity index 100%
 1420    908   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.sts
 1421    909   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/header-string-to-sign.txt
 1422    910   
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
 1423    911   
new file mode 100644
 1424    912   
index 0000000..fb2420d
 1425         -
-- /dev/null
         913  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-canonical-request.txt
 1426    914   
@@ -0,0 +1,7 @@
         915  +
GET
         916  +
/
         917  +
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
         918  +
host:example.amazonaws.com
         919  +
         920  +
host
         921  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1427    922   
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
 1428    923   
new file mode 100644
 1429    924   
index 0000000..da5c905
 1430         -
-- /dev/null
         925  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signature.txt
 1431    926   
@@ -0,0 +1 @@
         927  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1432    928   
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
 1433    929   
new file mode 100644
 1434    930   
index 0000000..b2988b7
 1435         -
-- /dev/null
         931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-signed-request.txt
 1436    932   
@@ -0,0 +1,3 @@
         933  +
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
         934  +
Host:example.amazonaws.com
         935  +
 1437    936   
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
 1438    937   
new file mode 100644
 1439    938   
index 0000000..d837e67
 1440         -
-- /dev/null
         939  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/query-string-to-sign.txt
 1441    940   
@@ -0,0 +1,4 @@
         941  +
AWS4-HMAC-SHA256
         942  +
20150830T123600Z
         943  +
20150830/us-east-1/service/aws4_request
         944  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1442    945   
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
 1443    946   
similarity index 100%
 1444    947   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/request.txt
 1445    948   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-normalized/request.txt
 1446    949   
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
 1447    950   
similarity index 99%
 1448    951   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/context.json
 1449    952   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/context.json
 1450    953   
index afe367b..7bee5c7 100644
 1451    954   
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
 1452    955   
similarity index 82%
 1453    956   
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
 1454    957   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1455    958   
index 36c3cdf..6919c44 100644
 1456         -
-- 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
         959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-canonical-request.txt
 1457    960   
@@ -1,8 +1,8 @@
 1458    961   
GET
 1459         -
/
 1460         -
Param1=Value1&Param1=value2
         962  +
/example1/example2/../..
         963  +
 1461    964   
host:example.amazonaws.com
 1462    965   
x-amz-date:20150830T123600Z
 1463    966   
 1464    967   
host;x-amz-date
 1465    968   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1466    969   
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
 1467    970   
new file mode 100644
 1468    971   
index 0000000..4092d83
 1469         -
-- /dev/null
         972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signature.txt
 1470    973   
@@ -0,0 +1 @@
         974  +
dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
              \
 No newline at end of file
 1471    975   
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
 1472    976   
new file mode 100644
 1473    977   
index 0000000..e731b35
 1474         -
-- /dev/null
         978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-signed-request.txt
 1475    979   
@@ -0,0 +1,5 @@
         980  +
GET /example1/example2/../.. HTTP/1.1
         981  +
Host:example.amazonaws.com
         982  +
X-Amz-Date:20150830T123600Z
         983  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=dc33e0856fd4baca4d7aa2146c38958283844764f38c74252a333df5e613003b
         984  +
 1476    985   
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
 1477    986   
new file mode 100644
 1478    987   
index 0000000..4f45752
 1479         -
-- /dev/null
         988  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/header-string-to-sign.txt
 1480    989   
@@ -0,0 +1,4 @@
         990  +
AWS4-HMAC-SHA256
         991  +
20150830T123600Z
         992  +
20150830/us-east-1/service/aws4_request
         993  +
76115030c0f3ff06c20fdff5ceb6d5e0b835a1743e00b94fea7c7f381269437b
              \
 No newline at end of file
 1481    994   
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
 1482    995   
new file mode 100644
 1483    996   
index 0000000..e1fb07d
 1484         -
-- /dev/null
         997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-canonical-request.txt
 1485    998   
@@ -0,0 +1,7 @@
         999  +
GET
        1000  +
/example1/example2/../..
        1001  +
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
        1002  +
host:example.amazonaws.com
        1003  +
        1004  +
host
        1005  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1486   1006   
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
 1487   1007   
new file mode 100644
 1488   1008   
index 0000000..8ac31d7
 1489         -
-- /dev/null
        1009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signature.txt
 1490   1010   
@@ -0,0 +1 @@
        1011  +
b45db0bfd1cf15003493b733e33aa208dd981bd0e63037a6ed953f71d2118a16
              \
 No newline at end of file
 1491   1012   
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
 1492   1013   
new file mode 100644
 1493   1014   
index 0000000..ac074f9
 1494         -
-- /dev/null
        1015  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-signed-request.txt
 1495   1016   
@@ -0,0 +1,3 @@
        1017  +
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
        1018  +
Host:example.amazonaws.com
        1019  +
 1496   1020   
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
 1497   1021   
new file mode 100644
 1498   1022   
index 0000000..8dcb6ff
 1499         -
-- /dev/null
        1023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/query-string-to-sign.txt
 1500   1024   
@@ -0,0 +1,4 @@
        1025  +
AWS4-HMAC-SHA256
        1026  +
20150830T123600Z
        1027  +
20150830/us-east-1/service/aws4_request
        1028  +
13b7758115ec070fe36a7ae9d754154ad73f6ee9a5eac022494857d0e7effc18
              \
 No newline at end of file
 1501   1029   
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
 1502   1030   
similarity index 100%
 1503   1031   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/request.txt
 1504   1032   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-relative-unnormalized/request.txt
 1505   1033   
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
 1506   1034   
similarity index 99%
 1507   1035   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/context.json
 1508   1036   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/context.json
 1509   1037   
index afe367b..7bee5c7 100644
 1510   1038   
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
 1511   1039   
similarity index 82%
 1512   1040   
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
 1513   1041   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1514   1042   
index 26898eb..f640bc2 100644
 1515         -
-- 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
        1043  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-canonical-request.txt
 1516   1044   
@@ -1,8 +1,8 @@
 1517   1045   
GET
 1518         -
/
 1519         -
Param1=value1&Param1=value2
        1046  +
/example/..
        1047  +
 1520   1048   
host:example.amazonaws.com
 1521   1049   
x-amz-date:20150830T123600Z
 1522   1050   
 1523   1051   
host;x-amz-date
 1524   1052   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1525   1053   
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
 1526   1054   
new file mode 100644
 1527   1055   
index 0000000..d957303
 1528         -
-- /dev/null
        1056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signature.txt
 1529   1057   
@@ -0,0 +1 @@
        1058  +
eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
              \
 No newline at end of file
 1530   1059   
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
 1531   1060   
new file mode 100644
 1532   1061   
index 0000000..4f42ffc
 1533         -
-- /dev/null
        1062  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-signed-request.txt
 1534   1063   
@@ -0,0 +1,5 @@
        1064  +
GET /example/.. HTTP/1.1
        1065  +
Host:example.amazonaws.com
        1066  +
X-Amz-Date:20150830T123600Z
        1067  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=eca7ead57bb5aa5c8e28007acd4ff04e1ff9a0ff3b237ec1554a184887ff9282
        1068  +
 1535   1069   
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
 1536   1070   
new file mode 100644
 1537   1071   
index 0000000..ca54bda
 1538         -
-- /dev/null
        1072  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/header-string-to-sign.txt
 1539   1073   
@@ -0,0 +1,4 @@
        1074  +
AWS4-HMAC-SHA256
        1075  +
20150830T123600Z
        1076  +
20150830/us-east-1/service/aws4_request
        1077  +
0511f456aa502b456d135fcb9d749374a55228f9dbeedda1eacf659e05b0615b
              \
 No newline at end of file
 1540   1078   
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
 1541   1079   
new file mode 100644
 1542   1080   
index 0000000..dc80036
 1543         -
-- /dev/null
        1081  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-canonical-request.txt
 1544   1082   
@@ -0,0 +1,7 @@
        1083  +
GET
        1084  +
/example/..
        1085  +
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
        1086  +
host:example.amazonaws.com
        1087  +
        1088  +
host
        1089  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1545   1090   
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
 1546   1091   
new file mode 100644
 1547   1092   
index 0000000..dfa0437
 1548         -
-- /dev/null
        1093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signature.txt
 1549   1094   
@@ -0,0 +1 @@
        1095  +
cbcb213b928a077e43275df47b500f1dfaa864ab3f5a18f6b95f4ff0938167ee
              \
 No newline at end of file
 1550   1096   
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
 1551   1097   
new file mode 100644
 1552   1098   
index 0000000..98367b1
 1553         -
-- /dev/null
        1099  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-signed-request.txt
 1554   1100   
@@ -0,0 +1,3 @@
        1101  +
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
        1102  +
Host:example.amazonaws.com
        1103  +
 1555   1104   
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
 1556   1105   
new file mode 100644
 1557   1106   
index 0000000..f65dd66
 1558         -
-- /dev/null
        1107  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/query-string-to-sign.txt
 1559   1108   
@@ -0,0 +1,4 @@
        1109  +
AWS4-HMAC-SHA256
        1110  +
20150830T123600Z
        1111  +
20150830/us-east-1/service/aws4_request
        1112  +
6e02e2dba21d6f269bae339b86ff27a4b7bbc9d88c482abccbfbf8a49d602482
              \
 No newline at end of file
 1560   1113   
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
 1561   1114   
similarity index 100%
 1562   1115   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/request.txt
 1563   1116   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-relative-unnormalized/request.txt
 1564   1117   
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
 1565   1118   
new file mode 100644
 1566   1119   
index 0000000..0468d80
 1567         -
-- /dev/null
        1120  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/context.json
 1568   1121   
@@ -0,0 +1,12 @@
        1122  +
{
        1123  +
    "credentials": {
        1124  +
        "access_key_id": "AKIDEXAMPLE",
        1125  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1126  +
    },
        1127  +
    "expiration_in_seconds": 3600,
        1128  +
    "normalize": true,
        1129  +
    "region": "us-east-1",
        1130  +
    "service": "service",
        1131  +
    "sign_body": false,
        1132  +
    "timestamp": "2015-08-30T12:36:00Z"
        1133  +
}
              \
 No newline at end of file
 1569   1134   
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
 1570   1135   
similarity index 100%
 1571   1136   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.creq
 1572   1137   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-canonical-request.txt
 1573   1138   
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
 1574   1139   
new file mode 100644
 1575   1140   
index 0000000..87f295f
 1576         -
-- /dev/null
        1141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signature.txt
 1577   1142   
@@ -0,0 +1 @@
        1143  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1578   1144   
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
 1579   1145   
new file mode 100644
 1580   1146   
index 0000000..99c8eeb
 1581         -
-- /dev/null
        1147  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/header-signed-request.txt
 1582   1148   
@@ -0,0 +1,5 @@
        1149  +
GET /./ HTTP/1.1
        1150  +
Host:example.amazonaws.com
        1151  +
X-Amz-Date:20150830T123600Z
        1152  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1153  +
 1583   1154   
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
 1584   1155   
similarity index 100%
 1585   1156   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.sts
 1586   1157   
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
 1587   1158   
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
 1588   1159   
new file mode 100644
 1589   1160   
index 0000000..fb2420d
 1590         -
-- /dev/null
        1161  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-canonical-request.txt
 1591   1162   
@@ -0,0 +1,7 @@
        1163  +
GET
        1164  +
/
        1165  +
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
        1166  +
host:example.amazonaws.com
        1167  +
        1168  +
host
        1169  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1592   1170   
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
 1593   1171   
new file mode 100644
 1594   1172   
index 0000000..da5c905
 1595         -
-- /dev/null
        1173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signature.txt
 1596   1174   
@@ -0,0 +1 @@
        1175  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1597   1176   
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
 1598   1177   
new file mode 100644
 1599   1178   
index 0000000..2e47f69
 1600         -
-- /dev/null
        1179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-signed-request.txt
 1601   1180   
@@ -0,0 +1,3 @@
        1181  +
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
        1182  +
Host:example.amazonaws.com
        1183  +
 1602   1184   
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
 1603   1185   
new file mode 100644
 1604   1186   
index 0000000..d837e67
 1605         -
-- /dev/null
        1187  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/query-string-to-sign.txt
 1606   1188   
@@ -0,0 +1,4 @@
        1189  +
AWS4-HMAC-SHA256
        1190  +
20150830T123600Z
        1191  +
20150830/us-east-1/service/aws4_request
        1192  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1607   1193   
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
 1608   1194   
similarity index 100%
 1609   1195   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/request.txt
 1610   1196   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-normalized/request.txt
 1611   1197   
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
 1612   1198   
similarity index 99%
 1613   1199   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/context.json
 1614   1200   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/context.json
 1615   1201   
index afe367b..7bee5c7 100644
 1616   1202   
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
 1617   1203   
new file mode 100644
 1618   1204   
index 0000000..5159048
 1619         -
-- /dev/null
        1205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 1620   1206   
@@ -0,0 +1,8 @@
        1207  +
GET
        1208  +
/./
        1209  +
        1210  +
host:example.amazonaws.com
        1211  +
x-amz-date:20150830T123600Z
        1212  +
        1213  +
host;x-amz-date
        1214  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1621   1215   
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
 1622   1216   
new file mode 100644
 1623   1217   
index 0000000..b49ff0e
 1624         -
-- /dev/null
        1218  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signature.txt
 1625   1219   
@@ -0,0 +1 @@
        1220  +
68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
              \
 No newline at end of file
 1626   1221   
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
 1627   1222   
new file mode 100644
 1628   1223   
index 0000000..aeb1ffa
 1629         -
-- /dev/null
        1224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-signed-request.txt
 1630   1225   
@@ -0,0 +1,5 @@
        1226  +
GET /./ HTTP/1.1
        1227  +
Host:example.amazonaws.com
        1228  +
X-Amz-Date:20150830T123600Z
        1229  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=68714168e6557f8f2de0ef956fc24dc2593a4bd2961f8df51898d8a134695145
        1230  +
 1631   1231   
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
 1632   1232   
new file mode 100644
 1633   1233   
index 0000000..b7d8caf
 1634         -
-- /dev/null
        1234  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/header-string-to-sign.txt
 1635   1235   
@@ -0,0 +1,4 @@
        1236  +
AWS4-HMAC-SHA256
        1237  +
20150830T123600Z
        1238  +
20150830/us-east-1/service/aws4_request
        1239  +
d67825e2268bd77a97c7688b8d72c31a3c1855b309808505ba0a9747d2465aa7
              \
 No newline at end of file
 1636   1240   
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
 1637   1241   
new file mode 100644
 1638   1242   
index 0000000..d4e029e
 1639         -
-- /dev/null
        1243  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 1640   1244   
@@ -0,0 +1,7 @@
        1245  +
GET
        1246  +
/./
        1247  +
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
        1248  +
host:example.amazonaws.com
        1249  +
        1250  +
host
        1251  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1641   1252   
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
 1642   1253   
new file mode 100644
 1643   1254   
index 0000000..fe8f4cc
 1644         -
-- /dev/null
        1255  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signature.txt
 1645   1256   
@@ -0,0 +1 @@
        1257  +
a9b13e8f3484d9505bf1a6f347219f8f35b0fe8f128ceea597efc146a3dfe90c
              \
 No newline at end of file
 1646   1258   
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
 1647   1259   
new file mode 100644
 1648   1260   
index 0000000..dcc4fc4
 1649         -
-- /dev/null
        1261  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-signed-request.txt
 1650   1262   
@@ -0,0 +1,3 @@
        1263  +
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
        1264  +
Host:example.amazonaws.com
        1265  +
 1651   1266   
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
 1652   1267   
new file mode 100644
 1653   1268   
index 0000000..5fb3ada
 1654         -
-- /dev/null
        1269  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/query-string-to-sign.txt
 1655   1270   
@@ -0,0 +1,4 @@
        1271  +
AWS4-HMAC-SHA256
        1272  +
20150830T123600Z
        1273  +
20150830/us-east-1/service/aws4_request
        1274  +
21b2da17873f30c1a7410efdc271738b318ccc2c9c6fbe1289fc242aeb1a8ae1
              \
 No newline at end of file
 1656   1275   
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
 1657   1276   
similarity index 100%
 1658   1277   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/request.txt
 1659   1278   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-dot-slash-unnormalized/request.txt
 1660   1279   
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
 1661   1280   
new file mode 100644
 1662   1281   
index 0000000..0468d80
 1663         -
-- /dev/null
        1282  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/context.json
 1664   1283   
@@ -0,0 +1,12 @@
        1284  +
{
        1285  +
    "credentials": {
        1286  +
        "access_key_id": "AKIDEXAMPLE",
        1287  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1288  +
    },
        1289  +
    "expiration_in_seconds": 3600,
        1290  +
    "normalize": true,
        1291  +
    "region": "us-east-1",
        1292  +
    "service": "service",
        1293  +
    "sign_body": false,
        1294  +
    "timestamp": "2015-08-30T12:36:00Z"
        1295  +
}
              \
 No newline at end of file
 1665   1296   
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
 1666   1297   
similarity index 100%
 1667   1298   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.creq
 1668   1299   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-canonical-request.txt
 1669   1300   
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
 1670   1301   
new file mode 100644
 1671   1302   
index 0000000..87f295f
 1672         -
-- /dev/null
        1303  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signature.txt
 1673   1304   
@@ -0,0 +1 @@
        1305  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 1674   1306   
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
 1675   1307   
new file mode 100644
 1676   1308   
index 0000000..b91087b
 1677         -
-- /dev/null
        1309  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-signed-request.txt
 1678   1310   
@@ -0,0 +1,5 @@
        1311  +
GET // HTTP/1.1
        1312  +
Host:example.amazonaws.com
        1313  +
X-Amz-Date:20150830T123600Z
        1314  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        1315  +
 1679   1316   
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
 1680   1317   
similarity index 100%
 1681   1318   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.sts
 1682   1319   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/header-string-to-sign.txt
 1683   1320   
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
 1684   1321   
new file mode 100644
 1685   1322   
index 0000000..fb2420d
 1686         -
-- /dev/null
        1323  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-canonical-request.txt
 1687   1324   
@@ -0,0 +1,7 @@
        1325  +
GET
        1326  +
/
        1327  +
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
        1328  +
host:example.amazonaws.com
        1329  +
        1330  +
host
        1331  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1688   1332   
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
 1689   1333   
new file mode 100644
 1690   1334   
index 0000000..da5c905
 1691         -
-- /dev/null
        1335  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signature.txt
 1692   1336   
@@ -0,0 +1 @@
        1337  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 1693   1338   
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
 1694   1339   
new file mode 100644
 1695   1340   
index 0000000..0290ba4
 1696         -
-- /dev/null
        1341  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-signed-request.txt
 1697   1342   
@@ -0,0 +1,3 @@
        1343  +
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
        1344  +
Host:example.amazonaws.com
        1345  +
 1698   1346   
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
 1699   1347   
new file mode 100644
 1700   1348   
index 0000000..d837e67
 1701         -
-- /dev/null
        1349  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/query-string-to-sign.txt
 1702   1350   
@@ -0,0 +1,4 @@
        1351  +
AWS4-HMAC-SHA256
        1352  +
20150830T123600Z
        1353  +
20150830/us-east-1/service/aws4_request
        1354  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 1703   1355   
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
 1704   1356   
similarity index 100%
 1705   1357   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/request.txt
 1706   1358   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-normalized/request.txt
 1707   1359   
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
 1708   1360   
new file mode 100644
 1709   1361   
index 0000000..0468d80
 1710         -
-- /dev/null
        1362  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/context.json
 1711   1363   
@@ -0,0 +1,12 @@
        1364  +
{
        1365  +
    "credentials": {
        1366  +
        "access_key_id": "AKIDEXAMPLE",
        1367  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1368  +
    },
        1369  +
    "expiration_in_seconds": 3600,
        1370  +
    "normalize": true,
        1371  +
    "region": "us-east-1",
        1372  +
    "service": "service",
        1373  +
    "sign_body": false,
        1374  +
    "timestamp": "2015-08-30T12:36:00Z"
        1375  +
}
              \
 No newline at end of file
 1712   1376   
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
 1713   1377   
similarity index 100%
 1714   1378   
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
 1715   1379   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-canonical-request.txt
 1716   1380   
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
 1717   1381   
new file mode 100644
 1718   1382   
index 0000000..8f892bf
 1719         -
-- /dev/null
        1383  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signature.txt
 1720   1384   
@@ -0,0 +1 @@
        1385  +
ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
              \
 No newline at end of file
 1721   1386   
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
 1722   1387   
new file mode 100644
 1723   1388   
index 0000000..2a1895c
 1724         -
-- /dev/null
        1389  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/header-signed-request.txt
 1725   1390   
@@ -0,0 +1,5 @@
        1391  +
GET /./example HTTP/1.1
        1392  +
Host:example.amazonaws.com
        1393  +
X-Amz-Date:20150830T123600Z
        1394  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=ef75d96142cf21edca26f06005da7988e4f8dc83a165a80865db7089db637ec5
        1395  +
 1726   1396   
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
 1727   1397   
similarity index 100%
 1728   1398   
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
 1729   1399   
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
 1730   1400   
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
 1731   1401   
new file mode 100644
 1732   1402   
index 0000000..99dfc2a
 1733         -
-- /dev/null
        1403  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-canonical-request.txt
 1734   1404   
@@ -0,0 +1,7 @@
        1405  +
GET
        1406  +
/example
        1407  +
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
        1408  +
host:example.amazonaws.com
        1409  +
        1410  +
host
        1411  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1735   1412   
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
 1736   1413   
new file mode 100644
 1737   1414   
index 0000000..fcd7a17
 1738         -
-- /dev/null
        1415  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signature.txt
 1739   1416   
@@ -0,0 +1 @@
        1417  +
35034b1a0bdd969f346975386daf8aedfd4976573b8348cf4f67eaa41c5857de
              \
 No newline at end of file
 1740   1418   
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
 1741   1419   
new file mode 100644
 1742   1420   
index 0000000..f671de2
 1743         -
-- /dev/null
        1421  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-signed-request.txt
 1744   1422   
@@ -0,0 +1,3 @@
        1423  +
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
        1424  +
Host:example.amazonaws.com
        1425  +
 1745   1426   
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
 1746   1427   
new file mode 100644
 1747   1428   
index 0000000..f8456dc
 1748         -
-- /dev/null
        1429  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/query-string-to-sign.txt
 1749   1430   
@@ -0,0 +1,4 @@
        1431  +
AWS4-HMAC-SHA256
        1432  +
20150830T123600Z
        1433  +
20150830/us-east-1/service/aws4_request
        1434  +
88dd73bb06de69cb042dbb82cadbb4fce1a2623615d94520c271614abf94e738
              \
 No newline at end of file
 1750   1435   
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
 1751   1436   
similarity index 100%
 1752   1437   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/request.txt
 1753   1438   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-normalized/request.txt
 1754   1439   
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
 1755   1440   
similarity index 99%
 1756   1441   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/context.json
 1757   1442   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/context.json
 1758   1443   
index afe367b..7bee5c7 100644
 1759   1444   
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
 1760   1445   
new file mode 100644
 1761   1446   
index 0000000..36698c7
 1762         -
-- /dev/null
        1447  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 1763   1448   
@@ -0,0 +1,8 @@
        1449  +
GET
        1450  +
/./example
        1451  +
        1452  +
host:example.amazonaws.com
        1453  +
x-amz-date:20150830T123600Z
        1454  +
        1455  +
host;x-amz-date
        1456  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1764   1457   
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
 1765   1458   
new file mode 100644
 1766   1459   
index 0000000..4a4b8f2
 1767         -
-- /dev/null
        1460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signature.txt
 1768   1461   
@@ -0,0 +1 @@
        1462  +
beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
              \
 No newline at end of file
 1769   1463   
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
 1770   1464   
new file mode 100644
 1771   1465   
index 0000000..d462bcd
 1772         -
-- /dev/null
        1466  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 1773   1467   
@@ -0,0 +1,5 @@
        1468  +
GET /./example HTTP/1.1
        1469  +
Host:example.amazonaws.com
        1470  +
X-Amz-Date:20150830T123600Z
        1471  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=beb03f223f7deae4146464f06e29eebbee9c8afbe15c290cf07aa8b119e14cff
        1472  +
 1774   1473   
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
 1775   1474   
new file mode 100644
 1776   1475   
index 0000000..8be78c9
 1777         -
-- /dev/null
        1476  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/header-string-to-sign.txt
 1778   1477   
@@ -0,0 +1,4 @@
        1478  +
AWS4-HMAC-SHA256
        1479  +
20150830T123600Z
        1480  +
20150830/us-east-1/service/aws4_request
        1481  +
73895e0e829507e28e39fd24669aedc2434a8e179e547e3c075b42921f952cdb
              \
 No newline at end of file
 1779   1482   
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
 1780   1483   
new file mode 100644
 1781   1484   
index 0000000..fe1103c
 1782         -
-- /dev/null
        1485  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 1783   1486   
@@ -0,0 +1,7 @@
        1487  +
GET
        1488  +
/./example
        1489  +
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
        1490  +
host:example.amazonaws.com
        1491  +
        1492  +
host
        1493  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1784   1494   
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
 1785   1495   
new file mode 100644
 1786   1496   
index 0000000..ce80762
 1787         -
-- /dev/null
        1497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signature.txt
 1788   1498   
@@ -0,0 +1 @@
        1499  +
72b11f16d9530b18204bfb71f2d6ab085894c0ed8d352730a6e76234c58b5e10
              \
 No newline at end of file
 1789   1500   
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
 1790   1501   
new file mode 100644
 1791   1502   
index 0000000..30841a6
 1792         -
-- /dev/null
        1503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 1793   1504   
@@ -0,0 +1,3 @@
        1505  +
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
        1506  +
Host:example.amazonaws.com
        1507  +
 1794   1508   
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
 1795   1509   
new file mode 100644
 1796   1510   
index 0000000..5c66509
 1797         -
-- /dev/null
        1511  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/query-string-to-sign.txt
 1798   1512   
@@ -0,0 +1,4 @@
        1513  +
AWS4-HMAC-SHA256
        1514  +
20150830T123600Z
        1515  +
20150830/us-east-1/service/aws4_request
        1516  +
cb23444939471187ac1f0fb25d437337af0d5f48b5ae0ede5baa3727c8c6af92
              \
 No newline at end of file
 1799   1517   
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
 1800   1518   
similarity index 100%
 1801   1519   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/request.txt
 1802   1520   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-pointless-dot-unnormalized/request.txt
 1803   1521   
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
 1804   1522   
new file mode 100644
 1805   1523   
index 0000000..7bee5c7
 1806         -
-- /dev/null
        1524  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/context.json
 1807   1525   
@@ -0,0 +1,12 @@
        1526  +
{
        1527  +
    "credentials": {
        1528  +
        "access_key_id": "AKIDEXAMPLE",
        1529  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1530  +
    },
        1531  +
    "expiration_in_seconds": 3600,
        1532  +
    "normalize": false,
        1533  +
    "region": "us-east-1",
        1534  +
    "service": "service",
        1535  +
    "sign_body": false,
        1536  +
    "timestamp": "2015-08-30T12:36:00Z"
        1537  +
}
              \
 No newline at end of file
 1808   1538   
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
 1809   1539   
new file mode 100644
 1810   1540   
index 0000000..5860c8a
 1811         -
-- /dev/null
        1541  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-canonical-request.txt
 1812   1542   
@@ -0,0 +1,8 @@
        1543  +
GET
        1544  +
//
        1545  +
        1546  +
host:example.amazonaws.com
        1547  +
x-amz-date:20150830T123600Z
        1548  +
        1549  +
host;x-amz-date
        1550  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1813   1551   
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
 1814   1552   
new file mode 100644
 1815   1553   
index 0000000..8310471
 1816         -
-- /dev/null
        1554  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signature.txt
 1817   1555   
@@ -0,0 +1 @@
        1556  +
c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
              \
 No newline at end of file
 1818   1557   
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
 1819   1558   
new file mode 100644
 1820   1559   
index 0000000..2a7afef
 1821         -
-- /dev/null
        1560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-signed-request.txt
 1822   1561   
@@ -0,0 +1,5 @@
        1562  +
GET // HTTP/1.1
        1563  +
Host:example.amazonaws.com
        1564  +
X-Amz-Date:20150830T123600Z
        1565  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=c88bcd3d312d75078c0cd961d6deae3f4c754924b01669efcfcb439fd5e5b76e
        1566  +
 1823   1567   
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
 1824   1568   
new file mode 100644
 1825   1569   
index 0000000..06059dd
 1826         -
-- /dev/null
        1570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/header-string-to-sign.txt
 1827   1571   
@@ -0,0 +1,4 @@
        1572  +
AWS4-HMAC-SHA256
        1573  +
20150830T123600Z
        1574  +
20150830/us-east-1/service/aws4_request
        1575  +
80cb39203d058af815de2b79250ff56e1b73eb9b4718c86556cdc6f150c5d209
              \
 No newline at end of file
 1828   1576   
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
 1829   1577   
new file mode 100644
 1830   1578   
index 0000000..6d63aef
 1831         -
-- /dev/null
        1579  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-canonical-request.txt
 1832   1580   
@@ -0,0 +1,7 @@
        1581  +
GET
        1582  +
//
        1583  +
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
        1584  +
host:example.amazonaws.com
        1585  +
        1586  +
host
        1587  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1833   1588   
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
 1834   1589   
new file mode 100644
 1835   1590   
index 0000000..e5b7b6c
 1836         -
-- /dev/null
        1591  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signature.txt
 1837   1592   
@@ -0,0 +1 @@
        1593  +
b2a9542809db687769200f56a844a03f2bd0291d6eb90232d5101c6a579446cd
              \
 No newline at end of file
 1838   1594   
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
 1839   1595   
new file mode 100644
 1840   1596   
index 0000000..46fe3fd
 1841         -
-- /dev/null
        1597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-signed-request.txt
 1842   1598   
@@ -0,0 +1,3 @@
        1599  +
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
        1600  +
Host:example.amazonaws.com
        1601  +
 1843   1602   
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
 1844   1603   
new file mode 100644
 1845   1604   
index 0000000..ea79940
 1846         -
-- /dev/null
        1605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/query-string-to-sign.txt
 1847   1606   
@@ -0,0 +1,4 @@
        1607  +
AWS4-HMAC-SHA256
        1608  +
20150830T123600Z
        1609  +
20150830/us-east-1/service/aws4_request
        1610  +
e10a01494cafa1f2207c4de80c69b7a36d6f2d282aa63ee64a5ca50e175cf730
              \
 No newline at end of file
 1848   1611   
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
 1849   1612   
similarity index 100%
 1850   1613   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/request.txt
 1851   1614   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slash-unnormalized/request.txt
 1852   1615   
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
 1853   1616   
new file mode 100644
 1854   1617   
index 0000000..0468d80
 1855         -
-- /dev/null
        1618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/context.json
 1856   1619   
@@ -0,0 +1,12 @@
        1620  +
{
        1621  +
    "credentials": {
        1622  +
        "access_key_id": "AKIDEXAMPLE",
        1623  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1624  +
    },
        1625  +
    "expiration_in_seconds": 3600,
        1626  +
    "normalize": true,
        1627  +
    "region": "us-east-1",
        1628  +
    "service": "service",
        1629  +
    "sign_body": false,
        1630  +
    "timestamp": "2015-08-30T12:36:00Z"
        1631  +
}
              \
 No newline at end of file
 1857   1632   
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
 1858   1633   
similarity index 100%
 1859   1634   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.creq
 1860   1635   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-canonical-request.txt
 1861   1636   
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
 1862   1637   
new file mode 100644
 1863   1638   
index 0000000..71c7bac
 1864         -
-- /dev/null
        1639  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signature.txt
 1865   1640   
@@ -0,0 +1 @@
        1641  +
9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
              \
 No newline at end of file
 1866   1642   
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
 1867   1643   
new file mode 100644
 1868   1644   
index 0000000..0add1f1
 1869         -
-- /dev/null
        1645  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-signed-request.txt
 1870   1646   
@@ -0,0 +1,5 @@
        1647  +
GET //example// HTTP/1.1
        1648  +
Host:example.amazonaws.com
        1649  +
X-Amz-Date:20150830T123600Z
        1650  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9a624bd73a37c9a373b5312afbebe7a714a789de108f0bdfe846570885f57e84
        1651  +
 1871   1652   
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
 1872   1653   
similarity index 100%
 1873   1654   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.sts
 1874   1655   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/header-string-to-sign.txt
 1875   1656   
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
 1876   1657   
new file mode 100644
 1877   1658   
index 0000000..ce72510
 1878         -
-- /dev/null
        1659  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-canonical-request.txt
 1879   1660   
@@ -0,0 +1,7 @@
        1661  +
GET
        1662  +
/example/
        1663  +
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
        1664  +
host:example.amazonaws.com
        1665  +
        1666  +
host
        1667  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1880   1668   
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
 1881   1669   
new file mode 100644
 1882   1670   
index 0000000..265f387
 1883         -
-- /dev/null
        1671  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signature.txt
 1884   1672   
@@ -0,0 +1 @@
        1673  +
c1834e8fb0307243711f0f907f6ab7311ed300d87f13792d7ee4da89ab93e082
              \
 No newline at end of file
 1885   1674   
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
 1886   1675   
new file mode 100644
 1887   1676   
index 0000000..e1fcb2e
 1888         -
-- /dev/null
        1677  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-signed-request.txt
 1889   1678   
@@ -0,0 +1,3 @@
        1679  +
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
        1680  +
Host:example.amazonaws.com
        1681  +
 1890   1682   
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
 1891   1683   
new file mode 100644
 1892   1684   
index 0000000..a14de61
 1893         -
-- /dev/null
        1685  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/query-string-to-sign.txt
 1894   1686   
@@ -0,0 +1,4 @@
        1687  +
AWS4-HMAC-SHA256
        1688  +
20150830T123600Z
        1689  +
20150830/us-east-1/service/aws4_request
        1690  +
1a3e3fe19998c62136ed2ff9c8531973a46d4a21b336f58e8fcad185ec64d642
              \
 No newline at end of file
 1895   1691   
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
 1896   1692   
similarity index 100%
 1897   1693   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/request.txt
 1898   1694   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-normalized/request.txt
 1899   1695   
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
 1900   1696   
new file mode 100644
 1901   1697   
index 0000000..7bee5c7
 1902         -
-- /dev/null
        1698  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/context.json
 1903   1699   
@@ -0,0 +1,12 @@
        1700  +
{
        1701  +
    "credentials": {
        1702  +
        "access_key_id": "AKIDEXAMPLE",
        1703  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1704  +
    },
        1705  +
    "expiration_in_seconds": 3600,
        1706  +
    "normalize": false,
        1707  +
    "region": "us-east-1",
        1708  +
    "service": "service",
        1709  +
    "sign_body": false,
        1710  +
    "timestamp": "2015-08-30T12:36:00Z"
        1711  +
}
              \
 No newline at end of file
 1904   1712   
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
 1905   1713   
new file mode 100644
 1906   1714   
index 0000000..dfffaaf
 1907         -
-- /dev/null
        1715  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-canonical-request.txt
 1908   1716   
@@ -0,0 +1,8 @@
        1717  +
GET
        1718  +
//example//
        1719  +
        1720  +
host:example.amazonaws.com
        1721  +
x-amz-date:20150830T123600Z
        1722  +
        1723  +
host;x-amz-date
        1724  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1909   1725   
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
 1910   1726   
new file mode 100644
 1911   1727   
index 0000000..edbcc0d
 1912         -
-- /dev/null
        1728  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signature.txt
 1913   1729   
@@ -0,0 +1 @@
        1730  +
87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
              \
 No newline at end of file
 1914   1731   
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
 1915   1732   
new file mode 100644
 1916   1733   
index 0000000..4cc12dd
 1917         -
-- /dev/null
        1734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-signed-request.txt
 1918   1735   
@@ -0,0 +1,5 @@
        1736  +
GET //example// HTTP/1.1
        1737  +
Host:example.amazonaws.com
        1738  +
X-Amz-Date:20150830T123600Z
        1739  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=87cca117541a147f6df867677d98a7d80dff226d2bfca9e4ffa899665623c7e5
        1740  +
 1919   1741   
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
 1920   1742   
new file mode 100644
 1921   1743   
index 0000000..3eba390
 1922         -
-- /dev/null
        1744  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/header-string-to-sign.txt
 1923   1745   
@@ -0,0 +1,4 @@
        1746  +
AWS4-HMAC-SHA256
        1747  +
20150830T123600Z
        1748  +
20150830/us-east-1/service/aws4_request
        1749  +
528ec3105ee1f34ab014bb0a1a45da0ed2742a4fea3555149e5b4d5d201eb240
              \
 No newline at end of file
 1924   1750   
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
 1925   1751   
new file mode 100644
 1926   1752   
index 0000000..f7844e3
 1927         -
-- /dev/null
        1753  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-canonical-request.txt
 1928   1754   
@@ -0,0 +1,7 @@
        1755  +
GET
        1756  +
//example//
        1757  +
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
        1758  +
host:example.amazonaws.com
        1759  +
        1760  +
host
        1761  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1929   1762   
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
 1930   1763   
new file mode 100644
 1931   1764   
index 0000000..a8d6b96
 1932         -
-- /dev/null
        1765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signature.txt
 1933   1766   
@@ -0,0 +1 @@
        1767  +
822a5a9ba28072c5ab2bb4a6307d0c88276d40e49fec6b724c03fb4d4ba60fc2
              \
 No newline at end of file
 1934   1768   
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
 1935   1769   
new file mode 100644
 1936   1770   
index 0000000..a8322c6
 1937         -
-- /dev/null
        1771  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-signed-request.txt
 1938   1772   
@@ -0,0 +1,3 @@
        1773  +
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
        1774  +
Host:example.amazonaws.com
        1775  +
 1939   1776   
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
 1940   1777   
new file mode 100644
 1941   1778   
index 0000000..068724d
 1942         -
-- /dev/null
        1779  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/query-string-to-sign.txt
 1943   1780   
@@ -0,0 +1,4 @@
        1781  +
AWS4-HMAC-SHA256
        1782  +
20150830T123600Z
        1783  +
20150830/us-east-1/service/aws4_request
        1784  +
82241114f9a6320f054333c890952474aa7a0069d28a4326c3a8d95bbecc69ee
              \
 No newline at end of file
 1944   1785   
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
 1945   1786   
similarity index 100%
 1946   1787   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/request.txt
 1947   1788   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-slashes-unnormalized/request.txt
 1948   1789   
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
 1949   1790   
new file mode 100644
 1950   1791   
index 0000000..0468d80
 1951         -
-- /dev/null
        1792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/context.json
 1952   1793   
@@ -0,0 +1,12 @@
        1794  +
{
        1795  +
    "credentials": {
        1796  +
        "access_key_id": "AKIDEXAMPLE",
        1797  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1798  +
    },
        1799  +
    "expiration_in_seconds": 3600,
        1800  +
    "normalize": true,
        1801  +
    "region": "us-east-1",
        1802  +
    "service": "service",
        1803  +
    "sign_body": false,
        1804  +
    "timestamp": "2015-08-30T12:36:00Z"
        1805  +
}
              \
 No newline at end of file
 1953   1806   
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
 1954   1807   
similarity index 100%
 1955   1808   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.creq
 1956   1809   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-canonical-request.txt
 1957   1810   
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
 1958   1811   
new file mode 100644
 1959   1812   
index 0000000..f63892b
 1960         -
-- /dev/null
        1813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signature.txt
 1961   1814   
@@ -0,0 +1 @@
        1815  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 1962   1816   
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
 1963   1817   
new file mode 100644
 1964   1818   
index 0000000..19cd5cb
 1965         -
-- /dev/null
        1819  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-signed-request.txt
 1966   1820   
@@ -0,0 +1,5 @@
        1821  +
GET /example space/ HTTP/1.1
        1822  +
Host:example.amazonaws.com
        1823  +
X-Amz-Date:20150830T123600Z
        1824  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1825  +
 1967   1826   
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
 1968   1827   
similarity index 100%
 1969   1828   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.sts
 1970   1829   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/header-string-to-sign.txt
 1971   1830   
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
 1972   1831   
new file mode 100644
 1973   1832   
index 0000000..fa3d3e2
 1974         -
-- /dev/null
        1833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-canonical-request.txt
 1975   1834   
@@ -0,0 +1,7 @@
        1835  +
GET
        1836  +
/example%20space/
        1837  +
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
        1838  +
host:example.amazonaws.com
        1839  +
        1840  +
host
        1841  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 1976   1842   
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
 1977   1843   
new file mode 100644
 1978   1844   
index 0000000..5b2e204
 1979         -
-- /dev/null
        1845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signature.txt
 1980   1846   
@@ -0,0 +1 @@
        1847  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 1981   1848   
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
 1982   1849   
new file mode 100644
 1983   1850   
index 0000000..93ca1d0
 1984         -
-- /dev/null
        1851  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-signed-request.txt
 1985   1852   
@@ -0,0 +1,3 @@
        1853  +
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
        1854  +
Host:example.amazonaws.com
        1855  +
 1986   1856   
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
 1987   1857   
new file mode 100644
 1988   1858   
index 0000000..b4cb789
 1989         -
-- /dev/null
        1859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/query-string-to-sign.txt
 1990   1860   
@@ -0,0 +1,4 @@
        1861  +
AWS4-HMAC-SHA256
        1862  +
20150830T123600Z
        1863  +
20150830/us-east-1/service/aws4_request
        1864  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 1991   1865   
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
 1992   1866   
new file mode 100644
 1993   1867   
index 0000000..860a277
 1994         -
-- /dev/null
        1868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-normalized/request.txt
 1995   1869   
@@ -0,0 +1,2 @@
        1870  +
GET /example%20space/ HTTP/1.1
        1871  +
Host:example.amazonaws.com
 1996   1872   
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
 1997   1873   
new file mode 100644
 1998   1874   
index 0000000..7bee5c7
 1999         -
-- /dev/null
        1875  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/context.json
 2000   1876   
@@ -0,0 +1,12 @@
        1877  +
{
        1878  +
    "credentials": {
        1879  +
        "access_key_id": "AKIDEXAMPLE",
        1880  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1881  +
    },
        1882  +
    "expiration_in_seconds": 3600,
        1883  +
    "normalize": false,
        1884  +
    "region": "us-east-1",
        1885  +
    "service": "service",
        1886  +
    "sign_body": false,
        1887  +
    "timestamp": "2015-08-30T12:36:00Z"
        1888  +
}
              \
 No newline at end of file
 2001   1889   
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
 2002   1890   
similarity index 66%
 2003   1891   
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
 2004   1892   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2005   1893   
index 71dc981..124a709 100644
 2006         -
-- 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
        1894  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-canonical-request.txt
 2007   1895   
@@ -1,9 +1,8 @@
 2008         -
POST
 2009         -
/
        1896  +
GET
        1897  +
/example%20space/
 2010   1898   
 2011         -
content-type:application/x-www-form-urlencoded; charset=utf-8
 2012   1899   
host:example.amazonaws.com
 2013   1900   
x-amz-date:20150830T123600Z
 2014   1901   
 2015   1902   
host;x-amz-date
 2016   1903   
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2017   1904   
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
 2018   1905   
new file mode 100644
 2019   1906   
index 0000000..f63892b
 2020         -
-- /dev/null
        1907  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signature.txt
 2021   1908   
@@ -0,0 +1 @@
        1909  +
652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
              \
 No newline at end of file
 2022   1910   
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
 2023   1911   
new file mode 100644
 2024   1912   
index 0000000..19cd5cb
 2025         -
-- /dev/null
        1913  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-signed-request.txt
 2026   1914   
@@ -0,0 +1,5 @@
        1915  +
GET /example space/ HTTP/1.1
        1916  +
Host:example.amazonaws.com
        1917  +
X-Amz-Date:20150830T123600Z
        1918  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=652487583200325589f1fba4c7e578f72c47cb61beeca81406b39ddec1366741
        1919  +
 2027   1920   
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
 2028   1921   
new file mode 100644
 2029   1922   
index 0000000..a633f0c
 2030         -
-- /dev/null
        1923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/header-string-to-sign.txt
 2031   1924   
@@ -0,0 +1,4 @@
        1925  +
AWS4-HMAC-SHA256
        1926  +
20150830T123600Z
        1927  +
20150830/us-east-1/service/aws4_request
        1928  +
63ee75631ed7234ae61b5f736dfc7754cdccfedbff4b5128a915706ee9390d86
              \
 No newline at end of file
 2032   1929   
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
 2033   1930   
new file mode 100644
 2034   1931   
index 0000000..fa3d3e2
 2035         -
-- /dev/null
        1932  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-canonical-request.txt
 2036   1933   
@@ -0,0 +1,7 @@
        1934  +
GET
        1935  +
/example%20space/
        1936  +
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
        1937  +
host:example.amazonaws.com
        1938  +
        1939  +
host
        1940  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2037   1941   
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
 2038   1942   
new file mode 100644
 2039   1943   
index 0000000..5b2e204
 2040         -
-- /dev/null
        1944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signature.txt
 2041   1945   
@@ -0,0 +1 @@
        1946  +
7a1f416954786484c9824d93c1f26ef64acb9b1b6c9154d08c9f07d0e394abf6
              \
 No newline at end of file
 2042   1947   
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
 2043   1948   
new file mode 100644
 2044   1949   
index 0000000..93ca1d0
 2045         -
-- /dev/null
        1950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-signed-request.txt
 2046   1951   
@@ -0,0 +1,3 @@
        1952  +
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
        1953  +
Host:example.amazonaws.com
        1954  +
 2047   1955   
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
 2048   1956   
new file mode 100644
 2049   1957   
index 0000000..b4cb789
 2050         -
-- /dev/null
        1958  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/query-string-to-sign.txt
 2051   1959   
@@ -0,0 +1,4 @@
        1960  +
AWS4-HMAC-SHA256
        1961  +
20150830T123600Z
        1962  +
20150830/us-east-1/service/aws4_request
        1963  +
cc3dd817bd405e51225826ec4934a96d065d6af5b6b0163c7a5abbd26a84519e
              \
 No newline at end of file
 2052   1964   
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
 2053   1965   
similarity index 67%
 2054   1966   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
 2055   1967   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2056   1968   
index b7d5e8b..ab509ab 100644
 2057         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-space/get-space.req
        1969  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-space-unnormalized/request.txt
 2058   1970   
@@ -1,3 +1,2 @@
 2059   1971   
GET /example space/ HTTP/1.1
 2060   1972   
Host:example.amazonaws.com
 2061         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2062   1973   
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
 2063   1974   
new file mode 100644
 2064   1975   
index 0000000..0468d80
 2065         -
-- /dev/null
        1976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/context.json
 2066   1977   
@@ -0,0 +1,12 @@
        1978  +
{
        1979  +
    "credentials": {
        1980  +
        "access_key_id": "AKIDEXAMPLE",
        1981  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        1982  +
    },
        1983  +
    "expiration_in_seconds": 3600,
        1984  +
    "normalize": true,
        1985  +
    "region": "us-east-1",
        1986  +
    "service": "service",
        1987  +
    "sign_body": false,
        1988  +
    "timestamp": "2015-08-30T12:36:00Z"
        1989  +
}
              \
 No newline at end of file
 2067   1990   
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
 2068   1991   
similarity index 100%
 2069   1992   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.creq
 2070   1993   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-canonical-request.txt
 2071   1994   
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
 2072   1995   
new file mode 100644
 2073   1996   
index 0000000..e503354
 2074         -
-- /dev/null
        1997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signature.txt
 2075   1998   
@@ -0,0 +1 @@
        1999  +
07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
              \
 No newline at end of file
 2076   2000   
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
 2077   2001   
new file mode 100644
 2078   2002   
index 0000000..4367892
 2079         -
-- /dev/null
        2003  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-signed-request.txt
 2080   2004   
@@ -0,0 +1,5 @@
        2005  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        2006  +
Host:example.amazonaws.com
        2007  +
X-Amz-Date:20150830T123600Z
        2008  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=07ef7494c76fa4850883e2b006601f940f8a34d404d0cfa977f52a65bbf5f24f
        2009  +
 2081   2010   
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
 2082   2011   
similarity index 100%
 2083   2012   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.sts
 2084   2013   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/header-string-to-sign.txt
 2085   2014   
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
 2086   2015   
new file mode 100644
 2087   2016   
index 0000000..d7f0696
 2088         -
-- /dev/null
        2017  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-canonical-request.txt
 2089   2018   
@@ -0,0 +1,7 @@
        2019  +
GET
        2020  +
/-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
        2021  +
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
        2022  +
host:example.amazonaws.com
        2023  +
        2024  +
host
        2025  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2090   2026   
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
 2091   2027   
new file mode 100644
 2092   2028   
index 0000000..509e972
 2093         -
-- /dev/null
        2029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signature.txt
 2094   2030   
@@ -0,0 +1 @@
        2031  +
95968482db1b9e0fadef6efc1bd24689f77c77d9ef56919c96a28cc92e0d6005
              \
 No newline at end of file
 2095   2032   
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
 2096   2033   
new file mode 100644
 2097   2034   
index 0000000..79aad36
 2098         -
-- /dev/null
        2035  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-signed-request.txt
 2099   2036   
@@ -0,0 +1,3 @@
        2037  +
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
        2038  +
Host:example.amazonaws.com
        2039  +
 2100   2040   
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
 2101   2041   
new file mode 100644
 2102   2042   
index 0000000..e8068b3
 2103         -
-- /dev/null
        2043  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/query-string-to-sign.txt
 2104   2044   
@@ -0,0 +1,4 @@
        2045  +
AWS4-HMAC-SHA256
        2046  +
20150830T123600Z
        2047  +
20150830/us-east-1/service/aws4_request
        2048  +
3134f2fbc6ef58f34b74b01643a159bfccbc121ea4288a4b75e65bc805d08219
              \
 No newline at end of file
 2105   2049   
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
 2106   2050   
similarity index 100%
 2107   2051   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/request.txt
 2108   2052   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-unreserved/request.txt
 2109   2053   
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
 2110   2054   
new file mode 100644
 2111   2055   
index 0000000..0468d80
 2112         -
-- /dev/null
        2056  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/context.json
 2113   2057   
@@ -0,0 +1,12 @@
        2058  +
{
        2059  +
    "credentials": {
        2060  +
        "access_key_id": "AKIDEXAMPLE",
        2061  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2062  +
    },
        2063  +
    "expiration_in_seconds": 3600,
        2064  +
    "normalize": true,
        2065  +
    "region": "us-east-1",
        2066  +
    "service": "service",
        2067  +
    "sign_body": false,
        2068  +
    "timestamp": "2015-08-30T12:36:00Z"
        2069  +
}
              \
 No newline at end of file
 2114   2070   
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
 2115   2071   
similarity index 100%
 2116   2072   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.creq
 2117   2073   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-canonical-request.txt
 2118   2074   
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
 2119   2075   
new file mode 100644
 2120   2076   
index 0000000..9a13676
 2121         -
-- /dev/null
        2077  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signature.txt
 2122   2078   
@@ -0,0 +1 @@
        2079  +
8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
              \
 No newline at end of file
 2123   2080   
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
 2124   2081   
new file mode 100644
 2125   2082   
index 0000000..5aaf47c
 2126         -
-- /dev/null
        2083  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-signed-request.txt
 2127   2084   
@@ -0,0 +1,5 @@
        2085  +
GET /ሴ HTTP/1.1
        2086  +
Host:example.amazonaws.com
        2087  +
X-Amz-Date:20150830T123600Z
        2088  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=8318018e0b0f223aa2bbf98705b62bb787dc9c0e678f255a891fd03141be5d85
        2089  +
 2128   2090   
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
 2129   2091   
similarity index 100%
 2130   2092   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.sts
 2131   2093   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/header-string-to-sign.txt
 2132   2094   
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
 2133   2095   
new file mode 100644
 2134   2096   
index 0000000..bdb77c9
 2135         -
-- /dev/null
        2097  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-canonical-request.txt
 2136   2098   
@@ -0,0 +1,7 @@
        2099  +
GET
        2100  +
/%E1%88%B4
        2101  +
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
        2102  +
host:example.amazonaws.com
        2103  +
        2104  +
host
        2105  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2137   2106   
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
 2138   2107   
new file mode 100644
 2139   2108   
index 0000000..21342b3
 2140         -
-- /dev/null
        2109  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signature.txt
 2141   2110   
@@ -0,0 +1 @@
        2111  +
10eae3f14a260bd3911cc6d008d3c576d143b05b62f09782a7a4b37f52178e44
              \
 No newline at end of file
 2142   2112   
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
 2143   2113   
new file mode 100644
 2144   2114   
index 0000000..368c2ff
 2145         -
-- /dev/null
        2115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-signed-request.txt
 2146   2116   
@@ -0,0 +1,3 @@
        2117  +
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
        2118  +
Host:example.amazonaws.com
        2119  +
 2147   2120   
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
 2148   2121   
new file mode 100644
 2149   2122   
index 0000000..56b8fbf
 2150         -
-- /dev/null
        2123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/query-string-to-sign.txt
 2151   2124   
@@ -0,0 +1,4 @@
        2125  +
AWS4-HMAC-SHA256
        2126  +
20150830T123600Z
        2127  +
20150830/us-east-1/service/aws4_request
        2128  +
d8f78e05d0d9bb1c16ae1e60ed405de76cfb8fdcd3e414ffe65fad563b996d66
              \
 No newline at end of file
 2152   2129   
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
 2153   2130   
similarity index 62%
 2154   2131   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
 2155   2132   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2156   2133   
index da4808d..9e273f6 100644
 2157         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-utf8/get-utf8.req
        2134  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-utf8/request.txt
 2158   2135   
@@ -1,3 +1,2 @@
 2159   2136   
GET /ሴ HTTP/1.1
 2160   2137   
Host:example.amazonaws.com
 2161         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2162   2138   
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
 2163   2139   
new file mode 100644
 2164   2140   
index 0000000..0468d80
 2165         -
-- /dev/null
        2141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/context.json
 2166   2142   
@@ -0,0 +1,12 @@
        2143  +
{
        2144  +
    "credentials": {
        2145  +
        "access_key_id": "AKIDEXAMPLE",
        2146  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2147  +
    },
        2148  +
    "expiration_in_seconds": 3600,
        2149  +
    "normalize": true,
        2150  +
    "region": "us-east-1",
        2151  +
    "service": "service",
        2152  +
    "sign_body": false,
        2153  +
    "timestamp": "2015-08-30T12:36:00Z"
        2154  +
}
              \
 No newline at end of file
 2167   2155   
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
 2168   2156   
similarity index 100%
 2169   2157   
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
 2170   2158   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-canonical-request.txt
 2171   2159   
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
 2172   2160   
new file mode 100644
 2173   2161   
index 0000000..d7f1c1c
 2174         -
-- /dev/null
        2162  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signature.txt
 2175   2163   
@@ -0,0 +1 @@
        2164  +
a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
              \
 No newline at end of file
 2176   2165   
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
 2177   2166   
new file mode 100644
 2178   2167   
index 0000000..1c60790
 2179         -
-- /dev/null
        2168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/header-signed-request.txt
 2180   2169   
@@ -0,0 +1,5 @@
        2170  +
GET /?Param1=value1 HTTP/1.1
        2171  +
Host:example.amazonaws.com
        2172  +
X-Amz-Date:20150830T123600Z
        2173  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=a67d582fa61cc504c4bae71f336f98b97f1ea3c7a6bfe1b6e45aec72011b9aeb
        2174  +
 2181   2175   
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
 2182   2176   
similarity index 100%
 2183   2177   
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
 2184   2178   
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
 2185   2179   
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
 2186   2180   
new file mode 100644
 2187   2181   
index 0000000..6a823ed
 2188         -
-- /dev/null
        2182  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-canonical-request.txt
 2189   2183   
@@ -0,0 +1,7 @@
        2184  +
GET
        2185  +
/
        2186  +
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
        2187  +
host:example.amazonaws.com
        2188  +
        2189  +
host
        2190  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2190   2191   
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
 2191   2192   
new file mode 100644
 2192   2193   
index 0000000..8c77136
 2193         -
-- /dev/null
        2194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signature.txt
 2194   2195   
@@ -0,0 +1 @@
        2196  +
49096700cbbaa5753443850f40df10f904fc2fdb544dc9512203cc77c471a9de
              \
 No newline at end of file
 2195   2197   
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
 2196   2198   
new file mode 100644
 2197   2199   
index 0000000..2d337d8
 2198         -
-- /dev/null
        2200  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-signed-request.txt
 2199   2201   
@@ -0,0 +1,3 @@
        2202  +
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
        2203  +
Host:example.amazonaws.com
        2204  +
 2200   2205   
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
 2201   2206   
new file mode 100644
 2202   2207   
index 0000000..191a484
 2203         -
-- /dev/null
        2208  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/query-string-to-sign.txt
 2204   2209   
@@ -0,0 +1,4 @@
        2210  +
AWS4-HMAC-SHA256
        2211  +
20150830T123600Z
        2212  +
20150830/us-east-1/service/aws4_request
        2213  +
74828b608f939673ed5a839190452a943b0178760f258da766209b21f8ca3f86
              \
 No newline at end of file
 2205   2214   
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
 2206   2215   
similarity index 100%
 2207   2216   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/request.txt
 2208   2217   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-empty-query-key/request.txt
 2209   2218   
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
 2210   2219   
new file mode 100644
 2211   2220   
index 0000000..0468d80
 2212         -
-- /dev/null
        2221  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/context.json
 2213   2222   
@@ -0,0 +1,12 @@
        2223  +
{
        2224  +
    "credentials": {
        2225  +
        "access_key_id": "AKIDEXAMPLE",
        2226  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2227  +
    },
        2228  +
    "expiration_in_seconds": 3600,
        2229  +
    "normalize": true,
        2230  +
    "region": "us-east-1",
        2231  +
    "service": "service",
        2232  +
    "sign_body": false,
        2233  +
    "timestamp": "2015-08-30T12:36:00Z"
        2234  +
}
              \
 No newline at end of file
 2214   2235   
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
 2215   2236   
new file mode 100644
 2216   2237   
index 0000000..0c8ba21
 2217         -
-- /dev/null
        2238  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-canonical-request.txt
 2218   2239   
@@ -0,0 +1,8 @@
        2240  +
GET
        2241  +
/
        2242  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        2243  +
host:example.amazonaws.com
        2244  +
x-amz-date:20150830T123600Z
        2245  +
        2246  +
host;x-amz-date
        2247  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2219   2248   
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
 2220   2249   
new file mode 100644
 2221   2250   
index 0000000..9ab65ed
 2222         -
-- /dev/null
        2251  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signature.txt
 2223   2252   
@@ -0,0 +1 @@
        2253  +
371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
              \
 No newline at end of file
 2224   2254   
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
 2225   2255   
new file mode 100644
 2226   2256   
index 0000000..0bcdf98
 2227         -
-- /dev/null
        2257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-signed-request.txt
 2228   2258   
@@ -0,0 +1,5 @@
        2259  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2260  +
Host:example.amazonaws.com
        2261  +
X-Amz-Date:20150830T123600Z
        2262  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=371d3713e185cc334048618a97f809c9ffe339c62934c032af5a0e595648fcac
        2263  +
 2229   2264   
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
 2230   2265   
new file mode 100644
 2231   2266   
index 0000000..bf674ad
 2232         -
-- /dev/null
        2267  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/header-string-to-sign.txt
 2233   2268   
@@ -0,0 +1,4 @@
        2269  +
AWS4-HMAC-SHA256
        2270  +
20150830T123600Z
        2271  +
20150830/us-east-1/service/aws4_request
        2272  +
868294f5c38bd141c4972a373a76654f1418a8e4fc18b2e7903ae45e8ae0ec71
              \
 No newline at end of file
 2234   2273   
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
 2235   2274   
new file mode 100644
 2236   2275   
index 0000000..3f590a4
 2237         -
-- /dev/null
        2276  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-canonical-request.txt
 2238   2277   
@@ -0,0 +1,7 @@
        2278  +
GET
        2279  +
/
        2280  +
%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
        2281  +
host:example.amazonaws.com
        2282  +
        2283  +
host
        2284  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2239   2285   
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
 2240   2286   
new file mode 100644
 2241   2287   
index 0000000..e225eab
 2242         -
-- /dev/null
        2288  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signature.txt
 2243   2289   
@@ -0,0 +1 @@
        2290  +
c5f1848ceec943ac2ca68ee720460c23aaae30a2300586597ada94c4a65e4787
              \
 No newline at end of file
 2244   2291   
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
 2245   2292   
new file mode 100644
 2246   2293   
index 0000000..6206719
 2247         -
-- /dev/null
        2294  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-signed-request.txt
 2248   2295   
@@ -0,0 +1,3 @@
        2296  +
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
        2297  +
Host:example.amazonaws.com
        2298  +
 2249   2299   
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
 2250   2300   
new file mode 100644
 2251   2301   
index 0000000..81a4210
 2252         -
-- /dev/null
        2302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/query-string-to-sign.txt
 2253   2303   
@@ -0,0 +1,4 @@
        2304  +
AWS4-HMAC-SHA256
        2305  +
20150830T123600Z
        2306  +
20150830/us-east-1/service/aws4_request
        2307  +
9808d6cdc8245c74e705c68350fc6a62b91778cdd613890e5d177998c02c6f53
              \
 No newline at end of file
 2254   2308   
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
 2255   2309   
new file mode 100644
 2256   2310   
index 0000000..368c6e3
 2257         -
-- /dev/null
        2311  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-encoded/request.txt
 2258   2312   
@@ -0,0 +1,2 @@
        2313  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        2314  +
Host:example.amazonaws.com
 2259   2315   
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
 2260   2316   
new file mode 100644
 2261   2317   
index 0000000..0468d80
 2262         -
-- /dev/null
        2318  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/context.json
 2263   2319   
@@ -0,0 +1,12 @@
        2320  +
{
        2321  +
    "credentials": {
        2322  +
        "access_key_id": "AKIDEXAMPLE",
        2323  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2324  +
    },
        2325  +
    "expiration_in_seconds": 3600,
        2326  +
    "normalize": true,
        2327  +
    "region": "us-east-1",
        2328  +
    "service": "service",
        2329  +
    "sign_body": false,
        2330  +
    "timestamp": "2015-08-30T12:36:00Z"
        2331  +
}
              \
 No newline at end of file
 2264   2332   
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
 2265   2333   
similarity index 100%
 2266   2334   
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
 2267   2335   
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
 2268   2336   
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
 2269   2337   
new file mode 100644
 2270   2338   
index 0000000..6a8cb9d
 2271         -
-- /dev/null
        2339  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signature.txt
 2272   2340   
@@ -0,0 +1 @@
        2341  +
b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
              \
 No newline at end of file
 2273   2342   
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
 2274   2343   
new file mode 100644
 2275   2344   
index 0000000..f78a9d2
 2276         -
-- /dev/null
        2345  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/header-signed-request.txt
 2277   2346   
@@ -0,0 +1,5 @@
        2347  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        2348  +
Host:example.amazonaws.com
        2349  +
X-Amz-Date:20150830T123600Z
        2350  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=b97d918cfa904a5beff61c982a1b6f458b799221646efd99d3219ec94cdf2500
        2351  +
 2278   2352   
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
 2279   2353   
similarity index 100%
 2280   2354   
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
 2281   2355   
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
 2282   2356   
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
 2283   2357   
new file mode 100644
 2284   2358   
index 0000000..a6e1bc7
 2285         -
-- /dev/null
        2359  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-canonical-request.txt
 2286   2360   
@@ -0,0 +1,7 @@
        2361  +
GET
        2362  +
/
        2363  +
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
        2364  +
host:example.amazonaws.com
        2365  +
        2366  +
host
        2367  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2287   2368   
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
 2288   2369   
new file mode 100644
 2289   2370   
index 0000000..d6e6a88
 2290         -
-- /dev/null
        2371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signature.txt
 2291   2372   
@@ -0,0 +1 @@
        2373  +
86012e2c9ad4d77369f5d81c11f75158aae4f895a085212cc6d3f923d300bed5
              \
 No newline at end of file
 2292   2374   
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
 2293   2375   
new file mode 100644
 2294   2376   
index 0000000..538e2f0
 2295         -
-- /dev/null
        2377  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/query-signed-request.txt
 2296   2378   
@@ -0,0 +1,3 @@
        2379  +
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
        2380  +
Host:example.amazonaws.com
        2381  +
 2297   2382   
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
 2298   2383   
new file mode 100644
 2299   2384   
index 0000000..e696085
 2300         -
-- /dev/null
        2385  +
++ 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
 2301   2386   
@@ -0,0 +1,4 @@
        2387  +
AWS4-HMAC-SHA256
        2388  +
20150830T123600Z
        2389  +
20150830/us-east-1/service/aws4_request
        2390  +
b82878ecb2ab7ad194b9fe79b2946c2a36ee1627a219408089b2d774c1a0cedb
              \
 No newline at end of file
 2302   2391   
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
 2303   2392   
similarity index 100%
 2304   2393   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-order-key-case/request.txt
 2305   2394   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-order-key-case/request.txt
 2306   2395   
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
 2307   2396   
new file mode 100644
 2308   2397   
index 0000000..0468d80
 2309         -
-- /dev/null
        2398  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/context.json
 2310   2399   
@@ -0,0 +1,12 @@
        2400  +
{
        2401  +
    "credentials": {
        2402  +
        "access_key_id": "AKIDEXAMPLE",
        2403  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2404  +
    },
        2405  +
    "expiration_in_seconds": 3600,
        2406  +
    "normalize": true,
        2407  +
    "region": "us-east-1",
        2408  +
    "service": "service",
        2409  +
    "sign_body": false,
        2410  +
    "timestamp": "2015-08-30T12:36:00Z"
        2411  +
}
              \
 No newline at end of file
 2311   2412   
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
 2312   2413   
similarity index 100%
 2313   2414   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.creq
 2314   2415   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-canonical-request.txt
 2315   2416   
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
 2316   2417   
new file mode 100644
 2317   2418   
index 0000000..876a64b
 2318         -
-- /dev/null
        2419  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signature.txt
 2319   2420   
@@ -0,0 +1 @@
        2421  +
9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
              \
 No newline at end of file
 2320   2422   
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
 2321   2423   
similarity index 50%
 2322   2424   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
 2323   2425   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2324   2426   
index ba1ef40..9d0d993 100644
 2325         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sreq
        2427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-signed-request.txt
 2326   2428   
@@ -1,4 +1,5 @@
 2327   2429   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 2328   2430   
Host:example.amazonaws.com
 2329   2431   
X-Amz-Date:20150830T123600Z
 2330         -
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
        2432  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=9c3e54bfcdf0b19771a7f523ee5669cdf59bc7cc0884027167c21bb143a40197
        2433  +
 2331   2434   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2332   2435   
similarity index 100%
 2333   2436   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.sts
 2334   2437   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/header-string-to-sign.txt
 2335   2438   
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
 2336   2439   
new file mode 100644
 2337   2440   
index 0000000..a1bac59
 2338         -
-- /dev/null
        2441  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-canonical-request.txt
 2339   2442   
@@ -0,0 +1,7 @@
        2443  +
GET
        2444  +
/
        2445  +
-._~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
        2446  +
host:example.amazonaws.com
        2447  +
        2448  +
host
        2449  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2340   2450   
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
 2341   2451   
new file mode 100644
 2342   2452   
index 0000000..41881e9
 2343         -
-- /dev/null
        2453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signature.txt
 2344   2454   
@@ -0,0 +1 @@
        2455  +
8e76a88a7433637b12778d5592799b29ad21ecd6cf6325051c21d86f0acda2bf
              \
 No newline at end of file
 2345   2456   
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
 2346   2457   
new file mode 100644
 2347   2458   
index 0000000..3179076
 2348         -
-- /dev/null
        2459  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-signed-request.txt
 2349   2460   
@@ -0,0 +1,3 @@
        2461  +
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
        2462  +
Host:example.amazonaws.com
        2463  +
 2350   2464   
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
 2351   2465   
new file mode 100644
 2352   2466   
index 0000000..6d675fc
 2353         -
-- /dev/null
        2467  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/query-string-to-sign.txt
 2354   2468   
@@ -0,0 +1,4 @@
        2469  +
AWS4-HMAC-SHA256
        2470  +
20150830T123600Z
        2471  +
20150830/us-east-1/service/aws4_request
        2472  +
c77f27ef2b499fbfee3f0b3c88bba7057b2b31ee9b62047078a5e0d6be91fd58
              \
 No newline at end of file
 2355   2473   
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
 2356   2474   
similarity index 100%
 2357   2475   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/request.txt
 2358   2476   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query-unreserved/request.txt
 2359   2477   
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
 2360   2478   
new file mode 100644
 2361   2479   
index 0000000..0468d80
 2362         -
-- /dev/null
        2480  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/context.json
 2363   2481   
@@ -0,0 +1,12 @@
        2482  +
{
        2483  +
    "credentials": {
        2484  +
        "access_key_id": "AKIDEXAMPLE",
        2485  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2486  +
    },
        2487  +
    "expiration_in_seconds": 3600,
        2488  +
    "normalize": true,
        2489  +
    "region": "us-east-1",
        2490  +
    "service": "service",
        2491  +
    "sign_body": false,
        2492  +
    "timestamp": "2015-08-30T12:36:00Z"
        2493  +
}
              \
 No newline at end of file
 2364   2494   
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
 2365   2495   
similarity index 100%
 2366   2496   
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
 2367   2497   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-canonical-request.txt
 2368   2498   
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
 2369   2499   
new file mode 100644
 2370   2500   
index 0000000..87f295f
 2371         -
-- /dev/null
        2501  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signature.txt
 2372   2502   
@@ -0,0 +1 @@
        2503  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2373   2504   
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
 2374   2505   
new file mode 100644
 2375   2506   
index 0000000..36b86e7
 2376         -
-- /dev/null
        2507  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-signed-request.txt
 2377   2508   
@@ -0,0 +1,5 @@
        2509  +
GET / HTTP/1.1
        2510  +
Host:example.amazonaws.com
        2511  +
X-Amz-Date:20150830T123600Z
        2512  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2513  +
 2378   2514   
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
 2379   2515   
similarity index 100%
 2380   2516   
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
 2381   2517   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/header-string-to-sign.txt
 2382   2518   
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
 2383   2519   
new file mode 100644
 2384   2520   
index 0000000..fb2420d
 2385         -
-- /dev/null
        2521  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-canonical-request.txt
 2386   2522   
@@ -0,0 +1,7 @@
        2523  +
GET
        2524  +
/
        2525  +
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
        2526  +
host:example.amazonaws.com
        2527  +
        2528  +
host
        2529  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2387   2530   
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
 2388   2531   
new file mode 100644
 2389   2532   
index 0000000..da5c905
 2390         -
-- /dev/null
        2533  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signature.txt
 2391   2534   
@@ -0,0 +1 @@
        2535  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2392   2536   
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
 2393   2537   
new file mode 100644
 2394   2538   
index 0000000..eeb7a8f
 2395         -
-- /dev/null
        2539  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-signed-request.txt
 2396   2540   
@@ -0,0 +1,3 @@
        2541  +
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
        2542  +
Host:example.amazonaws.com
        2543  +
 2397   2544   
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
 2398   2545   
new file mode 100644
 2399   2546   
index 0000000..d837e67
 2400         -
-- /dev/null
        2547  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/query-string-to-sign.txt
 2401   2548   
@@ -0,0 +1,4 @@
        2549  +
AWS4-HMAC-SHA256
        2550  +
20150830T123600Z
        2551  +
20150830/us-east-1/service/aws4_request
        2552  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2402   2553   
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
 2403   2554   
similarity index 100%
 2404   2555   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query/request.txt
 2405   2556   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-query/request.txt
 2406   2557   
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
 2407   2558   
new file mode 100644
 2408   2559   
index 0000000..0468d80
 2409         -
-- /dev/null
        2560  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/context.json
 2410   2561   
@@ -0,0 +1,12 @@
        2562  +
{
        2563  +
    "credentials": {
        2564  +
        "access_key_id": "AKIDEXAMPLE",
        2565  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2566  +
    },
        2567  +
    "expiration_in_seconds": 3600,
        2568  +
    "normalize": true,
        2569  +
    "region": "us-east-1",
        2570  +
    "service": "service",
        2571  +
    "sign_body": false,
        2572  +
    "timestamp": "2015-08-30T12:36:00Z"
        2573  +
}
              \
 No newline at end of file
 2411   2574   
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
 2412   2575   
similarity index 100%
 2413   2576   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.creq
 2414   2577   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-canonical-request.txt
 2415   2578   
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
 2416   2579   
new file mode 100644
 2417   2580   
index 0000000..19a2cc9
 2418         -
-- /dev/null
        2581  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signature.txt
 2419   2582   
@@ -0,0 +1 @@
        2583  +
2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
              \
 No newline at end of file
 2420   2584   
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
 2421   2585   
new file mode 100644
 2422   2586   
index 0000000..acb13ee
 2423         -
-- /dev/null
        2587  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-signed-request.txt
 2424   2588   
@@ -0,0 +1,5 @@
        2589  +
GET /?ሴ=bar HTTP/1.1
        2590  +
Host:example.amazonaws.com
        2591  +
X-Amz-Date:20150830T123600Z
        2592  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=2cdec8eed098649ff3a119c94853b13c643bcf08f8b0a1d91e12c9027818dd04
        2593  +
 2425   2594   
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
 2426   2595   
similarity index 100%
 2427   2596   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.sts
 2428   2597   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/header-string-to-sign.txt
 2429   2598   
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
 2430   2599   
new file mode 100644
 2431   2600   
index 0000000..92cee62
 2432         -
-- /dev/null
        2601  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-canonical-request.txt
 2433   2602   
@@ -0,0 +1,7 @@
        2603  +
GET
        2604  +
/
        2605  +
%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
        2606  +
host:example.amazonaws.com
        2607  +
        2608  +
host
        2609  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2434   2610   
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
 2435   2611   
new file mode 100644
 2436   2612   
index 0000000..c9e49de
 2437         -
-- /dev/null
        2613  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signature.txt
 2438   2614   
@@ -0,0 +1 @@
        2615  +
0bdd809b1519ac4f0c1dc3540e2cc46bd0c7f778eda408b2ebf3b913d21ff600
              \
 No newline at end of file
 2439   2616   
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
 2440   2617   
new file mode 100644
 2441   2618   
index 0000000..8f4d8d0
 2442         -
-- /dev/null
        2619  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-signed-request.txt
 2443   2620   
@@ -0,0 +1,3 @@
        2621  +
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
        2622  +
Host:example.amazonaws.com
        2623  +
 2444   2624   
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
 2445   2625   
new file mode 100644
 2446   2626   
index 0000000..a6181dc
 2447         -
-- /dev/null
        2627  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/query-string-to-sign.txt
 2448   2628   
@@ -0,0 +1,4 @@
        2629  +
AWS4-HMAC-SHA256
        2630  +
20150830T123600Z
        2631  +
20150830/us-east-1/service/aws4_request
        2632  +
b2e8ae8e48ec880defebc6f6dc1d9fbc9f1856b33146f2943060ca71a50a7a77
              \
 No newline at end of file
 2449   2633   
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
 2450   2634   
similarity index 64%
 2451   2635   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
 2452   2636   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2453   2637   
index cc2757e..aff333a 100644
 2454         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-utf8-query/get-vanilla-utf8-query.req
        2638  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-utf8-query/request.txt
 2455   2639   
@@ -1,3 +1,2 @@
 2456   2640   
GET /?ሴ=bar HTTP/1.1
 2457   2641   
Host:example.amazonaws.com
 2458         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 2459   2642   
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
 2460   2643   
similarity index 99%
 2461   2644   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/context.json
 2462   2645   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/context.json
 2463   2646   
index a457c8a..a334e18 100644
 2464   2647   
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
 2465   2648   
new file mode 100644
 2466   2649   
index 0000000..ccacdeb
 2467         -
-- /dev/null
        2650  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-canonical-request.txt
 2468   2651   
@@ -0,0 +1,9 @@
        2652  +
GET
        2653  +
/
        2654  +
        2655  +
host:example.amazonaws.com
        2656  +
x-amz-date:20150830T123600Z
        2657  +
x-amz-security-token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2658  +
        2659  +
host;x-amz-date;x-amz-security-token
        2660  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2469   2661   
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
 2470   2662   
new file mode 100644
 2471   2663   
index 0000000..083e30d
 2472         -
-- /dev/null
        2664  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signature.txt
 2473   2665   
@@ -0,0 +1 @@
        2666  +
07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
              \
 No newline at end of file
 2474   2667   
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
 2475   2668   
new file mode 100644
 2476   2669   
index 0000000..5287932
 2477         -
-- /dev/null
        2670  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-signed-request.txt
 2478   2671   
@@ -0,0 +1,6 @@
        2672  +
GET / HTTP/1.1
        2673  +
Host:example.amazonaws.com
        2674  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        2675  +
X-Amz-Date:20150830T123600Z
        2676  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=07ec1639c89043aa0e3e2de82b96708f198cceab042d4a97044c66dd9f74e7f8
        2677  +
 2479   2678   
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
 2480   2679   
new file mode 100644
 2481   2680   
index 0000000..742b880
 2482         -
-- /dev/null
        2681  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/header-string-to-sign.txt
 2483   2682   
@@ -0,0 +1,4 @@
        2683  +
AWS4-HMAC-SHA256
        2684  +
20150830T123600Z
        2685  +
20150830/us-east-1/service/aws4_request
        2686  +
067b36aa60031588cea4a4cde1f21215227a047690c72247f1d70b32fbbfad2b
              \
 No newline at end of file
 2484   2687   
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
 2485   2688   
new file mode 100644
 2486   2689   
index 0000000..5e75179
 2487         -
-- /dev/null
        2690  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-canonical-request.txt
 2488   2691   
@@ -0,0 +1,7 @@
        2692  +
GET
        2693  +
/
        2694  +
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
        2695  +
host:example.amazonaws.com
        2696  +
        2697  +
host
        2698  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2489   2699   
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
 2490   2700   
new file mode 100644
 2491   2701   
index 0000000..50b947f
 2492         -
-- /dev/null
        2702  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signature.txt
 2493   2703   
@@ -0,0 +1 @@
        2704  +
7ff2b50b376cb4d151970630573d6291dc128cc5c2a12ffb237f73cc53f67b6c
              \
 No newline at end of file
 2494   2705   
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
 2495   2706   
new file mode 100644
 2496   2707   
index 0000000..aee910b
 2497         -
-- /dev/null
        2708  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-signed-request.txt
 2498   2709   
@@ -0,0 +1,3 @@
        2710  +
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
        2711  +
Host:example.amazonaws.com
        2712  +
 2499   2713   
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
 2500   2714   
new file mode 100644
 2501   2715   
index 0000000..04a6c17
 2502         -
-- /dev/null
        2716  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/query-string-to-sign.txt
 2503   2717   
@@ -0,0 +1,4 @@
        2718  +
AWS4-HMAC-SHA256
        2719  +
20150830T123600Z
        2720  +
20150830/us-east-1/service/aws4_request
        2721  +
cb30434103085aa9e73780fc60dc9a9df818fd2a7b1de12a9f6f4d791f898761
              \
 No newline at end of file
 2504   2722   
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
 2505   2723   
similarity index 100%
 2506   2724   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/request.txt
 2507   2725   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla-with-session-token/request.txt
 2508   2726   
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
 2509   2727   
new file mode 100644
 2510   2728   
index 0000000..0468d80
 2511         -
-- /dev/null
        2729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/context.json
 2512   2730   
@@ -0,0 +1,12 @@
        2731  +
{
        2732  +
    "credentials": {
        2733  +
        "access_key_id": "AKIDEXAMPLE",
        2734  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2735  +
    },
        2736  +
    "expiration_in_seconds": 3600,
        2737  +
    "normalize": true,
        2738  +
    "region": "us-east-1",
        2739  +
    "service": "service",
        2740  +
    "sign_body": false,
        2741  +
    "timestamp": "2015-08-30T12:36:00Z"
        2742  +
}
              \
 No newline at end of file
 2513   2743   
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
 2514   2744   
similarity index 100%
 2515   2745   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.creq
 2516   2746   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-canonical-request.txt
 2517   2747   
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
 2518   2748   
new file mode 100644
 2519   2749   
index 0000000..87f295f
 2520         -
-- /dev/null
        2750  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signature.txt
 2521   2751   
@@ -0,0 +1 @@
        2752  +
5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
              \
 No newline at end of file
 2522   2753   
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
 2523   2754   
new file mode 100644
 2524   2755   
index 0000000..36b86e7
 2525         -
-- /dev/null
        2756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-signed-request.txt
 2526   2757   
@@ -0,0 +1,5 @@
        2758  +
GET / HTTP/1.1
        2759  +
Host:example.amazonaws.com
        2760  +
X-Amz-Date:20150830T123600Z
        2761  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5fa00fa31553b73ebf1942676e86291e8372ff2a2260956d9b8aae1d763fbf31
        2762  +
 2527   2763   
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
 2528   2764   
similarity index 100%
 2529   2765   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.sts
 2530   2766   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/header-string-to-sign.txt
 2531   2767   
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
 2532   2768   
new file mode 100644
 2533   2769   
index 0000000..fb2420d
 2534         -
-- /dev/null
        2770  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-canonical-request.txt
 2535   2771   
@@ -0,0 +1,7 @@
        2772  +
GET
        2773  +
/
        2774  +
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
        2775  +
host:example.amazonaws.com
        2776  +
        2777  +
host
        2778  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2536   2779   
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
 2537   2780   
new file mode 100644
 2538   2781   
index 0000000..da5c905
 2539         -
-- /dev/null
        2782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signature.txt
 2540   2783   
@@ -0,0 +1 @@
        2784  +
e93c787ed7f371d5c6b165c1b38ede9550f4dce4144713e844b25b7192d3865d
              \
 No newline at end of file
 2541   2785   
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
 2542   2786   
new file mode 100644
 2543   2787   
index 0000000..eeb7a8f
 2544         -
-- /dev/null
        2788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-signed-request.txt
 2545   2789   
@@ -0,0 +1,3 @@
        2790  +
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
        2791  +
Host:example.amazonaws.com
        2792  +
 2546   2793   
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
 2547   2794   
new file mode 100644
 2548   2795   
index 0000000..d837e67
 2549         -
-- /dev/null
        2796  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/query-string-to-sign.txt
 2550   2797   
@@ -0,0 +1,4 @@
        2798  +
AWS4-HMAC-SHA256
        2799  +
20150830T123600Z
        2800  +
20150830/us-east-1/service/aws4_request
        2801  +
bb7705b4aa3cb8e8f5e1e0b3d4c0b64030797a313c8ceee43e33117cc43eadc5
              \
 No newline at end of file
 2551   2802   
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
 2552   2803   
similarity index 100%
 2553   2804   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla/request.txt
 2554   2805   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/get-vanilla/request.txt
 2555   2806   
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
 2556   2807   
new file mode 100644
 2557   2808   
index 0000000..0468d80
 2558         -
-- /dev/null
        2809  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/context.json
 2559   2810   
@@ -0,0 +1,12 @@
        2811  +
{
        2812  +
    "credentials": {
        2813  +
        "access_key_id": "AKIDEXAMPLE",
        2814  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2815  +
    },
        2816  +
    "expiration_in_seconds": 3600,
        2817  +
    "normalize": true,
        2818  +
    "region": "us-east-1",
        2819  +
    "service": "service",
        2820  +
    "sign_body": false,
        2821  +
    "timestamp": "2015-08-30T12:36:00Z"
        2822  +
}
              \
 No newline at end of file
 2560   2823   
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
 2561   2824   
similarity index 100%
 2562   2825   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.creq
 2563   2826   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-canonical-request.txt
 2564   2827   
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
 2565   2828   
new file mode 100644
 2566   2829   
index 0000000..629487f
 2567         -
-- /dev/null
        2830  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signature.txt
 2568   2831   
@@ -0,0 +1 @@
        2832  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2569   2833   
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
 2570   2834   
new file mode 100644
 2571   2835   
index 0000000..0d99b1c
 2572         -
-- /dev/null
        2836  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-signed-request.txt
 2573   2837   
@@ -0,0 +1,5 @@
        2838  +
POST / HTTP/1.1
        2839  +
Host:example.amazonaws.com
        2840  +
X-Amz-Date:20150830T123600Z
        2841  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        2842  +
 2574   2843   
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
 2575   2844   
similarity index 100%
 2576   2845   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.sts
 2577   2846   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/header-string-to-sign.txt
 2578   2847   
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
 2579   2848   
new file mode 100644
 2580   2849   
index 0000000..d3341e7
 2581         -
-- /dev/null
        2850  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-canonical-request.txt
 2582   2851   
@@ -0,0 +1,7 @@
        2852  +
POST
        2853  +
/
        2854  +
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
        2855  +
host:example.amazonaws.com
        2856  +
        2857  +
host
        2858  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2583   2859   
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
 2584   2860   
new file mode 100644
 2585   2861   
index 0000000..79f7e0d
 2586         -
-- /dev/null
        2862  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signature.txt
 2587   2863   
@@ -0,0 +1 @@
        2864  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2588   2865   
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
 2589   2866   
new file mode 100644
 2590   2867   
index 0000000..94f1b21
 2591         -
-- /dev/null
        2868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-signed-request.txt
 2592   2869   
@@ -0,0 +1,3 @@
        2870  +
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
        2871  +
Host:example.amazonaws.com
        2872  +
 2593   2873   
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
 2594   2874   
new file mode 100644
 2595   2875   
index 0000000..e8f335b
 2596         -
-- /dev/null
        2876  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/query-string-to-sign.txt
 2597   2877   
@@ -0,0 +1,4 @@
        2878  +
AWS4-HMAC-SHA256
        2879  +
20150830T123600Z
        2880  +
20150830/us-east-1/service/aws4_request
        2881  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2598   2882   
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
 2599   2883   
similarity index 100%
 2600   2884   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/request.txt
 2601   2885   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-case/request.txt
 2602   2886   
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
 2603   2887   
new file mode 100644
 2604   2888   
index 0000000..0468d80
 2605         -
-- /dev/null
        2889  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/context.json
 2606   2890   
@@ -0,0 +1,12 @@
        2891  +
{
        2892  +
    "credentials": {
        2893  +
        "access_key_id": "AKIDEXAMPLE",
        2894  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2895  +
    },
        2896  +
    "expiration_in_seconds": 3600,
        2897  +
    "normalize": true,
        2898  +
    "region": "us-east-1",
        2899  +
    "service": "service",
        2900  +
    "sign_body": false,
        2901  +
    "timestamp": "2015-08-30T12:36:00Z"
        2902  +
}
              \
 No newline at end of file
 2607   2903   
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
 2608   2904   
similarity index 100%
 2609   2905   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.creq
 2610   2906   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-canonical-request.txt
 2611   2907   
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
 2612   2908   
new file mode 100644
 2613   2909   
index 0000000..e4e6428
 2614         -
-- /dev/null
        2910  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signature.txt
 2615   2911   
@@ -0,0 +1 @@
        2912  +
c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
              \
 No newline at end of file
 2616   2913   
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
 2617   2914   
new file mode 100644
 2618   2915   
index 0000000..e3778f5
 2619         -
-- /dev/null
        2916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-signed-request.txt
 2620   2917   
@@ -0,0 +1,6 @@
        2918  +
POST / HTTP/1.1
        2919  +
Host:example.amazonaws.com
        2920  +
My-Header1:value1
        2921  +
X-Amz-Date:20150830T123600Z
        2922  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=c5410059b04c1ee005303aed430f6e6645f61f4dc9e1461ec8f8916fdf18852c
        2923  +
 2621   2924   
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
 2622   2925   
similarity index 100%
 2623   2926   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.sts
 2624   2927   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/header-string-to-sign.txt
 2625   2928   
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
 2626   2929   
new file mode 100644
 2627   2930   
index 0000000..bd7c937
 2628         -
-- /dev/null
        2931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-canonical-request.txt
 2629   2932   
@@ -0,0 +1,8 @@
        2933  +
POST
        2934  +
/
        2935  +
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
        2936  +
host:example.amazonaws.com
        2937  +
my-header1:value1
        2938  +
        2939  +
host;my-header1
        2940  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2630   2941   
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
 2631   2942   
new file mode 100644
 2632   2943   
index 0000000..0416f13
 2633         -
-- /dev/null
        2944  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signature.txt
 2634   2945   
@@ -0,0 +1 @@
        2946  +
c09d07e0d55871f10f2a6d350d994acf6825a3cae70673d7def55616e6119dd7
              \
 No newline at end of file
 2635   2947   
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
 2636   2948   
new file mode 100644
 2637   2949   
index 0000000..5e6522f
 2638         -
-- /dev/null
        2950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-signed-request.txt
 2639   2951   
@@ -0,0 +1,4 @@
        2952  +
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
        2953  +
Host:example.amazonaws.com
        2954  +
My-Header1:value1
        2955  +
 2640   2956   
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
 2641   2957   
new file mode 100644
 2642   2958   
index 0000000..d06d1df
 2643         -
-- /dev/null
        2959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/query-string-to-sign.txt
 2644   2960   
@@ -0,0 +1,4 @@
        2961  +
AWS4-HMAC-SHA256
        2962  +
20150830T123600Z
        2963  +
20150830/us-east-1/service/aws4_request
        2964  +
1295ed77e4ef8b18b32815e493e0b0f78ee47615c0ecbebfec7c75709eb58c88
              \
 No newline at end of file
 2645   2965   
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
 2646   2966   
similarity index 100%
 2647   2967   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/request.txt
 2648   2968   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-key-sort/request.txt
 2649   2969   
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
 2650   2970   
new file mode 100644
 2651   2971   
index 0000000..0468d80
 2652         -
-- /dev/null
        2972  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/context.json
 2653   2973   
@@ -0,0 +1,12 @@
        2974  +
{
        2975  +
    "credentials": {
        2976  +
        "access_key_id": "AKIDEXAMPLE",
        2977  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        2978  +
    },
        2979  +
    "expiration_in_seconds": 3600,
        2980  +
    "normalize": true,
        2981  +
    "region": "us-east-1",
        2982  +
    "service": "service",
        2983  +
    "sign_body": false,
        2984  +
    "timestamp": "2015-08-30T12:36:00Z"
        2985  +
}
              \
 No newline at end of file
 2654   2986   
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
 2655   2987   
similarity index 100%
 2656   2988   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.creq
 2657   2989   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-canonical-request.txt
 2658   2990   
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
 2659   2991   
new file mode 100644
 2660   2992   
index 0000000..bb3809c
 2661         -
-- /dev/null
        2993  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signature.txt
 2662   2994   
@@ -0,0 +1 @@
        2995  +
cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
              \
 No newline at end of file
 2663   2996   
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
 2664   2997   
new file mode 100644
 2665   2998   
index 0000000..10f6761
 2666         -
-- /dev/null
        2999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-signed-request.txt
 2667   3000   
@@ -0,0 +1,6 @@
        3001  +
POST / HTTP/1.1
        3002  +
Host:example.amazonaws.com
        3003  +
My-Header1:VALUE1
        3004  +
X-Amz-Date:20150830T123600Z
        3005  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date, Signature=cdbc9802e29d2942e5e10b5bccfdd67c5f22c7c4e8ae67b53629efa58b974b7d
        3006  +
 2668   3007   
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
 2669   3008   
similarity index 100%
 2670   3009   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.sts
 2671   3010   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/header-string-to-sign.txt
 2672   3011   
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
 2673   3012   
new file mode 100644
 2674   3013   
index 0000000..f84856f
 2675         -
-- /dev/null
        3014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-canonical-request.txt
 2676   3015   
@@ -0,0 +1,8 @@
        3016  +
POST
        3017  +
/
        3018  +
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
        3019  +
host:example.amazonaws.com
        3020  +
my-header1:VALUE1
        3021  +
        3022  +
host;my-header1
        3023  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2677   3024   
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
 2678   3025   
new file mode 100644
 2679   3026   
index 0000000..a9d3cac
 2680         -
-- /dev/null
        3027  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signature.txt
 2681   3028   
@@ -0,0 +1 @@
        3029  +
0698bc9e4f7f9139065ba2909c0e99da257e8e2a42492a097bcd46d792391fed
              \
 No newline at end of file
 2682   3030   
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
 2683   3031   
new file mode 100644
 2684   3032   
index 0000000..cf96c7c
 2685         -
-- /dev/null
        3033  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-signed-request.txt
 2686   3034   
@@ -0,0 +1,4 @@
        3035  +
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
        3036  +
Host:example.amazonaws.com
        3037  +
My-Header1:VALUE1
        3038  +
 2687   3039   
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
 2688   3040   
new file mode 100644
 2689   3041   
index 0000000..47ef566
 2690         -
-- /dev/null
        3042  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/query-string-to-sign.txt
 2691   3043   
@@ -0,0 +1,4 @@
        3044  +
AWS4-HMAC-SHA256
        3045  +
20150830T123600Z
        3046  +
20150830/us-east-1/service/aws4_request
        3047  +
9d4d1de88f0149695a91a01275fc72dc00fb50bdc78e424f012ec860d5f8c41d
              \
 No newline at end of file
 2692   3048   
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
 2693   3049   
similarity index 100%
 2694   3050   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/request.txt
 2695   3051   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-header-value-case/request.txt
 2696   3052   
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
 2697   3053   
similarity index 100%
 2698   3054   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/context.json
 2699   3055   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/context.json
 2700   3056   
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
 2701   3057   
similarity index 100%
 2702   3058   
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
 2703   3059   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-canonical-request.txt
 2704   3060   
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
 2705   3061   
new file mode 100644
 2706   3062   
index 0000000..629487f
 2707         -
-- /dev/null
        3063  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signature.txt
 2708   3064   
@@ -0,0 +1 @@
        3065  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2709   3066   
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
 2710   3067   
similarity index 67%
 2711   3068   
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
 2712   3069   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2713   3070   
index 291ed07..f96ff9e 100644
 2714         -
-- 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
        3071  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-signed-request.txt
 2715   3072   
@@ -1,5 +1,6 @@
 2716   3073   
POST / HTTP/1.1
 2717   3074   
Host:example.amazonaws.com
 2718         -
X-Amz-Date:20150830T123600Z
 2719   3075   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2720         -
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
        3076  +
X-Amz-Date:20150830T123600Z
        3077  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3078  +
 2721   3079   
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
 2722   3080   
similarity index 100%
 2723   3081   
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
 2724   3082   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/header-string-to-sign.txt
 2725   3083   
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
 2726   3084   
new file mode 100644
 2727   3085   
index 0000000..d3341e7
 2728         -
-- /dev/null
        3086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-canonical-request.txt
 2729   3087   
@@ -0,0 +1,7 @@
        3088  +
POST
        3089  +
/
        3090  +
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
        3091  +
host:example.amazonaws.com
        3092  +
        3093  +
host
        3094  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2730   3095   
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
 2731   3096   
new file mode 100644
 2732   3097   
index 0000000..79f7e0d
 2733         -
-- /dev/null
        3098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signature.txt
 2734   3099   
@@ -0,0 +1 @@
        3100  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2735   3101   
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
 2736   3102   
new file mode 100644
 2737   3103   
index 0000000..4983268
 2738         -
-- /dev/null
        3104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-signed-request.txt
 2739   3105   
@@ -0,0 +1,3 @@
        3106  +
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
        3107  +
Host:example.amazonaws.com
        3108  +
 2740   3109   
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
 2741   3110   
new file mode 100644
 2742   3111   
index 0000000..e8f335b
 2743         -
-- /dev/null
        3112  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/query-string-to-sign.txt
 2744   3113   
@@ -0,0 +1,4 @@
        3114  +
AWS4-HMAC-SHA256
        3115  +
20150830T123600Z
        3116  +
20150830/us-east-1/service/aws4_request
        3117  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2745   3118   
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
 2746   3119   
similarity index 100%
 2747   3120   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/request.txt
 2748   3121   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-after/request.txt
 2749   3122   
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
 2750   3123   
similarity index 100%
 2751   3124   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/context.json
 2752   3125   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/context.json
 2753   3126   
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
 2754   3127   
similarity index 100%
 2755   3128   
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
 2756   3129   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-canonical-request.txt
 2757   3130   
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
 2758   3131   
new file mode 100644
 2759   3132   
index 0000000..85a7c29
 2760         -
-- /dev/null
        3133  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signature.txt
 2761   3134   
@@ -0,0 +1 @@
        3135  +
85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
              \
 No newline at end of file
 2762   3136   
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
 2763   3137   
similarity index 65%
 2764   3138   
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
 2765   3139   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2766   3140   
index 37b2f04..4d0b143 100644
 2767         -
-- 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
        3141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-signed-request.txt
 2768   3142   
@@ -1,5 +1,6 @@
 2769   3143   
POST / HTTP/1.1
 2770   3144   
Host:example.amazonaws.com
 2771         -
X-Amz-Date:20150830T123600Z
 2772   3145   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
 2773         -
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
        3146  +
X-Amz-Date:20150830T123600Z
        3147  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-security-token, Signature=85d96828115b5dc0cfc3bd16ad9e210dd772bbebba041836c64533a82be05ead
        3148  +
 2774   3149   
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
 2775   3150   
similarity index 100%
 2776   3151   
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
 2777   3152   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/header-string-to-sign.txt
 2778   3153   
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
 2779   3154   
new file mode 100644
 2780   3155   
index 0000000..57a7bc3
 2781         -
-- /dev/null
        3156  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-canonical-request.txt
 2782   3157   
@@ -0,0 +1,7 @@
        3158  +
POST
        3159  +
/
        3160  +
X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fus-east-1%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-SignedHeaders=host
        3161  +
host:example.amazonaws.com
        3162  +
        3163  +
host
        3164  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2783   3165   
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
 2784   3166   
new file mode 100644
 2785   3167   
index 0000000..eb905d2
 2786         -
-- /dev/null
        3168  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signature.txt
 2787   3169   
@@ -0,0 +1 @@
        3170  +
46c2e3c63c1dbe7d39f8ada16fe7f001c1f56c5791441565323677f96308871c
              \
 No newline at end of file
 2788   3171   
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
 2789   3172   
new file mode 100644
 2790   3173   
index 0000000..1d80ec0
 2791         -
-- /dev/null
        3174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-signed-request.txt
 2792   3175   
@@ -0,0 +1,3 @@
        3176  +
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
        3177  +
Host:example.amazonaws.com
        3178  +
 2793   3179   
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
 2794   3180   
new file mode 100644
 2795   3181   
index 0000000..bd0239a
 2796         -
-- /dev/null
        3182  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/query-string-to-sign.txt
 2797   3183   
@@ -0,0 +1,4 @@
        3184  +
AWS4-HMAC-SHA256
        3185  +
20150830T123600Z
        3186  +
20150830/us-east-1/service/aws4_request
        3187  +
37f7ba7a2ec89e8b29a0d637bcc70d8e8d0fdba854ddfc5bc06a12398cfe8605
              \
 No newline at end of file
 2798   3188   
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
 2799   3189   
similarity index 100%
 2800   3190   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/request.txt
 2801   3191   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-sts-header-before/request.txt
 2802   3192   
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
 2803   3193   
new file mode 100644
 2804   3194   
index 0000000..0468d80
 2805         -
-- /dev/null
        3195  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/context.json
 2806   3196   
@@ -0,0 +1,12 @@
        3197  +
{
        3198  +
    "credentials": {
        3199  +
        "access_key_id": "AKIDEXAMPLE",
        3200  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3201  +
    },
        3202  +
    "expiration_in_seconds": 3600,
        3203  +
    "normalize": true,
        3204  +
    "region": "us-east-1",
        3205  +
    "service": "service",
        3206  +
    "sign_body": false,
        3207  +
    "timestamp": "2015-08-30T12:36:00Z"
        3208  +
}
              \
 No newline at end of file
 2807   3209   
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
 2808   3210   
similarity index 100%
 2809   3211   
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
 2810   3212   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-canonical-request.txt
 2811   3213   
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
 2812   3214   
new file mode 100644
 2813   3215   
index 0000000..80ed433
 2814         -
-- /dev/null
        3216  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signature.txt
 2815   3217   
@@ -0,0 +1 @@
        3218  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2816   3219   
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
 2817   3220   
new file mode 100644
 2818   3221   
index 0000000..4e614f8
 2819         -
-- /dev/null
        3222  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/header-signed-request.txt
 2820   3223   
@@ -0,0 +1,5 @@
        3224  +
POST /?Param1=value1 HTTP/1.1
        3225  +
Host:example.amazonaws.com
        3226  +
X-Amz-Date:20150830T123600Z
        3227  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3228  +
 2821   3229   
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
 2822   3230   
similarity index 100%
 2823   3231   
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
 2824   3232   
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
 2825   3233   
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
 2826   3234   
new file mode 100644
 2827   3235   
index 0000000..be66403
 2828         -
-- /dev/null
        3236  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-canonical-request.txt
 2829   3237   
@@ -0,0 +1,7 @@
        3238  +
POST
        3239  +
/
        3240  +
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
        3241  +
host:example.amazonaws.com
        3242  +
        3243  +
host
        3244  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2830   3245   
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
 2831   3246   
new file mode 100644
 2832   3247   
index 0000000..20fd32b
 2833         -
-- /dev/null
        3248  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signature.txt
 2834   3249   
@@ -0,0 +1 @@
        3250  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2835   3251   
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
 2836   3252   
new file mode 100644
 2837   3253   
index 0000000..d1148d0
 2838         -
-- /dev/null
        3254  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-signed-request.txt
 2839   3255   
@@ -0,0 +1,3 @@
        3256  +
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
        3257  +
Host:example.amazonaws.com
        3258  +
 2840   3259   
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
 2841   3260   
new file mode 100644
 2842   3261   
index 0000000..1a77103
 2843         -
-- /dev/null
        3262  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/query-string-to-sign.txt
 2844   3263   
@@ -0,0 +1,4 @@
        3264  +
AWS4-HMAC-SHA256
        3265  +
20150830T123600Z
        3266  +
20150830/us-east-1/service/aws4_request
        3267  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2845   3268   
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
 2846   3269   
similarity index 100%
 2847   3270   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/request.txt
 2848   3271   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-empty-query-value/request.txt
 2849   3272   
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
 2850   3273   
new file mode 100644
 2851   3274   
index 0000000..0468d80
 2852         -
-- /dev/null
        3275  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/context.json
 2853   3276   
@@ -0,0 +1,12 @@
        3277  +
{
        3278  +
    "credentials": {
        3279  +
        "access_key_id": "AKIDEXAMPLE",
        3280  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3281  +
    },
        3282  +
    "expiration_in_seconds": 3600,
        3283  +
    "normalize": true,
        3284  +
    "region": "us-east-1",
        3285  +
    "service": "service",
        3286  +
    "sign_body": false,
        3287  +
    "timestamp": "2015-08-30T12:36:00Z"
        3288  +
}
              \
 No newline at end of file
 2854   3289   
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
 2855   3290   
similarity index 100%
 2856   3291   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.creq
 2857   3292   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-canonical-request.txt
 2858   3293   
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
 2859   3294   
new file mode 100644
 2860   3295   
index 0000000..80ed433
 2861         -
-- /dev/null
        3296  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signature.txt
 2862   3297   
@@ -0,0 +1 @@
        3298  +
28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
              \
 No newline at end of file
 2863   3299   
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
 2864   3300   
new file mode 100644
 2865   3301   
index 0000000..4e614f8
 2866         -
-- /dev/null
        3302  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-signed-request.txt
 2867   3303   
@@ -0,0 +1,5 @@
        3304  +
POST /?Param1=value1 HTTP/1.1
        3305  +
Host:example.amazonaws.com
        3306  +
X-Amz-Date:20150830T123600Z
        3307  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=28038455d6de14eafc1f9222cf5aa6f1a96197d7deb8263271d420d138af7f11
        3308  +
 2868   3309   
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
 2869   3310   
similarity index 100%
 2870   3311   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.sts
 2871   3312   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/header-string-to-sign.txt
 2872   3313   
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
 2873   3314   
new file mode 100644
 2874   3315   
index 0000000..be66403
 2875         -
-- /dev/null
        3316  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-canonical-request.txt
 2876   3317   
@@ -0,0 +1,7 @@
        3318  +
POST
        3319  +
/
        3320  +
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
        3321  +
host:example.amazonaws.com
        3322  +
        3323  +
host
        3324  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2877   3325   
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
 2878   3326   
new file mode 100644
 2879   3327   
index 0000000..20fd32b
 2880         -
-- /dev/null
        3328  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signature.txt
 2881   3329   
@@ -0,0 +1 @@
        3330  +
a9ef26247f293bffe40eeff86a0480ba8c14d31503b2e0c3399e3a16bf1a3682
              \
 No newline at end of file
 2882   3331   
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
 2883   3332   
new file mode 100644
 2884   3333   
index 0000000..d1148d0
 2885         -
-- /dev/null
        3334  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-signed-request.txt
 2886   3335   
@@ -0,0 +1,3 @@
        3336  +
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
        3337  +
Host:example.amazonaws.com
        3338  +
 2887   3339   
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
 2888   3340   
new file mode 100644
 2889   3341   
index 0000000..1a77103
 2890         -
-- /dev/null
        3342  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/query-string-to-sign.txt
 2891   3343   
@@ -0,0 +1,4 @@
        3344  +
AWS4-HMAC-SHA256
        3345  +
20150830T123600Z
        3346  +
20150830/us-east-1/service/aws4_request
        3347  +
98241d1c6f938789d34b92e16e08b7fc8fdaa774c5437ba30d505eedae43dd2b
              \
 No newline at end of file
 2892   3348   
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
 2893   3349   
similarity index 100%
 2894   3350   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/request.txt
 2895   3351   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla-query/request.txt
 2896   3352   
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
 2897   3353   
new file mode 100644
 2898   3354   
index 0000000..0468d80
 2899         -
-- /dev/null
        3355  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/context.json
 2900   3356   
@@ -0,0 +1,12 @@
        3357  +
{
        3358  +
    "credentials": {
        3359  +
        "access_key_id": "AKIDEXAMPLE",
        3360  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3361  +
    },
        3362  +
    "expiration_in_seconds": 3600,
        3363  +
    "normalize": true,
        3364  +
    "region": "us-east-1",
        3365  +
    "service": "service",
        3366  +
    "sign_body": false,
        3367  +
    "timestamp": "2015-08-30T12:36:00Z"
        3368  +
}
              \
 No newline at end of file
 2901   3369   
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
 2902   3370   
similarity index 100%
 2903   3371   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.creq
 2904   3372   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-canonical-request.txt
 2905   3373   
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
 2906   3374   
new file mode 100644
 2907   3375   
index 0000000..629487f
 2908         -
-- /dev/null
        3376  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signature.txt
 2909   3377   
@@ -0,0 +1 @@
        3378  +
5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
              \
 No newline at end of file
 2910   3379   
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
 2911   3380   
new file mode 100644
 2912   3381   
index 0000000..0d99b1c
 2913         -
-- /dev/null
        3382  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-signed-request.txt
 2914   3383   
@@ -0,0 +1,5 @@
        3384  +
POST / HTTP/1.1
        3385  +
Host:example.amazonaws.com
        3386  +
X-Amz-Date:20150830T123600Z
        3387  +
Authorization:AWS4-HMAC-SHA256 Credential=AKIDEXAMPLE/20150830/us-east-1/service/aws4_request, SignedHeaders=host;x-amz-date, Signature=5da7c1a2acd57cee7505fc6676e4e544621c30862966e37dddb68e92efbe5d6b
        3388  +
 2915   3389   
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
 2916   3390   
similarity index 100%
 2917   3391   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.sts
 2918   3392   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/header-string-to-sign.txt
 2919   3393   
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
 2920   3394   
new file mode 100644
 2921   3395   
index 0000000..d3341e7
 2922         -
-- /dev/null
        3396  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-canonical-request.txt
 2923   3397   
@@ -0,0 +1,7 @@
        3398  +
POST
        3399  +
/
        3400  +
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
        3401  +
host:example.amazonaws.com
        3402  +
        3403  +
host
        3404  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 2924   3405   
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
 2925   3406   
new file mode 100644
 2926   3407   
index 0000000..79f7e0d
 2927         -
-- /dev/null
        3408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signature.txt
 2928   3409   
@@ -0,0 +1 @@
        3410  +
2ce6e6d2e0cf2f9d1b55fafec88cd20574c31dc2e7631979f71ba2310083e95b
              \
 No newline at end of file
 2929   3411   
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
 2930   3412   
new file mode 100644
 2931   3413   
index 0000000..94f1b21
 2932         -
-- /dev/null
        3414  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-signed-request.txt
 2933   3415   
@@ -0,0 +1,3 @@
        3416  +
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
        3417  +
Host:example.amazonaws.com
        3418  +
 2934   3419   
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
 2935   3420   
new file mode 100644
 2936   3421   
index 0000000..e8f335b
 2937         -
-- /dev/null
        3422  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/query-string-to-sign.txt
 2938   3423   
@@ -0,0 +1,4 @@
        3424  +
AWS4-HMAC-SHA256
        3425  +
20150830T123600Z
        3426  +
20150830/us-east-1/service/aws4_request
        3427  +
d27fc6fe1afc1d88b248c5ae9194ec0943a693dd6d81d8d815c88a369eb0471e
              \
 No newline at end of file
 2939   3428   
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
 2940   3429   
similarity index 100%
 2941   3430   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/request.txt
 2942   3431   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-vanilla/request.txt
 2943   3432   
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
 2944   3433   
similarity index 99%
 2945   3434   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/context.json
 2946   3435   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/context.json
 2947   3436   
index fc4bce6..0db1df1 100644
 2948   3437   
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
 2949   3438   
new file mode 100644
 2950   3439   
index 0000000..c218fdf
 2951         -
-- /dev/null
        3440  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 2952   3441   
@@ -0,0 +1,11 @@
        3442  +
POST
        3443  +
/
        3444  +
        3445  +
content-length:13
        3446  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3447  +
host:example.amazonaws.com
        3448  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3449  +
x-amz-date:20150830T123600Z
        3450  +
        3451  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3452  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2953   3453   
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
 2954   3454   
new file mode 100644
 2955   3455   
index 0000000..836aa8b
 2956         -
-- /dev/null
        3456  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signature.txt
 2957   3457   
@@ -0,0 +1 @@
        3458  +
328d1b9eaadca9f5818ef05e8392801e091653bafec24fcab71e7344e7f51422
              \
 No newline at end of file
 2958   3459   
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
 2959   3460   
new file mode 100644
 2960   3461   
index 0000000..9262d53
 2961         -
-- /dev/null
        3462  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 2962   3463   
@@ -0,0 +1,9 @@
        3464  +
POST / HTTP/1.1
        3465  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3466  +
Host:example.amazonaws.com
        3467  +
Content-Length:13
        3468  +
X-Amz-Date:20150830T123600Z
        3469  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3470  +
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
        3471  +
        3472  +
Param1=value1
              \
 No newline at end of file
 2963   3473   
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
 2964   3474   
new file mode 100644
 2965   3475   
index 0000000..ddbdccc
 2966         -
-- /dev/null
        3476  +
++ 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
 2967   3477   
@@ -0,0 +1,4 @@
        3478  +
AWS4-HMAC-SHA256
        3479  +
20150830T123600Z
        3480  +
20150830/us-east-1/service/aws4_request
        3481  +
a89f1a5b53e37702ee6363ce1da3ce8f54386f3c8f352ae652153c2982a0bc4d
              \
 No newline at end of file
 2968   3482   
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
 2969   3483   
new file mode 100644
 2970   3484   
index 0000000..596a579
 2971         -
-- /dev/null
        3485  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 2972   3486   
@@ -0,0 +1,9 @@
        3487  +
POST
        3488  +
/
        3489  +
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
        3490  +
content-length:13
        3491  +
content-type:application/x-www-form-urlencoded; charset=utf-8
        3492  +
host:example.amazonaws.com
        3493  +
        3494  +
content-length;content-type;host
        3495  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 2973   3496   
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
 2974   3497   
new file mode 100644
 2975   3498   
index 0000000..bc85cd8
 2976         -
-- /dev/null
        3499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signature.txt
 2977   3500   
@@ -0,0 +1 @@
        3501  +
0dbeb9b026c7b6675f266b8427efec9b4fa8b1f6ef1477d717aea231106eab4d
              \
 No newline at end of file
 2978   3502   
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
 2979   3503   
new file mode 100644
 2980   3504   
index 0000000..16b59e5
 2981         -
-- /dev/null
        3505  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 2982   3506   
@@ -0,0 +1,6 @@
        3507  +
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
        3508  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        3509  +
Host:example.amazonaws.com
        3510  +
Content-Length:13
        3511  +
        3512  +
Param1=value1
              \
 No newline at end of file
 2983   3513   
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
 2984   3514   
new file mode 100644
 2985   3515   
index 0000000..50074af
 2986         -
-- /dev/null
        3516  +
++ 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
 2987   3517   
@@ -0,0 +1,4 @@
        3518  +
AWS4-HMAC-SHA256
        3519  +
20150830T123600Z
        3520  +
20150830/us-east-1/service/aws4_request
        3521  +
32192353b8ae6d857fac1c71cda066e6af2d3a3127ea7ac1fee22621ab4f05dc
              \
 No newline at end of file
 2988   3522   
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
 2989   3523   
similarity index 89%
 2990   3524   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/request.txt
 2991   3525   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded-parameters/request.txt
 2992   3526   
index b711c25..8289eaa 100644
 2993   3527   
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
 2994   3528   
similarity index 99%
 2995   3529   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/context.json
 2996   3530   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/context.json
 2997   3531   
index fc4bce6..0db1df1 100644
 2998   3532   
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
 2999   3533   
new file mode 100644
 3000   3534   
index 0000000..4d116a5
 3001         -
-- /dev/null
        3535  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-canonical-request.txt
 3002   3536   
@@ -0,0 +1,11 @@
        3537  +
POST
        3538  +
/
        3539  +
        3540  +
content-length:13
        3541  +
content-type:application/x-www-form-urlencoded
        3542  +
host:example.amazonaws.com
        3543  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3544  +
x-amz-date:20150830T123600Z
        3545  +
        3546  +
content-length;content-type;host;x-amz-content-sha256;x-amz-date
        3547  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3003   3548   
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
 3004   3549   
new file mode 100644
 3005   3550   
index 0000000..0d2ac37
 3006         -
-- /dev/null
        3551  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signature.txt
 3007   3552   
@@ -0,0 +1 @@
        3553  +
d3875051da38690788ef43de4db0d8f280229d82040bfac253562e56c3f20e0b
              \
 No newline at end of file
 3008   3554   
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
 3009   3555   
new file mode 100644
 3010   3556   
index 0000000..bd5e49c
 3011         -
-- /dev/null
        3557  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-signed-request.txt
 3012   3558   
@@ -0,0 +1,9 @@
        3559  +
POST / HTTP/1.1
        3560  +
Content-Type:application/x-www-form-urlencoded
        3561  +
Host:example.amazonaws.com
        3562  +
Content-Length:13
        3563  +
X-Amz-Date:20150830T123600Z
        3564  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        3565  +
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
        3566  +
        3567  +
Param1=value1
              \
 No newline at end of file
 3013   3568   
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
 3014   3569   
new file mode 100644
 3015   3570   
index 0000000..f1c599c
 3016         -
-- /dev/null
        3571  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/header-string-to-sign.txt
 3017   3572   
@@ -0,0 +1,4 @@
        3573  +
AWS4-HMAC-SHA256
        3574  +
20150830T123600Z
        3575  +
20150830/us-east-1/service/aws4_request
        3576  +
b1edd1d03544c25390e32085d55b57acc9a3961bb59415ff86c45c3d89d16cfb
              \
 No newline at end of file
 3018   3577   
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
 3019   3578   
new file mode 100644
 3020   3579   
index 0000000..1fc1bb7
 3021         -
-- /dev/null
        3580  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-canonical-request.txt
 3022   3581   
@@ -0,0 +1,9 @@
        3582  +
POST
        3583  +
/
        3584  +
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
        3585  +
content-length:13
        3586  +
content-type:application/x-www-form-urlencoded
        3587  +
host:example.amazonaws.com
        3588  +
        3589  +
content-length;content-type;host
        3590  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 3023   3591   
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
 3024   3592   
new file mode 100644
 3025   3593   
index 0000000..98c91b3
 3026         -
-- /dev/null
        3594  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signature.txt
 3027   3595   
@@ -0,0 +1 @@
        3596  +
89a40deed0f26f9461242825a082d2222717248abc7ab41f552ad84a94ad46e9
              \
 No newline at end of file
 3028   3597   
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
 3029   3598   
new file mode 100644
 3030   3599   
index 0000000..055cd7a
 3031         -
-- /dev/null
        3600  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-signed-request.txt
 3032   3601   
@@ -0,0 +1,6 @@
        3602  +
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
        3603  +
Content-Type:application/x-www-form-urlencoded
        3604  +
Host:example.amazonaws.com
        3605  +
Content-Length:13
        3606  +
        3607  +
Param1=value1
              \
 No newline at end of file
 3033   3608   
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
 3034   3609   
new file mode 100644
 3035   3610   
index 0000000..db7fc27
 3036         -
-- /dev/null
        3611  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/query-string-to-sign.txt
 3037   3612   
@@ -0,0 +1,4 @@
        3613  +
AWS4-HMAC-SHA256
        3614  +
20150830T123600Z
        3615  +
20150830/us-east-1/service/aws4_request
        3616  +
ee5059a7c437165a28d0e775e6498be428761255d657d8c04cb1baa41de6514c
              \
 No newline at end of file
 3038   3617   
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
 3039   3618   
similarity index 88%
 3040   3619   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/request.txt
 3041   3620   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4/post-x-www-form-urlencoded/request.txt
 3042   3621   
index 0091102..760b2d3 100644
 3043   3622   
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
 3044   3623   
new file mode 100644
 3045   3624   
index 0000000..0468d80
 3046         -
-- /dev/null
        3625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/context.json
 3047   3626   
@@ -0,0 +1,12 @@
        3627  +
{
        3628  +
    "credentials": {
        3629  +
        "access_key_id": "AKIDEXAMPLE",
        3630  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3631  +
    },
        3632  +
    "expiration_in_seconds": 3600,
        3633  +
    "normalize": true,
        3634  +
    "region": "us-east-1",
        3635  +
    "service": "service",
        3636  +
    "sign_body": false,
        3637  +
    "timestamp": "2015-08-30T12:36:00Z"
        3638  +
}
              \
 No newline at end of file
 3048   3639   
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
 3049   3640   
similarity index 99%
 3050   3641   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-canonical-request.txt
 3051   3642   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-canonical-request.txt
 3052   3643   
index ccb5f43..1bc448e 100644
 3053   3644   
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
 3054   3645   
new file mode 100644
 3055   3646   
index 0000000..489c182
 3056         -
-- /dev/null
        3647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signature.txt
 3057   3648   
@@ -0,0 +1 @@
        3649  +
304502204862ad283a21f883fc12f1156a6f3fcdbba13d1847e58aa5eb37c666477ea06b022100ee439fac0a975c9a6605b1fa44ad7b654a1f8ac6e868e4e1069a1b3aa35d8113
              \
 No newline at end of file
 3058   3650   
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
 3059   3651   
new file mode 100644
 3060   3652   
index 0000000..e1b8dbf
 3061         -
-- /dev/null
        3653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-signed-request.txt
 3062   3654   
@@ -0,0 +1,9 @@
        3655  +
GET / HTTP/1.1
        3656  +
Host:example.amazonaws.com
        3657  +
My-Header1:value2
        3658  +
My-Header1:value2
        3659  +
My-Header1:value1
        3660  +
X-Amz-Date:20150830T123600Z
        3661  +
X-Amz-Region-Set:us-east-1
        3662  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=30450220331da6dfebb0d19e5e161b1efa389ccb83cadb60bc71f6791ef71ac6054c44de0221008588b7d5c9f7a79ca9c02a02efbd0f540cda242a64ca1452aa914e050b517724
        3663  +
 3063   3664   
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
 3064   3665   
similarity index 99%
 3065   3666   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/header-string-to-sign.txt
 3066   3667   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/header-string-to-sign.txt
 3067   3668   
index 8783461..bfc4619 100644
 3068   3669   
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
 3069   3670   
new file mode 100644
 3070   3671   
index 0000000..379dcb2
 3071         -
-- /dev/null
        3672  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/public-key.json
 3072   3673   
@@ -0,0 +1,4 @@
        3674  +
{
        3675  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3676  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3677  +
}
 3073   3678   
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
 3074   3679   
similarity index 99%
 3075   3680   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-canonical-request.txt
 3076   3681   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-canonical-request.txt
 3077   3682   
index 9561297..c05c3f5 100644
 3078   3683   
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
 3079   3684   
new file mode 100644
 3080   3685   
index 0000000..de9a4c3
 3081         -
-- /dev/null
        3686  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signature.txt
 3082   3687   
@@ -0,0 +1 @@
        3688  +
3045022100e1e03fa80218cb464404dc4badbdf443f5f5bb504840a2b3803565a28be0388d022063399d4fb8b974906e87a8d67bf7e95334d9dc620817ef92eb2bc6affb1c6a10
              \
 No newline at end of file
 3083   3689   
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
 3084   3690   
new file mode 100644
 3085   3691   
index 0000000..6c6b8c4
 3086         -
-- /dev/null
        3692  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-signed-request.txt
 3087   3693   
@@ -0,0 +1,6 @@
        3694  +
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
        3695  +
Host:example.amazonaws.com
        3696  +
My-Header1:value2
        3697  +
My-Header1:value2
        3698  +
My-Header1:value1
        3699  +
 3088   3700   
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
 3089   3701   
similarity index 99%
 3090   3702   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-key-duplicate/query-string-to-sign.txt
 3091   3703   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/query-string-to-sign.txt
 3092   3704   
index 3140f6f..4eef106 100644
 3093   3705   
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
 3094   3706   
similarity index 78%
 3095   3707   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
 3096   3708   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3097   3709   
index 08a0364..40455ce 100644
 3098         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-key-duplicate/get-header-key-duplicate.req
        3710  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-key-duplicate/request.txt
 3099   3711   
@@ -1,6 +1,5 @@
 3100   3712   
GET / HTTP/1.1
 3101   3713   
Host:example.amazonaws.com
 3102   3714   
My-Header1:value2
 3103   3715   
My-Header1:value2
 3104   3716   
My-Header1:value1
 3105         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3106   3717   
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
 3107   3718   
new file mode 100644
 3108   3719   
index 0000000..0468d80
 3109         -
-- /dev/null
        3720  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/context.json
 3110   3721   
@@ -0,0 +1,12 @@
        3722  +
{
        3723  +
    "credentials": {
        3724  +
        "access_key_id": "AKIDEXAMPLE",
        3725  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3726  +
    },
        3727  +
    "expiration_in_seconds": 3600,
        3728  +
    "normalize": true,
        3729  +
    "region": "us-east-1",
        3730  +
    "service": "service",
        3731  +
    "sign_body": false,
        3732  +
    "timestamp": "2015-08-30T12:36:00Z"
        3733  +
}
              \
 No newline at end of file
 3111   3734   
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
 3112   3735   
new file mode 100644
 3113   3736   
index 0000000..69526cd
 3114         -
-- /dev/null
        3737  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-canonical-request.txt
 3115   3738   
@@ -0,0 +1,10 @@
        3739  +
GET
        3740  +
/
        3741  +
        3742  +
host:example.amazonaws.com
        3743  +
my-header1:value1 value2 value3
        3744  +
x-amz-date:20150830T123600Z
        3745  +
x-amz-region-set:us-east-1
        3746  +
        3747  +
host;my-header1;x-amz-date;x-amz-region-set
        3748  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3116   3749   
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
 3117   3750   
new file mode 100644
 3118   3751   
index 0000000..d51b4f3
 3119         -
-- /dev/null
        3752  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signature.txt
 3120   3753   
@@ -0,0 +1 @@
        3754  +
304502206a2d7c3572ebcb9a1f34e5fa744250c3fb2f403a0a7e4b0bc196286846a996a8022100d94aacba36ff453394df27966e9cccd7c6065457b6fe828aebe107307cc5e8e9
              \
 No newline at end of file
 3121   3755   
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
 3122   3756   
new file mode 100644
 3123   3757   
index 0000000..8131420
 3124         -
-- /dev/null
        3758  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-signed-request.txt
 3125   3759   
@@ -0,0 +1,9 @@
        3760  +
GET / HTTP/1.1
        3761  +
Host:example.amazonaws.com
        3762  +
My-Header1:value1
        3763  +
  value2
        3764  +
     value3
        3765  +
X-Amz-Date:20150830T123600Z
        3766  +
X-Amz-Region-Set:us-east-1
        3767  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022060b9f2f480a395bf34aa42074697f923c2355e26970987461ce904a6a2eeef52022100fc7ef73838bbfba208a8cf8f3edbe1c8879be7853b677f492db93c30df6fbe02
        3768  +
 3126   3769   
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
 3127   3770   
new file mode 100644
 3128   3771   
index 0000000..e4d99fa
 3129         -
-- /dev/null
        3772  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/header-string-to-sign.txt
 3130   3773   
@@ -0,0 +1,4 @@
        3774  +
AWS4-ECDSA-P256-SHA256
        3775  +
20150830T123600Z
        3776  +
20150830/service/aws4_request
        3777  +
3579d4751dd7db30860b89a17b53647c70fd8363ec485836dbf68cfd22313398
              \
 No newline at end of file
 3131   3778   
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
 3132   3779   
new file mode 100644
 3133   3780   
index 0000000..379dcb2
 3134         -
-- /dev/null
        3781  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/public-key.json
 3135   3782   
@@ -0,0 +1,4 @@
        3783  +
{
        3784  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3785  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3786  +
}
 3136   3787   
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
 3137   3788   
new file mode 100644
 3138   3789   
index 0000000..3c4d52f
 3139         -
-- /dev/null
        3790  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-canonical-request.txt
 3140   3791   
@@ -0,0 +1,8 @@
        3792  +
GET
        3793  +
/
        3794  +
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
        3795  +
host:example.amazonaws.com
        3796  +
my-header1:value1 value2 value3
        3797  +
        3798  +
host;my-header1
        3799  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3141   3800   
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
 3142   3801   
new file mode 100644
 3143   3802   
index 0000000..4e63f9a
 3144         -
-- /dev/null
        3803  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signature.txt
 3145   3804   
@@ -0,0 +1 @@
        3805  +
30450220159829015456fd111a27c4e0d6a555da894aefd23c96c5eb915b94bf6788499a022100fd48a0b97d1c32a11ee33873f87953a3ef410978f226b4a708acb9e582828fde
              \
 No newline at end of file
 3146   3806   
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
 3147   3807   
new file mode 100644
 3148   3808   
index 0000000..adf1f09
 3149         -
-- /dev/null
        3809  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-signed-request.txt
 3150   3810   
@@ -0,0 +1,6 @@
        3811  +
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
        3812  +
Host:example.amazonaws.com
        3813  +
My-Header1:value1
        3814  +
  value2
        3815  +
     value3
        3816  +
 3151   3817   
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
 3152   3818   
new file mode 100644
 3153   3819   
index 0000000..e085407
 3154         -
-- /dev/null
        3820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/query-string-to-sign.txt
 3155   3821   
@@ -0,0 +1,4 @@
        3822  +
AWS4-ECDSA-P256-SHA256
        3823  +
20150830T123600Z
        3824  +
20150830/service/aws4_request
        3825  +
960c3db8a6ce71c62c4bc13e5f2a72231a8f1a644d52e688ac1524ecd4b09643
              \
 No newline at end of file
 3156   3826   
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
 3157   3827   
new file mode 100644
 3158   3828   
index 0000000..b5026cd
 3159         -
-- /dev/null
        3829  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-multiline/request.txt
 3160   3830   
@@ -0,0 +1,5 @@
        3831  +
GET / HTTP/1.1
        3832  +
Host:example.amazonaws.com
        3833  +
My-Header1:value1
        3834  +
  value2
        3835  +
     value3
 3161   3836   
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
 3162   3837   
new file mode 100644
 3163   3838   
index 0000000..0468d80
 3164         -
-- /dev/null
        3839  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/context.json
 3165   3840   
@@ -0,0 +1,12 @@
        3841  +
{
        3842  +
    "credentials": {
        3843  +
        "access_key_id": "AKIDEXAMPLE",
        3844  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3845  +
    },
        3846  +
    "expiration_in_seconds": 3600,
        3847  +
    "normalize": true,
        3848  +
    "region": "us-east-1",
        3849  +
    "service": "service",
        3850  +
    "sign_body": false,
        3851  +
    "timestamp": "2015-08-30T12:36:00Z"
        3852  +
}
              \
 No newline at end of file
 3166   3853   
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
 3167   3854   
similarity index 99%
 3168   3855   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-canonical-request.txt
 3169   3856   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-canonical-request.txt
 3170   3857   
index 9375193..533afdb 100644
 3171   3858   
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
 3172   3859   
new file mode 100644
 3173   3860   
index 0000000..057b426
 3174         -
-- /dev/null
        3861  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signature.txt
 3175   3862   
@@ -0,0 +1 @@
        3863  +
3045022005e72f83b232f1fa01d7344267d44a46fa4c193bc3d0ad256e89f92a561eb8fa022100c62a85a22a6018463df69c97da07cd189185dadeede293c659e15514cd28a0c9
              \
 No newline at end of file
 3176   3864   
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
 3177   3865   
new file mode 100644
 3178   3866   
index 0000000..4e4ccf0
 3179         -
-- /dev/null
        3867  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-signed-request.txt
 3180   3868   
@@ -0,0 +1,10 @@
        3869  +
GET / HTTP/1.1
        3870  +
Host:example.amazonaws.com
        3871  +
My-Header1:value4
        3872  +
My-Header1:value1
        3873  +
My-Header1:value3
        3874  +
My-Header1:value2
        3875  +
X-Amz-Date:20150830T123600Z
        3876  +
X-Amz-Region-Set:us-east-1
        3877  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=304402203410301a4cfc805996d0ac5305374d7cdff4e2564fcbd6f6cfed73b227966046022046e36b2ede1f78d2b68ea4534ae59da3de089e58f67ae08490411dfabd77f36e
        3878  +
 3181   3879   
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
 3182   3880   
similarity index 99%
 3183   3881   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/header-string-to-sign.txt
 3184   3882   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/header-string-to-sign.txt
 3185   3883   
index 6400baf..e68c952 100644
 3186   3884   
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
 3187   3885   
new file mode 100644
 3188   3886   
index 0000000..379dcb2
 3189         -
-- /dev/null
        3887  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/public-key.json
 3190   3888   
@@ -0,0 +1,4 @@
        3889  +
{
        3890  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3891  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3892  +
}
 3191   3893   
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
 3192   3894   
similarity index 99%
 3193   3895   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-canonical-request.txt
 3194   3896   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-canonical-request.txt
 3195   3897   
index ecf494a..68450fe 100644
 3196   3898   
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
 3197   3899   
new file mode 100644
 3198   3900   
index 0000000..9df2eb3
 3199         -
-- /dev/null
        3901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signature.txt
 3200   3902   
@@ -0,0 +1 @@
        3903  +
3045022044e0c722f2d02673c326d0ac38aae57e2877e158b700de702e5dd082be680f65022100841bb5007fb5ece1078add2bf38e84f1b7ea13e67b935d1fd021014eedee46a4
              \
 No newline at end of file
 3201   3904   
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
 3202   3905   
new file mode 100644
 3203   3906   
index 0000000..62f8cb7
 3204         -
-- /dev/null
        3907  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-signed-request.txt
 3205   3908   
@@ -0,0 +1,7 @@
        3909  +
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
        3910  +
Host:example.amazonaws.com
        3911  +
My-Header1:value4
        3912  +
My-Header1:value1
        3913  +
My-Header1:value3
        3914  +
My-Header1:value2
        3915  +
 3206   3916   
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
 3207   3917   
similarity index 99%
 3208   3918   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-order/query-string-to-sign.txt
 3209   3919   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/query-string-to-sign.txt
 3210   3920   
index b584179..2bcf7b1 100644
 3211   3921   
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
 3212   3922   
similarity index 80%
 3213   3923   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
 3214   3924   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3215   3925   
index f7bd9e6..2c6f49d 100644
 3216         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-order/get-header-value-order.req
        3926  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-order/request.txt
 3217   3927   
@@ -1,7 +1,6 @@
 3218   3928   
GET / HTTP/1.1
 3219   3929   
Host:example.amazonaws.com
 3220   3930   
My-Header1:value4
 3221   3931   
My-Header1:value1
 3222   3932   
My-Header1:value3
 3223   3933   
My-Header1:value2
 3224         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3225   3934   
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
 3226   3935   
new file mode 100644
 3227   3936   
index 0000000..0468d80
 3228         -
-- /dev/null
        3937  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/context.json
 3229   3938   
@@ -0,0 +1,12 @@
        3939  +
{
        3940  +
    "credentials": {
        3941  +
        "access_key_id": "AKIDEXAMPLE",
        3942  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        3943  +
    },
        3944  +
    "expiration_in_seconds": 3600,
        3945  +
    "normalize": true,
        3946  +
    "region": "us-east-1",
        3947  +
    "service": "service",
        3948  +
    "sign_body": false,
        3949  +
    "timestamp": "2015-08-30T12:36:00Z"
        3950  +
}
              \
 No newline at end of file
 3230   3951   
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
 3231   3952   
similarity index 99%
 3232   3953   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-canonical-request.txt
 3233   3954   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-canonical-request.txt
 3234   3955   
index e91e952..94b6be5 100644
 3235   3956   
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
 3236   3957   
new file mode 100644
 3237   3958   
index 0000000..bf8c3cb
 3238         -
-- /dev/null
        3959  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signature.txt
 3239   3960   
@@ -0,0 +1 @@
        3961  +
3046022100f05cfb8a9a49ee4540c49ed27e612ddd1a2d168512bad65a96cdf8378254a4bd022100a3eb663e6734125d467fc00d5a41dc6bf476ec167d5c20657ff3135c8b4f7815
              \
 No newline at end of file
 3240   3962   
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
 3241   3963   
new file mode 100644
 3242   3964   
index 0000000..f7f054d
 3243         -
-- /dev/null
        3965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-signed-request.txt
 3244   3966   
@@ -0,0 +1,8 @@
        3967  +
GET / HTTP/1.1
        3968  +
Host:example.amazonaws.com
        3969  +
My-Header1: value1
        3970  +
My-Header2: "a   b   c"
        3971  +
X-Amz-Date:20150830T123600Z
        3972  +
X-Amz-Region-Set:us-east-1
        3973  +
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
        3974  +
 3245   3975   
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
 3246   3976   
similarity index 99%
 3247   3977   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/header-string-to-sign.txt
 3248   3978   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/header-string-to-sign.txt
 3249   3979   
index 0e407d8..a2c9c05 100644
 3250   3980   
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
 3251   3981   
new file mode 100644
 3252   3982   
index 0000000..379dcb2
 3253         -
-- /dev/null
        3983  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/public-key.json
 3254   3984   
@@ -0,0 +1,4 @@
        3985  +
{
        3986  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        3987  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        3988  +
}
 3255   3989   
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
 3256   3990   
similarity index 99%
 3257   3991   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-canonical-request.txt
 3258   3992   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-canonical-request.txt
 3259   3993   
index 8a3b042..3a51150 100644
 3260   3994   
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
 3261   3995   
new file mode 100644
 3262   3996   
index 0000000..0033053
 3263         -
-- /dev/null
        3997  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signature.txt
 3264   3998   
@@ -0,0 +1 @@
        3999  +
3045022100a765fa4e0a2c5d56292cc9aa654332858bcbb2af27b8c488157113f2c084776b02206145afa6dbb99993e499863fa36e592b94ddaeefbd778a473348204f26c15547
              \
 No newline at end of file
 3265   4000   
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
 3266   4001   
new file mode 100644
 3267   4002   
index 0000000..1537888
 3268         -
-- /dev/null
        4003  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-signed-request.txt
 3269   4004   
@@ -0,0 +1,5 @@
        4005  +
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
        4006  +
Host:example.amazonaws.com
        4007  +
My-Header1: value1
        4008  +
My-Header2: "a   b   c"
        4009  +
 3270   4010   
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
 3271   4011   
similarity index 99%
 3272   4012   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-header-value-trim/query-string-to-sign.txt
 3273   4013   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/query-string-to-sign.txt
 3274   4014   
index 5eead25..633dc1f 100644
 3275   4015   
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
 3276   4016   
similarity index 75%
 3277   4017   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
 3278   4018   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3279   4019   
index 901f36c..ad1ea98 100644
 3280         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-header-value-trim/get-header-value-trim.req
        4020  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-header-value-trim/request.txt
 3281   4021   
@@ -1,5 +1,4 @@
 3282   4022   
GET / HTTP/1.1
 3283   4023   
Host:example.amazonaws.com
 3284   4024   
My-Header1: value1
 3285   4025   
My-Header2: "a   b   c"
 3286         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3287   4026   
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
 3288   4027   
new file mode 100644
 3289   4028   
index 0000000..0468d80
 3290         -
-- /dev/null
        4029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/context.json
 3291   4030   
@@ -0,0 +1,12 @@
        4031  +
{
        4032  +
    "credentials": {
        4033  +
        "access_key_id": "AKIDEXAMPLE",
        4034  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4035  +
    },
        4036  +
    "expiration_in_seconds": 3600,
        4037  +
    "normalize": true,
        4038  +
    "region": "us-east-1",
        4039  +
    "service": "service",
        4040  +
    "sign_body": false,
        4041  +
    "timestamp": "2015-08-30T12:36:00Z"
        4042  +
}
              \
 No newline at end of file
 3292   4043   
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
 3293   4044   
similarity index 99%
 3294   4045   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-canonical-request.txt
 3295   4046   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-canonical-request.txt
 3296   4047   
index 47e7128..76db73d 100644
 3297   4048   
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
 3298   4049   
new file mode 100644
 3299   4050   
index 0000000..cbd6ae2
 3300         -
-- /dev/null
        4051  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signature.txt
 3301   4052   
@@ -0,0 +1 @@
        4053  +
3045022002e5e766e09de198957182589c9abe3e7ccd00a8fc6d7bbaf5f0a2c10660d16a022100e6b0835731cd5b72d5abb50e5821d90f5f713339697eb65cf40d34a3facfdbb8
              \
 No newline at end of file
 3302   4054   
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
 3303   4055   
new file mode 100644
 3304   4056   
index 0000000..a343fcf
 3305         -
-- /dev/null
        4057  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-signed-request.txt
 3306   4058   
@@ -0,0 +1,6 @@
        4059  +
GET /example/.. HTTP/1.1
        4060  +
Host:example.amazonaws.com
        4061  +
X-Amz-Date:20150830T123600Z
        4062  +
X-Amz-Region-Set:us-east-1
        4063  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206ccd591952cdb4a0a002217788234c80eac520f890b0a6ea07b98044f08ba10e0220733126caf0347f7df89773f79b9fae2648ca786e67a7d88ec296d66452da4bec
        4064  +
 3307   4065   
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
 3308   4066   
similarity index 99%
 3309   4067   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-string-to-sign.txt
 3310   4068   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/header-string-to-sign.txt
 3311   4069   
index 95d7219..600f1d8 100644
 3312   4070   
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
 3313   4071   
new file mode 100644
 3314   4072   
index 0000000..379dcb2
 3315         -
-- /dev/null
        4073  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/public-key.json
 3316   4074   
@@ -0,0 +1,4 @@
        4075  +
{
        4076  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4077  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4078  +
}
 3317   4079   
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
 3318   4080   
similarity index 99%
 3319   4081   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-canonical-request.txt
 3320   4082   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-canonical-request.txt
 3321   4083   
index a34ea26..779c51c 100644
 3322   4084   
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
 3323   4085   
new file mode 100644
 3324   4086   
index 0000000..3cc88e6
 3325         -
-- /dev/null
        4087  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signature.txt
 3326   4088   
@@ -0,0 +1 @@
        4089  +
304402200ef7c6ac7bfaaddbf4df3a4b03ab2e4e24e992d305fa133ef0f6c826ad9850e602203ef21f22e239cd1971310c404c80d6e50c5cd06eae1452695ae762d1a9a51c90
              \
 No newline at end of file
 3327   4090   
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
 3328   4091   
new file mode 100644
 3329   4092   
index 0000000..f68dde8
 3330         -
-- /dev/null
        4093  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-signed-request.txt
 3331   4094   
@@ -0,0 +1,3 @@
        4095  +
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
        4096  +
Host:example.amazonaws.com
        4097  +
 3332   4098   
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
 3333   4099   
similarity index 99%
 3334   4100   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-string-to-sign.txt
 3335   4101   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/query-string-to-sign.txt
 3336   4102   
index 48f855c..6e29a7e 100644
 3337   4103   
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
 3338   4104   
similarity index 65%
 3339   4105   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
 3340   4106   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3341   4107   
index 9d6d7ca..6aa9f99 100644
 3342         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative/get-relative.req
        4108  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-normalized/request.txt
 3343   4109   
@@ -1,3 +1,2 @@
 3344   4110   
GET /example/.. HTTP/1.1
 3345   4111   
Host:example.amazonaws.com
 3346         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3347   4112   
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
 3348   4113   
new file mode 100644
 3349   4114   
index 0000000..0468d80
 3350         -
-- /dev/null
        4115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/context.json
 3351   4116   
@@ -0,0 +1,12 @@
        4117  +
{
        4118  +
    "credentials": {
        4119  +
        "access_key_id": "AKIDEXAMPLE",
        4120  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4121  +
    },
        4122  +
    "expiration_in_seconds": 3600,
        4123  +
    "normalize": true,
        4124  +
    "region": "us-east-1",
        4125  +
    "service": "service",
        4126  +
    "sign_body": false,
        4127  +
    "timestamp": "2015-08-30T12:36:00Z"
        4128  +
}
              \
 No newline at end of file
 3352   4129   
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
 3353   4130   
similarity index 99%
 3354   4131   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/header-canonical-request.txt
 3355   4132   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-canonical-request.txt
 3356   4133   
index 47e7128..76db73d 100644
 3357   4134   
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
 3358   4135   
new file mode 100644
 3359   4136   
index 0000000..f7a7ebe
 3360         -
-- /dev/null
        4137  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signature.txt
 3361   4138   
@@ -0,0 +1 @@
        4139  +
3046022100ea029ea1e7b8715f67cd33b8536e013e53e9c7bcd109770f29a4a28767bb2212022100c95a298283c130266a4c8457590d8c047205b4aef9266b85deeb90e5c73e5caa
              \
 No newline at end of file
 3362   4140   
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
 3363   4141   
new file mode 100644
 3364   4142   
index 0000000..9d2c50d
 3365         -
-- /dev/null
        4143  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-signed-request.txt
 3366   4144   
@@ -0,0 +1,6 @@
        4145  +
GET /example1/example2/../.. HTTP/1.1
        4146  +
Host:example.amazonaws.com
        4147  +
X-Amz-Date:20150830T123600Z
        4148  +
X-Amz-Region-Set:us-east-1
        4149  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203edb747d59fe32db47529b2e5e02c9276759b7c43ad9e36ff62d52b8dbeb00e3022007f99e8601938b893fe6dcbac9259fec2f3797b0e3d74fd66d59b09e83b8c1d4
        4150  +
 3367   4151   
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
 3368   4152   
similarity index 99%
 3369   4153   
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
 3370   4154   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/header-string-to-sign.txt
 3371   4155   
index 95d7219..600f1d8 100644
 3372   4156   
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
 3373   4157   
new file mode 100644
 3374   4158   
index 0000000..379dcb2
 3375         -
-- /dev/null
        4159  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/public-key.json
 3376   4160   
@@ -0,0 +1,4 @@
        4161  +
{
        4162  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4163  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4164  +
}
 3377   4165   
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
 3378   4166   
similarity index 99%
 3379   4167   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/query-canonical-request.txt
 3380   4168   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-canonical-request.txt
 3381   4169   
index a34ea26..779c51c 100644
 3382   4170   
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
 3383   4171   
new file mode 100644
 3384   4172   
index 0000000..45ef286
 3385         -
-- /dev/null
        4173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signature.txt
 3386   4174   
@@ -0,0 +1 @@
        4175  +
304402200afc56cdc43e814e44408999f2fb2fe0f8992877345b09e402b28fb2063e4987022035cdba28f5462e9034f45fc5f879bd2305943f9a1830b0f7fbe6468658ba52c1
              \
 No newline at end of file
 3387   4176   
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
 3388   4177   
new file mode 100644
 3389   4178   
index 0000000..0d16f66
 3390         -
-- /dev/null
        4179  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-signed-request.txt
 3391   4180   
@@ -0,0 +1,3 @@
        4181  +
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
        4182  +
Host:example.amazonaws.com
        4183  +
 3392   4184   
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
 3393   4185   
similarity index 99%
 3394   4186   
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
 3395   4187   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/query-string-to-sign.txt
 3396   4188   
index 48f855c..6e29a7e 100644
 3397   4189   
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
 3398   4190   
similarity index 70%
 3399   4191   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
 3400   4192   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3401   4193   
index cfd4e8b..a856c10 100644
 3402         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-relative-relative/get-relative-relative.req
        4194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-normalized/request.txt
 3403   4195   
@@ -1,3 +1,2 @@
 3404   4196   
GET /example1/example2/../.. HTTP/1.1
 3405   4197   
Host:example.amazonaws.com
 3406         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3407   4198   
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
 3408   4199   
new file mode 100644
 3409   4200   
index 0000000..7bee5c7
 3410         -
-- /dev/null
        4201  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/context.json
 3411   4202   
@@ -0,0 +1,12 @@
        4203  +
{
        4204  +
    "credentials": {
        4205  +
        "access_key_id": "AKIDEXAMPLE",
        4206  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4207  +
    },
        4208  +
    "expiration_in_seconds": 3600,
        4209  +
    "normalize": false,
        4210  +
    "region": "us-east-1",
        4211  +
    "service": "service",
        4212  +
    "sign_body": false,
        4213  +
    "timestamp": "2015-08-30T12:36:00Z"
        4214  +
}
              \
 No newline at end of file
 3412   4215   
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
 3413   4216   
similarity index 99%
 3414   4217   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-canonical-request.txt
 3415   4218   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-canonical-request.txt
 3416   4219   
index 5e1d1cf..e4e6d57 100644
 3417   4220   
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
 3418   4221   
new file mode 100644
 3419   4222   
index 0000000..2d1b47c
 3420         -
-- /dev/null
        4223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signature.txt
 3421   4224   
@@ -0,0 +1 @@
        4225  +
30450221009bf86ef8b148904a938fcc5a050aa99cb99cb6a3436a62badfef1b82977d95c4022053e3c11e10fb302a2c39c253b066530404ee5fcca63bf962facd8d072817a69d
              \
 No newline at end of file
 3422   4226   
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
 3423   4227   
new file mode 100644
 3424   4228   
index 0000000..7158179
 3425         -
-- /dev/null
        4229  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-signed-request.txt
 3426   4230   
@@ -0,0 +1,6 @@
        4231  +
GET /example1/example2/../.. HTTP/1.1
        4232  +
Host:example.amazonaws.com
        4233  +
X-Amz-Date:20150830T123600Z
        4234  +
X-Amz-Region-Set:us-east-1
        4235  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402205651d45d4f377407303dba0775405efa77683821adff20c0256b94d10710de5b022053fa72420652c55327876c5105da6770cb482f55533e1b0bd7d15fa75f570e46
        4236  +
 3427   4237   
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
 3428   4238   
similarity index 99%
 3429   4239   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/header-string-to-sign.txt
 3430   4240   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/header-string-to-sign.txt
 3431   4241   
index 1cca6cf..db60c8e 100644
 3432   4242   
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
 3433   4243   
new file mode 100644
 3434   4244   
index 0000000..379dcb2
 3435         -
-- /dev/null
        4245  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/public-key.json
 3436   4246   
@@ -0,0 +1,4 @@
        4247  +
{
        4248  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4249  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4250  +
}
 3437   4251   
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
 3438   4252   
similarity index 99%
 3439   4253   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-canonical-request.txt
 3440   4254   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-canonical-request.txt
 3441   4255   
index 95dc104..0d963ba 100644
 3442   4256   
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
 3443   4257   
new file mode 100644
 3444   4258   
index 0000000..ae774e4
 3445         -
-- /dev/null
        4259  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signature.txt
 3446   4260   
@@ -0,0 +1 @@
        4261  +
3046022100a11cd4cae39a6b3553651f9c6360898278d90a3cb8f736184ff6bdb8564decbc022100d86a34623cc34890750a7fe8a30948638f6dace0e558c3ff82a0cf6256067503
              \
 No newline at end of file
 3447   4262   
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
 3448   4263   
new file mode 100644
 3449   4264   
index 0000000..be6b86e
 3450         -
-- /dev/null
        4265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-signed-request.txt
 3451   4266   
@@ -0,0 +1,3 @@
        4267  +
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
        4268  +
Host:example.amazonaws.com
        4269  +
 3452   4270   
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
 3453   4271   
similarity index 99%
 3454   4272   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-unnormalized/query-string-to-sign.txt
 3455   4273   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/query-string-to-sign.txt
 3456   4274   
index 50edce6..fcc70cd 100644
 3457   4275   
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
 3458   4276   
new file mode 100644
 3459   4277   
index 0000000..a856c10
 3460         -
-- /dev/null
        4278  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-relative-unnormalized/request.txt
 3461   4279   
@@ -0,0 +1,2 @@
        4280  +
GET /example1/example2/../.. HTTP/1.1
        4281  +
Host:example.amazonaws.com
 3462   4282   
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
 3463   4283   
new file mode 100644
 3464   4284   
index 0000000..7bee5c7
 3465         -
-- /dev/null
        4285  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/context.json
 3466   4286   
@@ -0,0 +1,12 @@
        4287  +
{
        4288  +
    "credentials": {
        4289  +
        "access_key_id": "AKIDEXAMPLE",
        4290  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4291  +
    },
        4292  +
    "expiration_in_seconds": 3600,
        4293  +
    "normalize": false,
        4294  +
    "region": "us-east-1",
        4295  +
    "service": "service",
        4296  +
    "sign_body": false,
        4297  +
    "timestamp": "2015-08-30T12:36:00Z"
        4298  +
}
              \
 No newline at end of file
 3467   4299   
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
 3468   4300   
similarity index 99%
 3469   4301   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-canonical-request.txt
 3470   4302   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-canonical-request.txt
 3471   4303   
index d6a0abe..22def1a 100644
 3472   4304   
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
 3473   4305   
new file mode 100644
 3474   4306   
index 0000000..9251bad
 3475         -
-- /dev/null
        4307  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signature.txt
 3476   4308   
@@ -0,0 +1 @@
        4309  +
3045022100a85167a37a2c6aea42ef9dcb0dcaeaf85ca4ef1a4d8ffea5be550dbd4573471902202193760e5e6bb1ee4aff836769b9739f4563e06749bcaa7553ec1d1377aa5a6d
              \
 No newline at end of file
 3477   4310   
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
 3478   4311   
new file mode 100644
 3479   4312   
index 0000000..f1bb60f
 3480         -
-- /dev/null
        4313  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-signed-request.txt
 3481   4314   
@@ -0,0 +1,6 @@
        4315  +
GET /example/.. HTTP/1.1
        4316  +
Host:example.amazonaws.com
        4317  +
X-Amz-Date:20150830T123600Z
        4318  +
X-Amz-Region-Set:us-east-1
        4319  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402201430c834d8a89aca13ebd785da338950559f71ab29f1b7d7b4ad6b090de1a09702206c8d6089b75105d6fc5df5374bbb8abbc33b78951c95b90f9f6c25a657b58ce6
        4320  +
 3482   4321   
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
 3483   4322   
similarity index 99%
 3484   4323   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/header-string-to-sign.txt
 3485   4324   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/header-string-to-sign.txt
 3486   4325   
index 4a34e93..5673a20 100644
 3487   4326   
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
 3488   4327   
new file mode 100644
 3489   4328   
index 0000000..379dcb2
 3490         -
-- /dev/null
        4329  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/public-key.json
 3491   4330   
@@ -0,0 +1,4 @@
        4331  +
{
        4332  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4333  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4334  +
}
 3492   4335   
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
 3493   4336   
similarity index 99%
 3494   4337   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-canonical-request.txt
 3495   4338   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-canonical-request.txt
 3496   4339   
index b1d123e..a1c22e0 100644
 3497   4340   
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
 3498   4341   
new file mode 100644
 3499   4342   
index 0000000..9f0f686
 3500         -
-- /dev/null
        4343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signature.txt
 3501   4344   
@@ -0,0 +1 @@
        4345  +
3045022074d05647e395d4bf3d751953c7242ee27dd16fbae3f604a272d3acc3d72ba5fb022100ddccd95ac05f60f10d5e95c5847b49018bbfa1084361bf338964408cc2162fff
              \
 No newline at end of file
 3502   4346   
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
 3503   4347   
new file mode 100644
 3504   4348   
index 0000000..d1d451a
 3505         -
-- /dev/null
        4349  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-signed-request.txt
 3506   4350   
@@ -0,0 +1,3 @@
        4351  +
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
        4352  +
Host:example.amazonaws.com
        4353  +
 3507   4354   
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
 3508   4355   
similarity index 99%
 3509   4356   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-unnormalized/query-string-to-sign.txt
 3510   4357   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/query-string-to-sign.txt
 3511   4358   
index a17f5ab..81b41e8 100644
 3512   4359   
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
 3513   4360   
new file mode 100644
 3514   4361   
index 0000000..6aa9f99
 3515         -
-- /dev/null
        4362  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-relative-unnormalized/request.txt
 3516   4363   
@@ -0,0 +1,2 @@
        4364  +
GET /example/.. HTTP/1.1
        4365  +
Host:example.amazonaws.com
 3517   4366   
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
 3518   4367   
new file mode 100644
 3519   4368   
index 0000000..0468d80
 3520         -
-- /dev/null
        4369  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/context.json
 3521   4370   
@@ -0,0 +1,12 @@
        4371  +
{
        4372  +
    "credentials": {
        4373  +
        "access_key_id": "AKIDEXAMPLE",
        4374  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4375  +
    },
        4376  +
    "expiration_in_seconds": 3600,
        4377  +
    "normalize": true,
        4378  +
    "region": "us-east-1",
        4379  +
    "service": "service",
        4380  +
    "sign_body": false,
        4381  +
    "timestamp": "2015-08-30T12:36:00Z"
        4382  +
}
              \
 No newline at end of file
 3522   4383   
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
 3523   4384   
similarity index 99%
 3524   4385   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-normalized/header-canonical-request.txt
 3525   4386   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-canonical-request.txt
 3526   4387   
index 47e7128..76db73d 100644
 3527   4388   
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
 3528   4389   
new file mode 100644
 3529   4390   
index 0000000..ca6e84e
 3530         -
-- /dev/null
        4391  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signature.txt
 3531   4392   
@@ -0,0 +1 @@
        4393  +
3045022100e8ed39e8b964e06162ab1cddbff57c449a9b72e2d052a7a3e12a116ae30185ee022003e6eb0fddbaa586225b26877ab145e05a08ac418ef7c966e5daef258b70cbfc
              \
 No newline at end of file
 3532   4394   
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
 3533   4395   
new file mode 100644
 3534   4396   
index 0000000..a7c764c
 3535         -
-- /dev/null
        4397  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/header-signed-request.txt
 3536   4398   
@@ -0,0 +1,6 @@
        4399  +
GET /./ HTTP/1.1
        4400  +
Host:example.amazonaws.com
        4401  +
X-Amz-Date:20150830T123600Z
        4402  +
X-Amz-Region-Set:us-east-1
        4403  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207665172b8612dbbd2c1f3c722c52b7b8dac2cdc5203d86252e21d9610018b153022100c548f3f0c23beeb388f8c8138ce1e883e2cdf2be1d7c5d7c15d4e565bfd6b0dd
        4404  +
 3537   4405   
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
 3538   4406   
similarity index 99%
 3539   4407   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/header-string-to-sign.txt
 3540   4408   
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
 3541   4409   
index 95d7219..600f1d8 100644
 3542   4410   
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
 3543   4411   
new file mode 100644
 3544   4412   
index 0000000..379dcb2
 3545         -
-- /dev/null
        4413  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/public-key.json
 3546   4414   
@@ -0,0 +1,4 @@
        4415  +
{
        4416  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4417  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4418  +
}
 3547   4419   
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
 3548   4420   
similarity index 99%
 3549   4421   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-relative-normalized/query-canonical-request.txt
 3550   4422   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-canonical-request.txt
 3551   4423   
index a34ea26..779c51c 100644
 3552   4424   
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
 3553   4425   
new file mode 100644
 3554   4426   
index 0000000..4b6ed09
 3555         -
-- /dev/null
        4427  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signature.txt
 3556   4428   
@@ -0,0 +1 @@
        4429  +
3046022100ea775dcca84dbada39eb9e7d55183c31d7294d1826d965c2ade1730bd20ac7cb022100aaab5325eed9bb3f93814af0fd0170893cbeeff052d0bb554f91a394fd2f5135
              \
 No newline at end of file
 3557   4430   
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
 3558   4431   
new file mode 100644
 3559   4432   
index 0000000..d6c7176
 3560         -
-- /dev/null
        4433  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/query-signed-request.txt
 3561   4434   
@@ -0,0 +1,3 @@
        4435  +
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
        4436  +
Host:example.amazonaws.com
        4437  +
 3562   4438   
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
 3563   4439   
similarity index 99%
 3564   4440   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-string-to-sign.txt
 3565   4441   
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
 3566   4442   
index 48f855c..6e29a7e 100644
 3567   4443   
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
 3568   4444   
similarity index 61%
 3569   4445   
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
 3570   4446   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3571   4447   
index f3537b7..2c5ff38 100644
 3572         -
-- 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
        4448  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-normalized/request.txt
 3573   4449   
@@ -1,3 +1,2 @@
 3574   4450   
GET /./ HTTP/1.1
 3575   4451   
Host:example.amazonaws.com
 3576         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3577   4452   
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
 3578   4453   
new file mode 100644
 3579   4454   
index 0000000..7bee5c7
 3580         -
-- /dev/null
        4455  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/context.json
 3581   4456   
@@ -0,0 +1,12 @@
        4457  +
{
        4458  +
    "credentials": {
        4459  +
        "access_key_id": "AKIDEXAMPLE",
        4460  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4461  +
    },
        4462  +
    "expiration_in_seconds": 3600,
        4463  +
    "normalize": false,
        4464  +
    "region": "us-east-1",
        4465  +
    "service": "service",
        4466  +
    "sign_body": false,
        4467  +
    "timestamp": "2015-08-30T12:36:00Z"
        4468  +
}
              \
 No newline at end of file
 3582   4469   
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
 3583   4470   
similarity index 99%
 3584   4471   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3585   4472   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-canonical-request.txt
 3586   4473   
index d05303d..9257ac4 100644
 3587   4474   
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
 3588   4475   
new file mode 100644
 3589   4476   
index 0000000..2eb1aa5
 3590         -
-- /dev/null
        4477  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signature.txt
 3591   4478   
@@ -0,0 +1 @@
        4479  +
30450220430660fe6e8e04ee055a2c56476dcf95c00b3efca267823134664f90a23fdc0f022100f188106c83e13a89e6a487f24d23522520f7a15c40e3aacd0c32284da42c2f5a
              \
 No newline at end of file
 3592   4480   
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
 3593   4481   
new file mode 100644
 3594   4482   
index 0000000..df3b1da
 3595         -
-- /dev/null
        4483  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/header-signed-request.txt
 3596   4484   
@@ -0,0 +1,6 @@
        4485  +
GET /./ HTTP/1.1
        4486  +
Host:example.amazonaws.com
        4487  +
X-Amz-Date:20150830T123600Z
        4488  +
X-Amz-Region-Set:us-east-1
        4489  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022049aaa02168ac9666a94f42238be0a02a7a244b74d6e16bdf64aac7ce8e21e44d02206b9be50186bdd4ee9191c0dd5ccff7e990365bb3b56430653f6fa49a68dbf596
        4490  +
 3597   4491   
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
 3598   4492   
similarity index 99%
 3599   4493   
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
 3600   4494   
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
 3601   4495   
index e1bfb39..754b3ed 100644
 3602   4496   
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
 3603   4497   
new file mode 100644
 3604   4498   
index 0000000..379dcb2
 3605         -
-- /dev/null
        4499  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/public-key.json
 3606   4500   
@@ -0,0 +1,4 @@
        4501  +
{
        4502  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4503  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4504  +
}
 3607   4505   
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
 3608   4506   
similarity index 99%
 3609   4507   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3610   4508   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-canonical-request.txt
 3611   4509   
index f048d0f..c8edce3 100644
 3612   4510   
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
 3613   4511   
new file mode 100644
 3614   4512   
index 0000000..d3af3b8
 3615         -
-- /dev/null
        4513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signature.txt
 3616   4514   
@@ -0,0 +1 @@
        4515  +
304402207999228e5213710741e030ffa7dfa83ce3676384c5df044431bc854488a08abd0220248ff8a956bbcbc641c0ec4a7853774f44112b1571f861fc5aebf78282fd7e63
              \
 No newline at end of file
 3617   4516   
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
 3618   4517   
new file mode 100644
 3619   4518   
index 0000000..eb38155
 3620         -
-- /dev/null
        4519  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/query-signed-request.txt
 3621   4520   
@@ -0,0 +1,3 @@
        4521  +
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
        4522  +
Host:example.amazonaws.com
        4523  +
 3622   4524   
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
 3623   4525   
similarity index 99%
 3624   4526   
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
 3625   4527   
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
 3626   4528   
index bfcf245..4f20b8f 100644
 3627   4529   
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
 3628   4530   
new file mode 100644
 3629   4531   
index 0000000..2c5ff38
 3630         -
-- /dev/null
        4532  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-dot-slash-unnormalized/request.txt
 3631   4533   
@@ -0,0 +1,2 @@
        4534  +
GET /./ HTTP/1.1
        4535  +
Host:example.amazonaws.com
 3632   4536   
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
 3633   4537   
new file mode 100644
 3634   4538   
index 0000000..0468d80
 3635         -
-- /dev/null
        4539  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/context.json
 3636   4540   
@@ -0,0 +1,12 @@
        4541  +
{
        4542  +
    "credentials": {
        4543  +
        "access_key_id": "AKIDEXAMPLE",
        4544  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4545  +
    },
        4546  +
    "expiration_in_seconds": 3600,
        4547  +
    "normalize": true,
        4548  +
    "region": "us-east-1",
        4549  +
    "service": "service",
        4550  +
    "sign_body": false,
        4551  +
    "timestamp": "2015-08-30T12:36:00Z"
        4552  +
}
              \
 No newline at end of file
 3637   4553   
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
 3638   4554   
similarity index 99%
 3639   4555   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-canonical-request.txt
 3640   4556   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-canonical-request.txt
 3641   4557   
index 47e7128..76db73d 100644
 3642   4558   
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
 3643   4559   
new file mode 100644
 3644   4560   
index 0000000..0c049ca
 3645         -
-- /dev/null
        4561  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signature.txt
 3646   4562   
@@ -0,0 +1 @@
        4563  +
304602210084a7310186a866f81dbe8e546f6931dd7c61586d30664d5c11f5904836f72cfd022100c7d80abdccceb1cbcdbbda8b4f3f0ae1ac6229dce800b21ba8298c582fa96a1c
              \
 No newline at end of file
 3647   4564   
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
 3648   4565   
new file mode 100644
 3649   4566   
index 0000000..f4bb1e1
 3650         -
-- /dev/null
        4567  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-signed-request.txt
 3651   4568   
@@ -0,0 +1,6 @@
        4569  +
GET // HTTP/1.1
        4570  +
Host:example.amazonaws.com
        4571  +
X-Amz-Date:20150830T123600Z
        4572  +
X-Amz-Region-Set:us-east-1
        4573  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502207c7fe2e91cdbe4529569d58fc3727507375cff81a56cfa26b387895ab6cdbb25022100d38e283efa5ff27d88f10e7367493b1dc49050ba9474531e4acb3ee30fac3739
        4574  +
 3652   4575   
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
 3653   4576   
similarity index 99%
 3654   4577   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/header-string-to-sign.txt
 3655   4578   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/header-string-to-sign.txt
 3656   4579   
index 95d7219..600f1d8 100644
 3657   4580   
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
 3658   4581   
new file mode 100644
 3659   4582   
index 0000000..379dcb2
 3660         -
-- /dev/null
        4583  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/public-key.json
 3661   4584   
@@ -0,0 +1,4 @@
        4585  +
{
        4586  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4587  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4588  +
}
 3662   4589   
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
 3663   4590   
similarity index 99%
 3664   4591   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-relative-normalized/query-canonical-request.txt
 3665   4592   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-canonical-request.txt
 3666   4593   
index a34ea26..779c51c 100644
 3667   4594   
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
 3668   4595   
new file mode 100644
 3669   4596   
index 0000000..ca52293
 3670         -
-- /dev/null
        4597  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signature.txt
 3671   4598   
@@ -0,0 +1 @@
        4599  +
3045022100b1c08ec4e9a6313f2de7bd8ce726845ea7a3cc636a21ab7258a3067836a6601b02206b76d7a9845bfb683eb30d126a1dc4657e8b64762d4bfb976da9fa132c4a9bd7
              \
 No newline at end of file
 3672   4600   
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
 3673   4601   
new file mode 100644
 3674   4602   
index 0000000..4a212a9
 3675         -
-- /dev/null
        4603  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-signed-request.txt
 3676   4604   
@@ -0,0 +1,3 @@
        4605  +
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
        4606  +
Host:example.amazonaws.com
        4607  +
 3677   4608   
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
 3678   4609   
similarity index 99%
 3679   4610   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-normalized/query-string-to-sign.txt
 3680   4611   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/query-string-to-sign.txt
 3681   4612   
index 48f855c..6e29a7e 100644
 3682   4613   
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
 3683   4614   
similarity index 61%
 3684   4615   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
 3685   4616   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3686   4617   
index ede8e3c..25bc21e 100644
 3687         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slash/get-slash.req
        4618  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-normalized/request.txt
 3688   4619   
@@ -1,3 +1,2 @@
 3689   4620   
GET // HTTP/1.1
 3690   4621   
Host:example.amazonaws.com
 3691         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3692   4622   
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
 3693   4623   
new file mode 100644
 3694   4624   
index 0000000..0468d80
 3695         -
-- /dev/null
        4625  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/context.json
 3696   4626   
@@ -0,0 +1,12 @@
        4627  +
{
        4628  +
    "credentials": {
        4629  +
        "access_key_id": "AKIDEXAMPLE",
        4630  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4631  +
    },
        4632  +
    "expiration_in_seconds": 3600,
        4633  +
    "normalize": true,
        4634  +
    "region": "us-east-1",
        4635  +
    "service": "service",
        4636  +
    "sign_body": false,
        4637  +
    "timestamp": "2015-08-30T12:36:00Z"
        4638  +
}
              \
 No newline at end of file
 3697   4639   
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
 3698   4640   
similarity index 99%
 3699   4641   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3700   4642   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-canonical-request.txt
 3701   4643   
index 2e36c20..a51f1ba 100644
 3702   4644   
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
 3703   4645   
new file mode 100644
 3704   4646   
index 0000000..f5c871f
 3705         -
-- /dev/null
        4647  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signature.txt
 3706   4648   
@@ -0,0 +1 @@
        4649  +
304502206b0f9b99fe4e4b3bbcb69dd6ca076c847e676161b6fb4cd2bc776f357ece3d07022100fafc5606c7b1a45aa6ce6a7a3a68b07875315b8f952f9a192a420e407e8d1cef
              \
 No newline at end of file
 3707   4650   
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
 3708   4651   
new file mode 100644
 3709   4652   
index 0000000..bda4718
 3710         -
-- /dev/null
        4653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/header-signed-request.txt
 3711   4654   
@@ -0,0 +1,6 @@
        4655  +
GET /./example HTTP/1.1
        4656  +
Host:example.amazonaws.com
        4657  +
X-Amz-Date:20150830T123600Z
        4658  +
X-Amz-Region-Set:us-east-1
        4659  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221008cb5fa4d42bdd0c293d58ce748128be3a41693d25cfd701e281bf0c0bc28f41a022100b863217c8f05146ff1b4282706bc78781b1425c2d36a09127116e852e31fc974
        4660  +
 3712   4661   
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
 3713   4662   
similarity index 99%
 3714   4663   
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
 3715   4664   
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
 3716   4665   
index cd30e8b..2ffe879 100644
 3717   4666   
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
 3718   4667   
new file mode 100644
 3719   4668   
index 0000000..379dcb2
 3720         -
-- /dev/null
        4669  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/public-key.json
 3721   4670   
@@ -0,0 +1,4 @@
        4671  +
{
        4672  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4673  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4674  +
}
 3722   4675   
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
 3723   4676   
similarity index 99%
 3724   4677   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3725   4678   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-canonical-request.txt
 3726   4679   
index 77cf28d..45151ea 100644
 3727   4680   
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
 3728   4681   
new file mode 100644
 3729   4682   
index 0000000..11ad7bf
 3730         -
-- /dev/null
        4683  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signature.txt
 3731   4684   
@@ -0,0 +1 @@
        4685  +
3045022004b3d54ffdc33558a93c158a156ef1b50963d051e58ecb88b6809629d6b93860022100d88f70cb68de54e8abc628cb2325bcb32fab1a207d482010955f844812ad5174
              \
 No newline at end of file
 3732   4686   
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
 3733   4687   
new file mode 100644
 3734   4688   
index 0000000..a7537b1
 3735         -
-- /dev/null
        4689  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/query-signed-request.txt
 3736   4690   
@@ -0,0 +1,3 @@
        4691  +
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
        4692  +
Host:example.amazonaws.com
        4693  +
 3737   4694   
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
 3738   4695   
similarity index 99%
 3739   4696   
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
 3740   4697   
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
 3741   4698   
index 49d9b24..b486672 100644
 3742   4699   
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
 3743   4700   
similarity index 65%
 3744   4701   
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
 3745   4702   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3746   4703   
index 3c91071..5d919c9 100644
 3747         -
-- 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
        4704  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-normalized/request.txt
 3748   4705   
@@ -1,3 +1,2 @@
 3749   4706   
GET /./example HTTP/1.1
 3750   4707   
Host:example.amazonaws.com
 3751         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3752   4708   
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
 3753   4709   
new file mode 100644
 3754   4710   
index 0000000..7bee5c7
 3755         -
-- /dev/null
        4711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/context.json
 3756   4712   
@@ -0,0 +1,12 @@
        4713  +
{
        4714  +
    "credentials": {
        4715  +
        "access_key_id": "AKIDEXAMPLE",
        4716  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4717  +
    },
        4718  +
    "expiration_in_seconds": 3600,
        4719  +
    "normalize": false,
        4720  +
    "region": "us-east-1",
        4721  +
    "service": "service",
        4722  +
    "sign_body": false,
        4723  +
    "timestamp": "2015-08-30T12:36:00Z"
        4724  +
}
              \
 No newline at end of file
 3757   4725   
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
 3758   4726   
similarity index 99%
 3759   4727   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3760   4728   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-canonical-request.txt
 3761   4729   
index 4444842..2355a69 100644
 3762   4730   
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
 3763   4731   
new file mode 100644
 3764   4732   
index 0000000..9c8f737
 3765         -
-- /dev/null
        4733  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signature.txt
 3766   4734   
@@ -0,0 +1 @@
        4735  +
3044022056618e95bf64058b8174e9e52790352380946d9a0a4ab332b530a63f497a80800220105ebcd6c6ee9b034157d21e7c81fdfb72ca640961cee9b49de82e5c1f80ac5e
              \
 No newline at end of file
 3767   4736   
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
 3768   4737   
new file mode 100644
 3769   4738   
index 0000000..aa5980d
 3770         -
-- /dev/null
        4739  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/header-signed-request.txt
 3771   4740   
@@ -0,0 +1,6 @@
        4741  +
GET /./example HTTP/1.1
        4742  +
Host:example.amazonaws.com
        4743  +
X-Amz-Date:20150830T123600Z
        4744  +
X-Amz-Region-Set:us-east-1
        4745  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30460221009e2c768ae9904c3d04eba53cfbb7460034029fb1f169b51f82623cc53ae25dc7022100bfe47ecde858ad9ae3311bba5a4fd45fcacdb1795cc6825f0939e5d929a464bf
        4746  +
 3772   4747   
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
 3773   4748   
similarity index 99%
 3774   4749   
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
 3775   4750   
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
 3776   4751   
index cc63510..d056816 100644
 3777   4752   
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
 3778   4753   
new file mode 100644
 3779   4754   
index 0000000..379dcb2
 3780         -
-- /dev/null
        4755  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/public-key.json
 3781   4756   
@@ -0,0 +1,4 @@
        4757  +
{
        4758  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4759  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4760  +
}
 3782   4761   
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
 3783   4762   
similarity index 99%
 3784   4763   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3785   4764   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-canonical-request.txt
 3786   4765   
index ed2cb2d..df9928e 100644
 3787   4766   
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
 3788   4767   
new file mode 100644
 3789   4768   
index 0000000..bb4d86b
 3790         -
-- /dev/null
        4769  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signature.txt
 3791   4770   
@@ -0,0 +1 @@
        4771  +
304502202c31415712324143f4f20aebbd0f8a2fd4fcdd49d68ac95cd6815db3c0e6407b022100cb46cb62bbd024da2e29445c3378a32057b68b272fb2a08c79bfdcbc398505f3
              \
 No newline at end of file
 3792   4772   
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
 3793   4773   
new file mode 100644
 3794   4774   
index 0000000..0061136
 3795         -
-- /dev/null
        4775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/query-signed-request.txt
 3796   4776   
@@ -0,0 +1,3 @@
        4777  +
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
        4778  +
Host:example.amazonaws.com
        4779  +
 3797   4780   
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
 3798   4781   
similarity index 99%
 3799   4782   
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
 3800   4783   
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
 3801   4784   
index c9f3b6d..418f2d6 100644
 3802   4785   
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
 3803   4786   
new file mode 100644
 3804   4787   
index 0000000..5d919c9
 3805         -
-- /dev/null
        4788  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-pointless-dot-unnormalized/request.txt
 3806   4789   
@@ -0,0 +1,2 @@
        4790  +
GET /./example HTTP/1.1
        4791  +
Host:example.amazonaws.com
 3807   4792   
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
 3808   4793   
new file mode 100644
 3809   4794   
index 0000000..7bee5c7
 3810         -
-- /dev/null
        4795  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/context.json
 3811   4796   
@@ -0,0 +1,12 @@
        4797  +
{
        4798  +
    "credentials": {
        4799  +
        "access_key_id": "AKIDEXAMPLE",
        4800  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4801  +
    },
        4802  +
    "expiration_in_seconds": 3600,
        4803  +
    "normalize": false,
        4804  +
    "region": "us-east-1",
        4805  +
    "service": "service",
        4806  +
    "sign_body": false,
        4807  +
    "timestamp": "2015-08-30T12:36:00Z"
        4808  +
}
              \
 No newline at end of file
 3812   4809   
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
 3813   4810   
similarity index 99%
 3814   4811   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-canonical-request.txt
 3815   4812   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-canonical-request.txt
 3816   4813   
index 8a4d33b..5f809da 100644
 3817   4814   
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
 3818   4815   
new file mode 100644
 3819   4816   
index 0000000..60179e9
 3820         -
-- /dev/null
        4817  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signature.txt
 3821   4818   
@@ -0,0 +1 @@
        4819  +
3046022100fee7e772befdf85d3f9871798d5e08e93ad3f5d5d408b41387ba55714244809b0221008268d33835753dcdbd0a4d149d902eed071c41b70c230ecf56e0120a0f7d72a1
              \
 No newline at end of file
 3822   4820   
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
 3823   4821   
new file mode 100644
 3824   4822   
index 0000000..72bf1b7
 3825         -
-- /dev/null
        4823  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-signed-request.txt
 3826   4824   
@@ -0,0 +1,6 @@
        4825  +
GET // HTTP/1.1
        4826  +
Host:example.amazonaws.com
        4827  +
X-Amz-Date:20150830T123600Z
        4828  +
X-Amz-Region-Set:us-east-1
        4829  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022061f03990d40a274470a1621b6e12b64452083a61218be77e48132a965da27377022100cdff18369b7361b1e33bd6cb5b216cdf88d390121447d442f59ccf84eb6489f7
        4830  +
 3827   4831   
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
 3828   4832   
similarity index 99%
 3829   4833   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/header-string-to-sign.txt
 3830   4834   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/header-string-to-sign.txt
 3831   4835   
index 874c01c..2b3bf67 100644
 3832   4836   
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
 3833   4837   
new file mode 100644
 3834   4838   
index 0000000..379dcb2
 3835         -
-- /dev/null
        4839  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/public-key.json
 3836   4840   
@@ -0,0 +1,4 @@
        4841  +
{
        4842  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4843  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4844  +
}
 3837   4845   
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
 3838   4846   
similarity index 99%
 3839   4847   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-canonical-request.txt
 3840   4848   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-canonical-request.txt
 3841   4849   
index 81d7b0b..d10ad29 100644
 3842   4850   
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
 3843   4851   
new file mode 100644
 3844   4852   
index 0000000..d9bd824
 3845         -
-- /dev/null
        4853  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signature.txt
 3846   4854   
@@ -0,0 +1 @@
        4855  +
3045022100abcadf84ed6f4bf5c19df3220b13e370ef093e5e7a5a5093c1a796a3de7804710220568ec0dafd60aa764002ce2ac7c89f403b47142dc7e0e48ded1691929488c88e
              \
 No newline at end of file
 3847   4856   
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
 3848   4857   
new file mode 100644
 3849   4858   
index 0000000..19d1d46
 3850         -
-- /dev/null
        4859  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-signed-request.txt
 3851   4860   
@@ -0,0 +1,3 @@
        4861  +
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
        4862  +
Host:example.amazonaws.com
        4863  +
 3852   4864   
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
 3853   4865   
similarity index 99%
 3854   4866   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slash-unnormalized/query-string-to-sign.txt
 3855   4867   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/query-string-to-sign.txt
 3856   4868   
index 17e5279..24c8a5e 100644
 3857   4869   
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
 3858   4870   
new file mode 100644
 3859   4871   
index 0000000..25bc21e
 3860         -
-- /dev/null
        4872  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slash-unnormalized/request.txt
 3861   4873   
@@ -0,0 +1,2 @@
        4874  +
GET // HTTP/1.1
        4875  +
Host:example.amazonaws.com
 3862   4876   
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
 3863   4877   
new file mode 100644
 3864   4878   
index 0000000..0468d80
 3865         -
-- /dev/null
        4879  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/context.json
 3866   4880   
@@ -0,0 +1,12 @@
        4881  +
{
        4882  +
    "credentials": {
        4883  +
        "access_key_id": "AKIDEXAMPLE",
        4884  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4885  +
    },
        4886  +
    "expiration_in_seconds": 3600,
        4887  +
    "normalize": true,
        4888  +
    "region": "us-east-1",
        4889  +
    "service": "service",
        4890  +
    "sign_body": false,
        4891  +
    "timestamp": "2015-08-30T12:36:00Z"
        4892  +
}
              \
 No newline at end of file
 3867   4893   
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
 3868   4894   
similarity index 99%
 3869   4895   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-canonical-request.txt
 3870   4896   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-canonical-request.txt
 3871   4897   
index fdf9c48..a8e9e02 100644
 3872   4898   
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
 3873   4899   
new file mode 100644
 3874   4900   
index 0000000..ffe1b60
 3875         -
-- /dev/null
        4901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signature.txt
 3876   4902   
@@ -0,0 +1 @@
        4903  +
304402205dd203fd6b973e5fb088569ec27db1e267ef4a728f177e88fcc65f299255c0ab02206da878f40c64094595aa4e808849b69025f1c9b9f4be0f0e6ab8cd7a04e81d77
              \
 No newline at end of file
 3877   4904   
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
 3878   4905   
new file mode 100644
 3879   4906   
index 0000000..3189f55
 3880         -
-- /dev/null
        4907  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-signed-request.txt
 3881   4908   
@@ -0,0 +1,6 @@
        4909  +
GET //example// HTTP/1.1
        4910  +
Host:example.amazonaws.com
        4911  +
X-Amz-Date:20150830T123600Z
        4912  +
X-Amz-Region-Set:us-east-1
        4913  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203d34870fcc77b0f5a3f6d440cd1cecb75c7e534cfbcc68f60743d308ae92fef602200f9fbaacc5010b9a7e046b1b5ae58764bd32c24c47ef65b63ad9ff756c478e4d
        4914  +
 3882   4915   
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
 3883   4916   
similarity index 99%
 3884   4917   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/header-string-to-sign.txt
 3885   4918   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/header-string-to-sign.txt
 3886   4919   
index 8f9c95e..430020e 100644
 3887   4920   
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
 3888   4921   
new file mode 100644
 3889   4922   
index 0000000..379dcb2
 3890         -
-- /dev/null
        4923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/public-key.json
 3891   4924   
@@ -0,0 +1,4 @@
        4925  +
{
        4926  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        4927  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        4928  +
}
 3892   4929   
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
 3893   4930   
similarity index 99%
 3894   4931   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-canonical-request.txt
 3895   4932   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-canonical-request.txt
 3896   4933   
index 1046735..8d41e37 100644
 3897   4934   
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
 3898   4935   
new file mode 100644
 3899   4936   
index 0000000..93a0fa4
 3900         -
-- /dev/null
        4937  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signature.txt
 3901   4938   
@@ -0,0 +1 @@
        4939  +
3045022100dfd2281b396d138207f0e58889bd6cc4d95ffd8d64e6f37ef2a9f2a15cab6944022060d05a747cd4e3c49cb50bf58d834ae917cd1ebd1524a352fb64f4d54f9ba279
              \
 No newline at end of file
 3902   4940   
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
 3903   4941   
new file mode 100644
 3904   4942   
index 0000000..65c8cb6
 3905         -
-- /dev/null
        4943  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-signed-request.txt
 3906   4944   
@@ -0,0 +1,3 @@
        4945  +
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
        4946  +
Host:example.amazonaws.com
        4947  +
 3907   4948   
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
 3908   4949   
similarity index 99%
 3909   4950   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-normalized/query-string-to-sign.txt
 3910   4951   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/query-string-to-sign.txt
 3911   4952   
index b293cc2..0f4c4c5 100644
 3912   4953   
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
 3913   4954   
similarity index 65%
 3914   4955   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
 3915   4956   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3916   4957   
index a4307ce..12e0931 100644
 3917         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/normalize-path/get-slashes/get-slashes.req
        4958  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-normalized/request.txt
 3918   4959   
@@ -1,3 +1,2 @@
 3919   4960   
GET //example// HTTP/1.1
 3920   4961   
Host:example.amazonaws.com
 3921         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 3922   4962   
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
 3923   4963   
new file mode 100644
 3924   4964   
index 0000000..7bee5c7
 3925         -
-- /dev/null
        4965  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/context.json
 3926   4966   
@@ -0,0 +1,12 @@
        4967  +
{
        4968  +
    "credentials": {
        4969  +
        "access_key_id": "AKIDEXAMPLE",
        4970  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        4971  +
    },
        4972  +
    "expiration_in_seconds": 3600,
        4973  +
    "normalize": false,
        4974  +
    "region": "us-east-1",
        4975  +
    "service": "service",
        4976  +
    "sign_body": false,
        4977  +
    "timestamp": "2015-08-30T12:36:00Z"
        4978  +
}
              \
 No newline at end of file
 3927   4979   
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
 3928   4980   
similarity index 99%
 3929   4981   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-canonical-request.txt
 3930   4982   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-canonical-request.txt
 3931   4983   
index a9c55f6..76f55ed 100644
 3932   4984   
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
 3933   4985   
new file mode 100644
 3934   4986   
index 0000000..de333b2
 3935         -
-- /dev/null
        4987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signature.txt
 3936   4988   
@@ -0,0 +1 @@
        4989  +
3044022039ccb6afb5f0b574cfc8fec2e9158269bbe28f9e5747acc032d1ea17617f8b2002204933ee3e4ad4ec425c90593a68db99fcece29ae45906dec40c2204290cedf8bd
              \
 No newline at end of file
 3937   4990   
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
 3938   4991   
new file mode 100644
 3939   4992   
index 0000000..773ce63
 3940         -
-- /dev/null
        4993  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-signed-request.txt
 3941   4994   
@@ -0,0 +1,6 @@
        4995  +
GET //example// HTTP/1.1
        4996  +
Host:example.amazonaws.com
        4997  +
X-Amz-Date:20150830T123600Z
        4998  +
X-Amz-Region-Set:us-east-1
        4999  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502202450e5abfccb424d5a0e2d5d1a084e76abc5290ae567a97f5174bfed575fd519022100a5e743040a2bdd3cd7889070e1d190d5782e7591a715370f9bea04dc2702dbab
        5000  +
 3942   5001   
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
 3943   5002   
similarity index 99%
 3944   5003   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/header-string-to-sign.txt
 3945   5004   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/header-string-to-sign.txt
 3946   5005   
index 5c4c2cd..46c3265 100644
 3947   5006   
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
 3948   5007   
new file mode 100644
 3949   5008   
index 0000000..379dcb2
 3950         -
-- /dev/null
        5009  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/public-key.json
 3951   5010   
@@ -0,0 +1,4 @@
        5011  +
{
        5012  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5013  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5014  +
}
 3952   5015   
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
 3953   5016   
similarity index 99%
 3954   5017   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-canonical-request.txt
 3955   5018   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-canonical-request.txt
 3956   5019   
index c878ab4..6047ccf 100644
 3957   5020   
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
 3958   5021   
new file mode 100644
 3959   5022   
index 0000000..d61fcd0
 3960         -
-- /dev/null
        5023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signature.txt
 3961   5024   
@@ -0,0 +1 @@
        5025  +
3045022100fa1d3e99997a184d59e23fb8bfeca08a5f94f2e7b89b0320d11deacab3593f0f022009c0785ec02c5dda370a3eb714feb51e3b0d56df674571bf7146bf8277897e65
              \
 No newline at end of file
 3962   5026   
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
 3963   5027   
new file mode 100644
 3964   5028   
index 0000000..3e37b5b
 3965         -
-- /dev/null
        5029  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-signed-request.txt
 3966   5030   
@@ -0,0 +1,3 @@
        5031  +
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
        5032  +
Host:example.amazonaws.com
        5033  +
 3967   5034   
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
 3968   5035   
similarity index 99%
 3969   5036   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-slashes-unnormalized/query-string-to-sign.txt
 3970   5037   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/query-string-to-sign.txt
 3971   5038   
index 5f59645..2537d28 100644
 3972   5039   
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
 3973   5040   
new file mode 100644
 3974   5041   
index 0000000..12e0931
 3975         -
-- /dev/null
        5042  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-slashes-unnormalized/request.txt
 3976   5043   
@@ -0,0 +1,2 @@
        5044  +
GET //example// HTTP/1.1
        5045  +
Host:example.amazonaws.com
 3977   5046   
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
 3978   5047   
new file mode 100644
 3979   5048   
index 0000000..0468d80
 3980         -
-- /dev/null
        5049  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/context.json
 3981   5050   
@@ -0,0 +1,12 @@
        5051  +
{
        5052  +
    "credentials": {
        5053  +
        "access_key_id": "AKIDEXAMPLE",
        5054  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5055  +
    },
        5056  +
    "expiration_in_seconds": 3600,
        5057  +
    "normalize": true,
        5058  +
    "region": "us-east-1",
        5059  +
    "service": "service",
        5060  +
    "sign_body": false,
        5061  +
    "timestamp": "2015-08-30T12:36:00Z"
        5062  +
}
              \
 No newline at end of file
 3982   5063   
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
 3983   5064   
new file mode 100644
 3984   5065   
index 0000000..0b2b616
 3985         -
-- /dev/null
        5066  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-canonical-request.txt
 3986   5067   
@@ -0,0 +1,9 @@
        5068  +
GET
        5069  +
/example%20space/
        5070  +
        5071  +
host:example.amazonaws.com
        5072  +
x-amz-date:20150830T123600Z
        5073  +
x-amz-region-set:us-east-1
        5074  +
        5075  +
host;x-amz-date;x-amz-region-set
        5076  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 3987   5077   
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
 3988   5078   
new file mode 100644
 3989   5079   
index 0000000..6e7841d
 3990         -
-- /dev/null
        5080  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signature.txt
 3991   5081   
@@ -0,0 +1 @@
        5082  +
304502202292b4f0e4f1495b9ceb3b77349efeffdce42cb5461f810db3983005c1e772ca022100b4b6175661196a82f5b59968315517e1ffdde58d2e3eba10d3bfe171cde625c4
              \
 No newline at end of file
 3992   5083   
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
 3993   5084   
new file mode 100644
 3994   5085   
index 0000000..0969cd3
 3995         -
-- /dev/null
        5086  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-signed-request.txt
 3996   5087   
@@ -0,0 +1,6 @@
        5088  +
GET /example space/ HTTP/1.1
        5089  +
Host:example.amazonaws.com
        5090  +
X-Amz-Date:20150830T123600Z
        5091  +
X-Amz-Region-Set:us-east-1
        5092  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100e8e0ec99a8d287073e078543fdbdeba108cdef097a52c7556874076072350200022100e59d9e0f48209bea00faa47d485d850eb72747db83927a2a43b5ebab5ca2b545
        5093  +
 3997   5094   
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
 3998   5095   
new file mode 100644
 3999   5096   
index 0000000..ddae6e2
 4000         -
-- /dev/null
        5097  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/header-string-to-sign.txt
 4001   5098   
@@ -0,0 +1,4 @@
        5099  +
AWS4-ECDSA-P256-SHA256
        5100  +
20150830T123600Z
        5101  +
20150830/service/aws4_request
        5102  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4002   5103   
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
 4003   5104   
new file mode 100644
 4004   5105   
index 0000000..379dcb2
 4005         -
-- /dev/null
        5106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/public-key.json
 4006   5107   
@@ -0,0 +1,4 @@
        5108  +
{
        5109  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5110  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5111  +
}
 4007   5112   
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
 4008   5113   
new file mode 100644
 4009   5114   
index 0000000..a66b3cb
 4010         -
-- /dev/null
        5115  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-canonical-request.txt
 4011   5116   
@@ -0,0 +1,7 @@
        5117  +
GET
        5118  +
/example%20space/
        5119  +
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
        5120  +
host:example.amazonaws.com
        5121  +
        5122  +
host
        5123  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4012   5124   
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
 4013   5125   
new file mode 100644
 4014   5126   
index 0000000..b3253ae
 4015         -
-- /dev/null
        5127  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signature.txt
 4016   5128   
@@ -0,0 +1 @@
        5129  +
3045022100fc068fdda7586bec9ac9ed341e7a81bf1e1f8c60fee6e22165868ecac62e404d02200620b5d68b9be75210336618fc0a884439ce1ae93085adb03e27f1ce7ca4912e
              \
 No newline at end of file
 4017   5130   
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
 4018   5131   
new file mode 100644
 4019   5132   
index 0000000..9e335b2
 4020         -
-- /dev/null
        5133  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-signed-request.txt
 4021   5134   
@@ -0,0 +1,3 @@
        5135  +
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
        5136  +
Host:example.amazonaws.com
        5137  +
 4022   5138   
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
 4023   5139   
new file mode 100644
 4024   5140   
index 0000000..b6ff6fb
 4025         -
-- /dev/null
        5141  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/query-string-to-sign.txt
 4026   5142   
@@ -0,0 +1,4 @@
        5143  +
AWS4-ECDSA-P256-SHA256
        5144  +
20150830T123600Z
        5145  +
20150830/service/aws4_request
        5146  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4027   5147   
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
 4028   5148   
new file mode 100644
 4029   5149   
index 0000000..ab509ab
 4030         -
-- /dev/null
        5150  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-normalized/request.txt
 4031   5151   
@@ -0,0 +1,2 @@
        5152  +
GET /example space/ HTTP/1.1
        5153  +
Host:example.amazonaws.com
 4032   5154   
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
 4033   5155   
new file mode 100644
 4034   5156   
index 0000000..7bee5c7
 4035         -
-- /dev/null
        5157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/context.json
 4036   5158   
@@ -0,0 +1,12 @@
        5159  +
{
        5160  +
    "credentials": {
        5161  +
        "access_key_id": "AKIDEXAMPLE",
        5162  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5163  +
    },
        5164  +
    "expiration_in_seconds": 3600,
        5165  +
    "normalize": false,
        5166  +
    "region": "us-east-1",
        5167  +
    "service": "service",
        5168  +
    "sign_body": false,
        5169  +
    "timestamp": "2015-08-30T12:36:00Z"
        5170  +
}
              \
 No newline at end of file
 4037   5171   
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
 4038   5172   
new file mode 100644
 4039   5173   
index 0000000..0b2b616
 4040         -
-- /dev/null
        5174  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-canonical-request.txt
 4041   5175   
@@ -0,0 +1,9 @@
        5176  +
GET
        5177  +
/example%20space/
        5178  +
        5179  +
host:example.amazonaws.com
        5180  +
x-amz-date:20150830T123600Z
        5181  +
x-amz-region-set:us-east-1
        5182  +
        5183  +
host;x-amz-date;x-amz-region-set
        5184  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4042   5185   
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
 4043   5186   
new file mode 100644
 4044   5187   
index 0000000..e75ae08
 4045         -
-- /dev/null
        5188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signature.txt
 4046   5189   
@@ -0,0 +1 @@
        5190  +
3046022100881d1dce37131cd3248fa4cfb63f050e8985c3de5a58f654a8b263d52ad576180221009316e13742504474cf33631bb5f2fa89f4990c911ad317be831a6de015cf4054
              \
 No newline at end of file
 4047   5191   
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
 4048   5192   
new file mode 100644
 4049   5193   
index 0000000..cb089db
 4050         -
-- /dev/null
        5194  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-signed-request.txt
 4051   5195   
@@ -0,0 +1,6 @@
        5196  +
GET /example space/ HTTP/1.1
        5197  +
Host:example.amazonaws.com
        5198  +
X-Amz-Date:20150830T123600Z
        5199  +
X-Amz-Region-Set:us-east-1
        5200  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100a26695d793a8e7d2ed2a3495402e9b4bf8e5b05e767d303f57d9515f617ebae5022100c4b89f5648567c08b6d173b6d733f5c012bb615cd38039109f64db56efecc851
        5201  +
 4052   5202   
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
 4053   5203   
new file mode 100644
 4054   5204   
index 0000000..ddae6e2
 4055         -
-- /dev/null
        5205  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/header-string-to-sign.txt
 4056   5206   
@@ -0,0 +1,4 @@
        5207  +
AWS4-ECDSA-P256-SHA256
        5208  +
20150830T123600Z
        5209  +
20150830/service/aws4_request
        5210  +
1bbd1a746b47d963b21f6e6783c689c038162ccc3f8a69abeda218a178ee4d19
              \
 No newline at end of file
 4057   5211   
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
 4058   5212   
new file mode 100644
 4059   5213   
index 0000000..379dcb2
 4060         -
-- /dev/null
        5214  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/public-key.json
 4061   5215   
@@ -0,0 +1,4 @@
        5216  +
{
        5217  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5218  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5219  +
}
 4062   5220   
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
 4063   5221   
new file mode 100644
 4064   5222   
index 0000000..a66b3cb
 4065         -
-- /dev/null
        5223  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-canonical-request.txt
 4066   5224   
@@ -0,0 +1,7 @@
        5225  +
GET
        5226  +
/example%20space/
        5227  +
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
        5228  +
host:example.amazonaws.com
        5229  +
        5230  +
host
        5231  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4067   5232   
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
 4068   5233   
new file mode 100644
 4069   5234   
index 0000000..66a80c3
 4070         -
-- /dev/null
        5235  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signature.txt
 4071   5236   
@@ -0,0 +1 @@
        5237  +
304502201825fe5d62f321a740cbe590ce0c0c17045eed9acbbbd574d3cefbec349d06c5022100bcd482f85374b24d9f1f5000d2de7e12a4e0c8f5277e73d29c41ecc45390e731
              \
 No newline at end of file
 4072   5238   
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
 4073   5239   
new file mode 100644
 4074   5240   
index 0000000..7d1b9d9
 4075         -
-- /dev/null
        5241  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-signed-request.txt
 4076   5242   
@@ -0,0 +1,3 @@
        5243  +
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
        5244  +
Host:example.amazonaws.com
        5245  +
 4077   5246   
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
 4078   5247   
new file mode 100644
 4079   5248   
index 0000000..b6ff6fb
 4080         -
-- /dev/null
        5249  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/query-string-to-sign.txt
 4081   5250   
@@ -0,0 +1,4 @@
        5251  +
AWS4-ECDSA-P256-SHA256
        5252  +
20150830T123600Z
        5253  +
20150830/service/aws4_request
        5254  +
6a2f4ddc0e28ca4b91abed80c45ad628fc63d8a4cd9c443869d5dd6cf07235ed
              \
 No newline at end of file
 4082   5255   
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
 4083   5256   
new file mode 100644
 4084   5257   
index 0000000..ab509ab
 4085         -
-- /dev/null
        5258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-space-unnormalized/request.txt
 4086   5259   
@@ -0,0 +1,2 @@
        5260  +
GET /example space/ HTTP/1.1
        5261  +
Host:example.amazonaws.com
 4087   5262   
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
 4088   5263   
new file mode 100644
 4089   5264   
index 0000000..0468d80
 4090         -
-- /dev/null
        5265  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/context.json
 4091   5266   
@@ -0,0 +1,12 @@
        5267  +
{
        5268  +
    "credentials": {
        5269  +
        "access_key_id": "AKIDEXAMPLE",
        5270  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5271  +
    },
        5272  +
    "expiration_in_seconds": 3600,
        5273  +
    "normalize": true,
        5274  +
    "region": "us-east-1",
        5275  +
    "service": "service",
        5276  +
    "sign_body": false,
        5277  +
    "timestamp": "2015-08-30T12:36:00Z"
        5278  +
}
              \
 No newline at end of file
 4092   5279   
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
 4093   5280   
similarity index 99%
 4094   5281   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-canonical-request.txt
 4095   5282   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-canonical-request.txt
 4096   5283   
index b0db648..46d76bb 100644
 4097   5284   
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
 4098   5285   
new file mode 100644
 4099   5286   
index 0000000..53c0cb6
 4100         -
-- /dev/null
        5287  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signature.txt
 4101   5288   
@@ -0,0 +1 @@
        5289  +
304502204303d34750ced762f4e5af2c61ba70c9f5830d8a5c7fc418a02823d61673ca32022100c26cf8f38007155cb8bd3e684697063ad8f421a91be796d78b14b126e25d3680
              \
 No newline at end of file
 4102   5290   
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
 4103   5291   
new file mode 100644
 4104   5292   
index 0000000..3bdb653
 4105         -
-- /dev/null
        5293  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-signed-request.txt
 4106   5294   
@@ -0,0 +1,6 @@
        5295  +
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5296  +
Host:example.amazonaws.com
        5297  +
X-Amz-Date:20150830T123600Z
        5298  +
X-Amz-Region-Set:us-east-1
        5299  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402206a228bcbe26141c2c5065525b98ea00b793470e04e655006269f740e320215930220160015e35502fa89a96f5fed59981af0896b60ecea6a68606a0be368bca73f2c
        5300  +
 4107   5301   
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
 4108   5302   
similarity index 99%
 4109   5303   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/header-string-to-sign.txt
 4110   5304   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/header-string-to-sign.txt
 4111   5305   
index 20c7cd6..3b30173 100644
 4112   5306   
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
 4113   5307   
new file mode 100644
 4114   5308   
index 0000000..379dcb2
 4115         -
-- /dev/null
        5309  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/public-key.json
 4116   5310   
@@ -0,0 +1,4 @@
        5311  +
{
        5312  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5313  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5314  +
}
 4117   5315   
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
 4118   5316   
similarity index 99%
 4119   5317   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-canonical-request.txt
 4120   5318   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-canonical-request.txt
 4121   5319   
index f9fb726..7e93f58 100644
 4122   5320   
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
 4123   5321   
new file mode 100644
 4124   5322   
index 0000000..48311a8
 4125         -
-- /dev/null
        5323  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signature.txt
 4126   5324   
@@ -0,0 +1 @@
        5325  +
3045022100a8e6e2918ceb211f77810150d828be217af238ca95db6f88264d668ffacefb8b02204122d651c775a3ed8f40f3bfe37a2c8fec28cd53027b599eddd7115e06ca4bb0
              \
 No newline at end of file
 4127   5326   
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
 4128   5327   
new file mode 100644
 4129   5328   
index 0000000..82da9be
 4130         -
-- /dev/null
        5329  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-signed-request.txt
 4131   5330   
@@ -0,0 +1,3 @@
        5331  +
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
        5332  +
Host:example.amazonaws.com
        5333  +
 4132   5334   
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
 4133   5335   
similarity index 99%
 4134   5336   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-unreserved/query-string-to-sign.txt
 4135   5337   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/query-string-to-sign.txt
 4136   5338   
index ef06e89..4aab9a2 100644
 4137   5339   
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
 4138   5340   
similarity index 80%
 4139   5341   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
 4140   5342   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4141   5343   
index da760cd..a149694 100644
 4142         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-unreserved/get-unreserved.req
        5344  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-unreserved/request.txt
 4143   5345   
@@ -1,3 +1,2 @@
 4144   5346   
GET /-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4145   5347   
Host:example.amazonaws.com
 4146         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4147   5348   
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
 4148   5349   
new file mode 100644
 4149   5350   
index 0000000..0468d80
 4150         -
-- /dev/null
        5351  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/context.json
 4151   5352   
@@ -0,0 +1,12 @@
        5353  +
{
        5354  +
    "credentials": {
        5355  +
        "access_key_id": "AKIDEXAMPLE",
        5356  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5357  +
    },
        5358  +
    "expiration_in_seconds": 3600,
        5359  +
    "normalize": true,
        5360  +
    "region": "us-east-1",
        5361  +
    "service": "service",
        5362  +
    "sign_body": false,
        5363  +
    "timestamp": "2015-08-30T12:36:00Z"
        5364  +
}
              \
 No newline at end of file
 4152   5365   
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
 4153   5366   
new file mode 100644
 4154   5367   
index 0000000..0f1afe7
 4155         -
-- /dev/null
        5368  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-canonical-request.txt
 4156   5369   
@@ -0,0 +1,9 @@
        5370  +
GET
        5371  +
/%E1%88%B4
        5372  +
        5373  +
host:example.amazonaws.com
        5374  +
x-amz-date:20150830T123600Z
        5375  +
x-amz-region-set:us-east-1
        5376  +
        5377  +
host;x-amz-date;x-amz-region-set
        5378  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4157   5379   
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
 4158   5380   
new file mode 100644
 4159   5381   
index 0000000..4b9af6c
 4160         -
-- /dev/null
        5382  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signature.txt
 4161   5383   
@@ -0,0 +1 @@
        5384  +
3044022009b73628ce2929e224b781c591bdc93fc3381cef5f63992eefb82a286276fa0902203cbc6071d1be7b8c91ec0a04b921881c48cbea2a0a86481f6fa7a983e36190c0
              \
 No newline at end of file
 4162   5385   
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
 4163   5386   
new file mode 100644
 4164   5387   
index 0000000..d42d7b3
 4165         -
-- /dev/null
        5388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-signed-request.txt
 4166   5389   
@@ -0,0 +1,6 @@
        5390  +
GET /ሴ HTTP/1.1
        5391  +
Host:example.amazonaws.com
        5392  +
X-Amz-Date:20150830T123600Z
        5393  +
X-Amz-Region-Set:us-east-1
        5394  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210082c462efc22f340d7d20b19e0c9b38400e9395bedd9269e01e959ef915ca2846022050d38df1572786ef8befe01d888335c15b0f17fb1d795858fa3cb79e060ba375
        5395  +
 4167   5396   
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
 4168   5397   
new file mode 100644
 4169   5398   
index 0000000..0827f62
 4170         -
-- /dev/null
        5399  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/header-string-to-sign.txt
 4171   5400   
@@ -0,0 +1,4 @@
        5401  +
AWS4-ECDSA-P256-SHA256
        5402  +
20150830T123600Z
        5403  +
20150830/service/aws4_request
        5404  +
7c8a7084825e715f0e217a7470ce3611bcfedb5b70329d9b36bba5cefd39c11a
              \
 No newline at end of file
 4172   5405   
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
 4173   5406   
new file mode 100644
 4174   5407   
index 0000000..379dcb2
 4175         -
-- /dev/null
        5408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/public-key.json
 4176   5409   
@@ -0,0 +1,4 @@
        5410  +
{
        5411  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5412  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5413  +
}
 4177   5414   
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
 4178   5415   
new file mode 100644
 4179   5416   
index 0000000..a41a2f8
 4180         -
-- /dev/null
        5417  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-canonical-request.txt
 4181   5418   
@@ -0,0 +1,7 @@
        5419  +
GET
        5420  +
/%E1%88%B4
        5421  +
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
        5422  +
host:example.amazonaws.com
        5423  +
        5424  +
host
        5425  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4182   5426   
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
 4183   5427   
new file mode 100644
 4184   5428   
index 0000000..a5c7f4f
 4185         -
-- /dev/null
        5429  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signature.txt
 4186   5430   
@@ -0,0 +1 @@
        5431  +
30460221008cf2ac3d46b7529fe7b73add56626a546fc9372b458e197dbd355198465e0918022100c059b86e01bd11d31c5fe19ee7c73fe3b8058ad2cebe2fe74c779c4a6a95684a
              \
 No newline at end of file
 4187   5432   
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
 4188   5433   
new file mode 100644
 4189   5434   
index 0000000..492ed33
 4190         -
-- /dev/null
        5435  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-signed-request.txt
 4191   5436   
@@ -0,0 +1,3 @@
        5437  +
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
        5438  +
Host:example.amazonaws.com
        5439  +
 4192   5440   
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
 4193   5441   
new file mode 100644
 4194   5442   
index 0000000..a93108f
 4195         -
-- /dev/null
        5443  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/query-string-to-sign.txt
 4196   5444   
@@ -0,0 +1,4 @@
        5445  +
AWS4-ECDSA-P256-SHA256
        5446  +
20150830T123600Z
        5447  +
20150830/service/aws4_request
        5448  +
b77c78c8276c5eac930db70b21b69b34d0c2560e1a963ab28e28481ef6a4ff66
              \
 No newline at end of file
 4197   5449   
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
 4198   5450   
new file mode 100644
 4199   5451   
index 0000000..9e273f6
 4200         -
-- /dev/null
        5452  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-utf8/request.txt
 4201   5453   
@@ -0,0 +1,2 @@
        5454  +
GET /ሴ HTTP/1.1
        5455  +
Host:example.amazonaws.com
 4202   5456   
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
 4203   5457   
new file mode 100644
 4204   5458   
index 0000000..0468d80
 4205         -
-- /dev/null
        5459  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/context.json
 4206   5460   
@@ -0,0 +1,12 @@
        5461  +
{
        5462  +
    "credentials": {
        5463  +
        "access_key_id": "AKIDEXAMPLE",
        5464  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5465  +
    },
        5466  +
    "expiration_in_seconds": 3600,
        5467  +
    "normalize": true,
        5468  +
    "region": "us-east-1",
        5469  +
    "service": "service",
        5470  +
    "sign_body": false,
        5471  +
    "timestamp": "2015-08-30T12:36:00Z"
        5472  +
}
              \
 No newline at end of file
 4207   5473   
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
 4208   5474   
similarity index 99%
 4209   5475   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/header-canonical-request.txt
 4210   5476   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-canonical-request.txt
 4211   5477   
index bb9d4bf..edc0bb4 100644
 4212   5478   
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
 4213   5479   
new file mode 100644
 4214   5480   
index 0000000..ee9a272
 4215         -
-- /dev/null
        5481  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signature.txt
 4216   5482   
@@ -0,0 +1 @@
        5483  +
3044022075e5fe54105695e4af6f5b59ff39f4f1d84de3bfdd546a6b9212936a78e743ac02204f25f3b9826688eb9743088f426eabd6b306432fd2c4c5c5aa2bbb9058267542
              \
 No newline at end of file
 4217   5484   
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
 4218   5485   
new file mode 100644
 4219   5486   
index 0000000..2090343
 4220         -
-- /dev/null
        5487  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/header-signed-request.txt
 4221   5488   
@@ -0,0 +1,6 @@
        5489  +
GET /?Param1=value1 HTTP/1.1
        5490  +
Host:example.amazonaws.com
        5491  +
X-Amz-Date:20150830T123600Z
        5492  +
X-Amz-Region-Set:us-east-1
        5493  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502210093d40fe05684ddadfadfafc4b8565d18ca94d590fc897577224bf09696bbde6102206f12bb5e2503781303cf6880c0a2136d4b820221eb9d6ac5ad61378b16b8ea5d
        5494  +
 4222   5495   
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
 4223   5496   
similarity index 99%
 4224   5497   
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
 4225   5498   
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
 4226   5499   
index a176f1d..06ed74f 100644
 4227   5500   
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
 4228   5501   
new file mode 100644
 4229   5502   
index 0000000..379dcb2
 4230         -
-- /dev/null
        5503  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/public-key.json
 4231   5504   
@@ -0,0 +1,4 @@
        5505  +
{
        5506  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5507  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5508  +
}
 4232   5509   
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
 4233   5510   
similarity index 99%
 4234   5511   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-empty-query-key/query-canonical-request.txt
 4235   5512   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-canonical-request.txt
 4236   5513   
index 344384b..a875d70 100644
 4237   5514   
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
 4238   5515   
new file mode 100644
 4239   5516   
index 0000000..ef93624
 4240         -
-- /dev/null
        5517  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signature.txt
 4241   5518   
@@ -0,0 +1 @@
        5519  +
30460221009a9e99aefe8effed47320e6e9f54cb943e2f72ce638ed7aae2a6711240304b82022100a90e99f053dd51912a6993299229e19aebbd81e68d4d24a1bdedcc6717c9f456
              \
 No newline at end of file
 4242   5520   
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
 4243   5521   
new file mode 100644
 4244   5522   
index 0000000..92829f7
 4245         -
-- /dev/null
        5523  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/query-signed-request.txt
 4246   5524   
@@ -0,0 +1,3 @@
        5525  +
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
        5526  +
Host:example.amazonaws.com
        5527  +
 4247   5528   
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
 4248   5529   
similarity index 99%
 4249   5530   
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
 4250   5531   
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
 4251   5532   
index b625052..4ff9191 100644
 4252   5533   
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
 4253   5534   
similarity index 67%
 4254   5535   
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
 4255   5536   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4256   5537   
index 970d0a0..f4a03bb 100644
 4257         -
-- 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
        5538  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-empty-query-key/request.txt
 4258   5539   
@@ -1,3 +1,2 @@
 4259   5540   
GET /?Param1=value1 HTTP/1.1
 4260   5541   
Host:example.amazonaws.com
 4261         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4262   5542   
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
 4263   5543   
new file mode 100644
 4264   5544   
index 0000000..0468d80
 4265         -
-- /dev/null
        5545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/context.json
 4266   5546   
@@ -0,0 +1,12 @@
        5547  +
{
        5548  +
    "credentials": {
        5549  +
        "access_key_id": "AKIDEXAMPLE",
        5550  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5551  +
    },
        5552  +
    "expiration_in_seconds": 3600,
        5553  +
    "normalize": true,
        5554  +
    "region": "us-east-1",
        5555  +
    "service": "service",
        5556  +
    "sign_body": false,
        5557  +
    "timestamp": "2015-08-30T12:36:00Z"
        5558  +
}
              \
 No newline at end of file
 4267   5559   
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
 4268   5560   
new file mode 100644
 4269   5561   
index 0000000..da07537
 4270         -
-- /dev/null
        5562  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-canonical-request.txt
 4271   5563   
@@ -0,0 +1,9 @@
        5564  +
GET
        5565  +
/
        5566  +
%E1%88%B4=Value1&Param=Value2&Param-3=Value3
        5567  +
host:example.amazonaws.com
        5568  +
x-amz-date:20150830T123600Z
        5569  +
x-amz-region-set:us-east-1
        5570  +
        5571  +
host;x-amz-date;x-amz-region-set
        5572  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4272   5573   
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
 4273   5574   
new file mode 100644
 4274   5575   
index 0000000..edb21e5
 4275         -
-- /dev/null
        5576  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signature.txt
 4276   5577   
@@ -0,0 +1 @@
        5578  +
304402201c9d8aa856d87542e2fc29ccb3841bf604d7582a8ab2ca8e6c9e21c98693f35502207052f84ecd1dc8b6468a536e9d1bdc990cf14bae8142c1cc945f15bcf0e87613
              \
 No newline at end of file
 4277   5579   
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
 4278   5580   
new file mode 100644
 4279   5581   
index 0000000..e60394c
 4280         -
-- /dev/null
        5582  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-signed-request.txt
 4281   5583   
@@ -0,0 +1,6 @@
        5584  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5585  +
Host:example.amazonaws.com
        5586  +
X-Amz-Date:20150830T123600Z
        5587  +
X-Amz-Region-Set:us-east-1
        5588  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100cef3137947f52af13fe5591d4ddcff0260176e7b2a668b43ac8f0cba2e489fe502203b4fe53c9fe3e8925643fe0e4c3ec0b3ea6262917bf7300d2e2abb399078e6de
        5589  +
 4282   5590   
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
 4283   5591   
new file mode 100644
 4284   5592   
index 0000000..1dfc886
 4285         -
-- /dev/null
        5593  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/header-string-to-sign.txt
 4286   5594   
@@ -0,0 +1,4 @@
        5595  +
AWS4-ECDSA-P256-SHA256
        5596  +
20150830T123600Z
        5597  +
20150830/service/aws4_request
        5598  +
55568a29040b287c72015a5ab482d9aaceeb1e9881f3bc946378bc3d6079f6a5
              \
 No newline at end of file
 4287   5599   
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
 4288   5600   
new file mode 100644
 4289   5601   
index 0000000..379dcb2
 4290         -
-- /dev/null
        5602  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/public-key.json
 4291   5603   
@@ -0,0 +1,4 @@
        5604  +
{
        5605  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5606  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5607  +
}
 4292   5608   
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
 4293   5609   
new file mode 100644
 4294   5610   
index 0000000..e94dc0c
 4295         -
-- /dev/null
        5611  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-canonical-request.txt
 4296   5612   
@@ -0,0 +1,7 @@
        5613  +
GET
        5614  +
/
        5615  +
%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
        5616  +
host:example.amazonaws.com
        5617  +
        5618  +
host
        5619  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4297   5620   
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
 4298   5621   
new file mode 100644
 4299   5622   
index 0000000..7489437
 4300         -
-- /dev/null
        5623  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signature.txt
 4301   5624   
@@ -0,0 +1 @@
        5625  +
3046022100dcc853d7fbd59ceebd1ac57d404b979a7252cf88c79dcc6d58167902750235fd022100ffa98128e35b03aa434287165980f78533e9e6dfc80373cea82b047f4f0554ee
              \
 No newline at end of file
 4302   5626   
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
 4303   5627   
new file mode 100644
 4304   5628   
index 0000000..90c0e73
 4305         -
-- /dev/null
        5629  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-signed-request.txt
 4306   5630   
@@ -0,0 +1,3 @@
        5631  +
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
        5632  +
Host:example.amazonaws.com
        5633  +
 4307   5634   
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
 4308   5635   
new file mode 100644
 4309   5636   
index 0000000..ab8a711
 4310         -
-- /dev/null
        5637  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/query-string-to-sign.txt
 4311   5638   
@@ -0,0 +1,4 @@
        5639  +
AWS4-ECDSA-P256-SHA256
        5640  +
20150830T123600Z
        5641  +
20150830/service/aws4_request
        5642  +
56d9ab07692614338f2aa44f1018ad4102b19305fba8b83383d2d7c6ca816614
              \
 No newline at end of file
 4312   5643   
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
 4313   5644   
new file mode 100644
 4314   5645   
index 0000000..368c6e3
 4315         -
-- /dev/null
        5646  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-encoded/request.txt
 4316   5647   
@@ -0,0 +1,2 @@
        5648  +
GET /?Param-3=Value3&Param=Value2&%E1%88%B4=Value1 HTTP/1.1
        5649  +
Host:example.amazonaws.com
 4317   5650   
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
 4318   5651   
new file mode 100644
 4319   5652   
index 0000000..0468d80
 4320         -
-- /dev/null
        5653  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/context.json
 4321   5654   
@@ -0,0 +1,12 @@
        5655  +
{
        5656  +
    "credentials": {
        5657  +
        "access_key_id": "AKIDEXAMPLE",
        5658  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5659  +
    },
        5660  +
    "expiration_in_seconds": 3600,
        5661  +
    "normalize": true,
        5662  +
    "region": "us-east-1",
        5663  +
    "service": "service",
        5664  +
    "sign_body": false,
        5665  +
    "timestamp": "2015-08-30T12:36:00Z"
        5666  +
}
              \
 No newline at end of file
 4322   5667   
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
 4323   5668   
similarity index 99%
 4324   5669   
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
 4325   5670   
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
 4326   5671   
index 74f625a..3db56f7 100644
 4327   5672   
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
 4328   5673   
new file mode 100644
 4329   5674   
index 0000000..e6042bc
 4330         -
-- /dev/null
        5675  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signature.txt
 4331   5676   
@@ -0,0 +1 @@
        5677  +
3045022100b342b0d62487d235a5baf82e970102670a8d7af34c61f086125d204a90724d9e022070304e846de3de228c57e528b61f4addfdb5fa788a8a452e483c6a286d8803f5
              \
 No newline at end of file
 4332   5678   
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
 4333   5679   
new file mode 100644
 4334   5680   
index 0000000..5505969
 4335         -
-- /dev/null
        5681  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/header-signed-request.txt
 4336   5682   
@@ -0,0 +1,6 @@
        5683  +
GET /?Param2=value2&Param1=value1 HTTP/1.1
        5684  +
Host:example.amazonaws.com
        5685  +
X-Amz-Date:20150830T123600Z
        5686  +
X-Amz-Region-Set:us-east-1
        5687  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220394fa0699225f403514cb4db03b7c479f64c5f9864bf520b871bb23a054d6517022100d4445c909fc62a43c6c485a8582621e0e14c6ef1e4218072bc2dcaffc1188f18
        5688  +
 4337   5689   
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
 4338   5690   
similarity index 99%
 4339   5691   
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
 4340   5692   
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
 4341   5693   
index 44873b7..e8f5e31 100644
 4342   5694   
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
 4343   5695   
new file mode 100644
 4344   5696   
index 0000000..379dcb2
 4345         -
-- /dev/null
        5697  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/public-key.json
 4346   5698   
@@ -0,0 +1,4 @@
        5699  +
{
        5700  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5701  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5702  +
}
 4347   5703   
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
 4348   5704   
similarity index 99%
 4349   5705   
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
 4350   5706   
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
 4351   5707   
index 6d30727..3fe6a9f 100644
 4352   5708   
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
 4353   5709   
new file mode 100644
 4354   5710   
index 0000000..3f35de8
 4355         -
-- /dev/null
        5711  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signature.txt
 4356   5712   
@@ -0,0 +1 @@
        5713  +
304402207c976c47b1bcf7333ad10fcf78498bb14a368a6cd8f58703d47c9e91c4468c13022059a3715bafae9410271bf3355ccd0bbc622fe90f3c0168203d83323297789de5
              \
 No newline at end of file
 4357   5714   
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
 4358   5715   
new file mode 100644
 4359   5716   
index 0000000..30b336b
 4360         -
-- /dev/null
        5717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/query-signed-request.txt
 4361   5718   
@@ -0,0 +1,3 @@
        5719  +
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
        5720  +
Host:example.amazonaws.com
        5721  +
 4362   5722   
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
 4363   5723   
similarity index 99%
 4364   5724   
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
 4365   5725   
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
 4366   5726   
index 99d0510..7f0565f 100644
 4367   5727   
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
 4368   5728   
similarity index 100%
 4369   5729   
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
 4370   5730   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-order-key-case/request.txt
 4371   5731   
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
 4372   5732   
new file mode 100644
 4373   5733   
index 0000000..0468d80
 4374         -
-- /dev/null
        5734  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/context.json
 4375   5735   
@@ -0,0 +1,12 @@
        5736  +
{
        5737  +
    "credentials": {
        5738  +
        "access_key_id": "AKIDEXAMPLE",
        5739  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5740  +
    },
        5741  +
    "expiration_in_seconds": 3600,
        5742  +
    "normalize": true,
        5743  +
    "region": "us-east-1",
        5744  +
    "service": "service",
        5745  +
    "sign_body": false,
        5746  +
    "timestamp": "2015-08-30T12:36:00Z"
        5747  +
}
              \
 No newline at end of file
 4376   5748   
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
 4377   5749   
similarity index 99%
 4378   5750   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-canonical-request.txt
 4379   5751   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-canonical-request.txt
 4380   5752   
index 816c862..cc4537a 100644
 4381   5753   
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
 4382   5754   
new file mode 100644
 4383   5755   
index 0000000..70d38c1
 4384         -
-- /dev/null
        5756  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signature.txt
 4385   5757   
@@ -0,0 +1 @@
        5758  +
3045022100ce7ae9d07bea650598803710644006d47de14a884d0777abd71ccf76164a36c70220256f34ad94c5cb1291a05f7680c2a0068c51d2a31a4e2fe2100d4a58197565ed
              \
 No newline at end of file
 4386   5759   
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
 4387   5760   
new file mode 100644
 4388   5761   
index 0000000..0647eea
 4389         -
-- /dev/null
        5762  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-signed-request.txt
 4390   5763   
@@ -0,0 +1,6 @@
        5764  +
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
        5765  +
Host:example.amazonaws.com
        5766  +
X-Amz-Date:20150830T123600Z
        5767  +
X-Amz-Region-Set:us-east-1
        5768  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=30450220023b0ce37b4e3f7fe6b6e155dab72846b461d22ff4820f019a07afef476f61ee022100f985e993037270cc48ac905b360046d077770a2b28aa829ea909430b1b3ed8aa
        5769  +
 4391   5770   
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
 4392   5771   
similarity index 99%
 4393   5772   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/header-string-to-sign.txt
 4394   5773   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/header-string-to-sign.txt
 4395   5774   
index 6129fc5..cc19d14 100644
 4396   5775   
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
 4397   5776   
new file mode 100644
 4398   5777   
index 0000000..379dcb2
 4399         -
-- /dev/null
        5778  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/public-key.json
 4400   5779   
@@ -0,0 +1,4 @@
        5780  +
{
        5781  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5782  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5783  +
}
 4401   5784   
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
 4402   5785   
similarity index 99%
 4403   5786   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-canonical-request.txt
 4404   5787   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-canonical-request.txt
 4405   5788   
index b77ee9f..ed6a10e 100644
 4406   5789   
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
 4407   5790   
new file mode 100644
 4408   5791   
index 0000000..2ceba7b
 4409         -
-- /dev/null
        5792  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signature.txt
 4410   5793   
@@ -0,0 +1 @@
        5794  +
30450220720698c40b04f1a2e1f94e91ed9a59f8b2a2e70cb55e6dd245d0aec039cad6ea022100b2076666b780735e1ddabf773f141ff49f8df3686ffb6c4c7798ba22470e3819
              \
 No newline at end of file
 4411   5795   
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
 4412   5796   
new file mode 100644
 4413   5797   
index 0000000..0cd6d0a
 4414         -
-- /dev/null
        5798  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-signed-request.txt
 4415   5799   
@@ -0,0 +1,3 @@
        5800  +
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
        5801  +
Host:example.amazonaws.com
        5802  +
 4416   5803   
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
 4417   5804   
similarity index 99%
 4418   5805   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-query-unreserved/query-string-to-sign.txt
 4419   5806   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/query-string-to-sign.txt
 4420   5807   
index 1cfed7a..aad1421 100644
 4421   5808   
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
 4422   5809   
similarity index 86%
 4423   5810   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
 4424   5811   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4425   5812   
index d2833b3..36b2fe3 100644
 4426         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query-unreserved/get-vanilla-query-unreserved.req
        5813  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query-unreserved/request.txt
 4427   5814   
@@ -1,3 +1,2 @@
 4428   5815   
GET /?-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=-._~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz HTTP/1.1
 4429   5816   
Host:example.amazonaws.com
 4430         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4431   5817   
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
 4432   5818   
new file mode 100644
 4433   5819   
index 0000000..0468d80
 4434         -
-- /dev/null
        5820  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/context.json
 4435   5821   
@@ -0,0 +1,12 @@
        5822  +
{
        5823  +
    "credentials": {
        5824  +
        "access_key_id": "AKIDEXAMPLE",
        5825  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5826  +
    },
        5827  +
    "expiration_in_seconds": 3600,
        5828  +
    "normalize": true,
        5829  +
    "region": "us-east-1",
        5830  +
    "service": "service",
        5831  +
    "sign_body": false,
        5832  +
    "timestamp": "2015-08-30T12:36:00Z"
        5833  +
}
              \
 No newline at end of file
 4436   5834   
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
 4437   5835   
new file mode 100644
 4438   5836   
index 0000000..76db73d
 4439         -
-- /dev/null
        5837  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-canonical-request.txt
 4440   5838   
@@ -0,0 +1,9 @@
        5839  +
GET
        5840  +
/
        5841  +
        5842  +
host:example.amazonaws.com
        5843  +
x-amz-date:20150830T123600Z
        5844  +
x-amz-region-set:us-east-1
        5845  +
        5846  +
host;x-amz-date;x-amz-region-set
        5847  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4441   5848   
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
 4442   5849   
new file mode 100644
 4443   5850   
index 0000000..281cc62
 4444         -
-- /dev/null
        5851  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signature.txt
 4445   5852   
@@ -0,0 +1 @@
        5853  +
304402202f36c5363f01990fac07fb18efd255fb82fa3807a8a84946f0b5ac2b71ac96f5022068a86869075a8ca0fe4f875f6a07af6df16538f156dba648c9a96b7c3d687924
              \
 No newline at end of file
 4446   5854   
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
 4447   5855   
new file mode 100644
 4448   5856   
index 0000000..cce9925
 4449         -
-- /dev/null
        5857  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-signed-request.txt
 4450   5858   
@@ -0,0 +1,6 @@
        5859  +
GET / HTTP/1.1
        5860  +
Host:example.amazonaws.com
        5861  +
X-Amz-Date:20150830T123600Z
        5862  +
X-Amz-Region-Set:us-east-1
        5863  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502201f8540fba7741deef60d162a2cf5a8abece28db296174e82420ae6790d93b8af022100d3109ac9ec7995b9e976efa2c54b278d3fab0737e3c73483771773d2061d8f3f
        5864  +
 4451   5865   
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
 4452   5866   
new file mode 100644
 4453   5867   
index 0000000..600f1d8
 4454         -
-- /dev/null
        5868  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/header-string-to-sign.txt
 4455   5869   
@@ -0,0 +1,4 @@
        5870  +
AWS4-ECDSA-P256-SHA256
        5871  +
20150830T123600Z
        5872  +
20150830/service/aws4_request
        5873  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4456   5874   
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
 4457   5875   
new file mode 100644
 4458   5876   
index 0000000..379dcb2
 4459         -
-- /dev/null
        5877  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/public-key.json
 4460   5878   
@@ -0,0 +1,4 @@
        5879  +
{
        5880  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5881  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5882  +
}
 4461   5883   
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
 4462   5884   
new file mode 100644
 4463   5885   
index 0000000..779c51c
 4464         -
-- /dev/null
        5886  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-canonical-request.txt
 4465   5887   
@@ -0,0 +1,7 @@
        5888  +
GET
        5889  +
/
        5890  +
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
        5891  +
host:example.amazonaws.com
        5892  +
        5893  +
host
        5894  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4466   5895   
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
 4467   5896   
new file mode 100644
 4468   5897   
index 0000000..2979e5e
 4469         -
-- /dev/null
        5898  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signature.txt
 4470   5899   
@@ -0,0 +1 @@
        5900  +
304402203840161a4739cd19b33c2186657554e140b84ce1fe9021074f154410b97ffad002200606f4430d72826616b2cd47590fcee42bbf23cb0287458389a43f9e6edd897d
              \
 No newline at end of file
 4471   5901   
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
 4472   5902   
new file mode 100644
 4473   5903   
index 0000000..1b3179c
 4474         -
-- /dev/null
        5904  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-signed-request.txt
 4475   5905   
@@ -0,0 +1,3 @@
        5906  +
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
        5907  +
Host:example.amazonaws.com
        5908  +
 4476   5909   
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
 4477   5910   
new file mode 100644
 4478   5911   
index 0000000..6e29a7e
 4479         -
-- /dev/null
        5912  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/query-string-to-sign.txt
 4480   5913   
@@ -0,0 +1,4 @@
        5914  +
AWS4-ECDSA-P256-SHA256
        5915  +
20150830T123600Z
        5916  +
20150830/service/aws4_request
        5917  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4481   5918   
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
 4482   5919   
similarity index 60%
 4483   5920   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
 4484   5921   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4485   5922   
index 0f7a9bf..e659c3b 100644
 4486         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla/get-vanilla.req
        5923  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-query/request.txt
 4487   5924   
@@ -1,3 +1,2 @@
 4488   5925   
GET / HTTP/1.1
 4489   5926   
Host:example.amazonaws.com
 4490         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4491   5927   
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
 4492   5928   
new file mode 100644
 4493   5929   
index 0000000..0468d80
 4494         -
-- /dev/null
        5930  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/context.json
 4495   5931   
@@ -0,0 +1,12 @@
        5932  +
{
        5933  +
    "credentials": {
        5934  +
        "access_key_id": "AKIDEXAMPLE",
        5935  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        5936  +
    },
        5937  +
    "expiration_in_seconds": 3600,
        5938  +
    "normalize": true,
        5939  +
    "region": "us-east-1",
        5940  +
    "service": "service",
        5941  +
    "sign_body": false,
        5942  +
    "timestamp": "2015-08-30T12:36:00Z"
        5943  +
}
              \
 No newline at end of file
 4496   5944   
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
 4497   5945   
new file mode 100644
 4498   5946   
index 0000000..8841ddf
 4499         -
-- /dev/null
        5947  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-canonical-request.txt
 4500   5948   
@@ -0,0 +1,9 @@
        5949  +
GET
        5950  +
/
        5951  +
%E1%88%B4=bar
        5952  +
host:example.amazonaws.com
        5953  +
x-amz-date:20150830T123600Z
        5954  +
x-amz-region-set:us-east-1
        5955  +
        5956  +
host;x-amz-date;x-amz-region-set
        5957  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4501   5958   
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
 4502   5959   
new file mode 100644
 4503   5960   
index 0000000..1497add
 4504         -
-- /dev/null
        5961  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signature.txt
 4505   5962   
@@ -0,0 +1 @@
        5963  +
3046022100b47fe24b090d857f34597a58a4e8acd0ea9639462e606af7e1fa1e2c3fae1d630221008ce7f870adf7d2c06f299da0c9870402b027c6a50ff027881655a664ff294cc3
              \
 No newline at end of file
 4506   5964   
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
 4507   5965   
new file mode 100644
 4508   5966   
index 0000000..961bc10
 4509         -
-- /dev/null
        5967  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-signed-request.txt
 4510   5968   
@@ -0,0 +1,6 @@
        5969  +
GET /?ሴ=bar HTTP/1.1
        5970  +
Host:example.amazonaws.com
        5971  +
X-Amz-Date:20150830T123600Z
        5972  +
X-Amz-Region-Set:us-east-1
        5973  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304502206e0b9d70bb0413a557946314e04739d721c9f301d452c072590edfdcb9320572022100846f242fb0346c8c56c76a6f0e70c521d7ac02742f09c2e7b5253f1e9afe5a44
        5974  +
 4511   5975   
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
 4512   5976   
new file mode 100644
 4513   5977   
index 0000000..e78ed70
 4514         -
-- /dev/null
        5978  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/header-string-to-sign.txt
 4515   5979   
@@ -0,0 +1,4 @@
        5980  +
AWS4-ECDSA-P256-SHA256
        5981  +
20150830T123600Z
        5982  +
20150830/service/aws4_request
        5983  +
b27131d754045e85823698b1fe3fc9694c17b16d97f4c43cef2359a1233c7b76
              \
 No newline at end of file
 4516   5984   
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
 4517   5985   
new file mode 100644
 4518   5986   
index 0000000..379dcb2
 4519         -
-- /dev/null
        5987  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/public-key.json
 4520   5988   
@@ -0,0 +1,4 @@
        5989  +
{
        5990  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        5991  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        5992  +
}
 4521   5993   
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
 4522   5994   
new file mode 100644
 4523   5995   
index 0000000..6d5ae93
 4524         -
-- /dev/null
        5996  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-canonical-request.txt
 4525   5997   
@@ -0,0 +1,7 @@
        5998  +
GET
        5999  +
/
        6000  +
%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
        6001  +
host:example.amazonaws.com
        6002  +
        6003  +
host
        6004  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4526   6005   
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
 4527   6006   
new file mode 100644
 4528   6007   
index 0000000..92107f2
 4529         -
-- /dev/null
        6008  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signature.txt
 4530   6009   
@@ -0,0 +1 @@
        6010  +
3044022076d8b03a19db63abc106c50f13487d5363f1eac2c77bc4eda764eadba8f84c6502205c0aa76554ba223a97958be9ff34aca35d84cb7b8c7ba698793ead9e6788e241
              \
 No newline at end of file
 4531   6011   
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
 4532   6012   
new file mode 100644
 4533   6013   
index 0000000..bb8a75b
 4534         -
-- /dev/null
        6014  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-signed-request.txt
 4535   6015   
@@ -0,0 +1,3 @@
        6016  +
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
        6017  +
Host:example.amazonaws.com
        6018  +
 4536   6019   
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
 4537   6020   
new file mode 100644
 4538   6021   
index 0000000..9fa94c7
 4539         -
-- /dev/null
        6022  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/query-string-to-sign.txt
 4540   6023   
@@ -0,0 +1,4 @@
        6024  +
AWS4-ECDSA-P256-SHA256
        6025  +
20150830T123600Z
        6026  +
20150830/service/aws4_request
        6027  +
e22d57192c68232f914afff959b8aa1027756098f879c7d4d7615a2469f85c1f
              \
 No newline at end of file
 4541   6028   
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
 4542   6029   
new file mode 100644
 4543   6030   
index 0000000..aff333a
 4544         -
-- /dev/null
        6031  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-utf8-query/request.txt
 4545   6032   
@@ -0,0 +1,2 @@
        6033  +
GET /?ሴ=bar HTTP/1.1
        6034  +
Host:example.amazonaws.com
 4546   6035   
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
 4547   6036   
new file mode 100644
 4548   6037   
index 0000000..a334e18
 4549         -
-- /dev/null
        6038  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/context.json
 4550   6039   
@@ -0,0 +1,13 @@
        6040  +
{
        6041  +
    "credentials": {
        6042  +
        "access_key_id": "AKIDEXAMPLE",
        6043  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6044  +
        "token": "6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267"
        6045  +
    },
        6046  +
    "expiration_in_seconds": 3600,
        6047  +
    "normalize": true,
        6048  +
    "region": "us-east-1",
        6049  +
    "service": "service",
        6050  +
    "sign_body": false,
        6051  +
    "timestamp": "2015-08-30T12:36:00Z"
        6052  +
}
              \
 No newline at end of file
 4551   6053   
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
 4552   6054   
similarity index 99%
 4553   6055   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/header-canonical-request.txt
 4554   6056   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-canonical-request.txt
 4555   6057   
index f14defd..0e9ad42 100644
 4556   6058   
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
 4557   6059   
new file mode 100644
 4558   6060   
index 0000000..a7673b5
 4559         -
-- /dev/null
        6061  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signature.txt
 4560   6062   
@@ -0,0 +1 @@
        6063  +
3044022035c6bc9a8cab8a434bd8bd1cc3b6f1401842f530f1537722ad10d72a1577f8c80220101352fe0720715efbab80f82edb133175f0b61cad85daf943ad615852f9ae10
              \
 No newline at end of file
 4561   6064   
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
 4562   6065   
new file mode 100644
 4563   6066   
index 0000000..ed16e76
 4564         -
-- /dev/null
        6067  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/header-signed-request.txt
 4565   6068   
@@ -0,0 +1,7 @@
        6069  +
GET / HTTP/1.1
        6070  +
Host:example.amazonaws.com
        6071  +
X-Amz-Security-Token:6e86291e8372ff2a2260956d9b8aae1d763fbf315fa00fa31553b73ebf194267
        6072  +
X-Amz-Date:20150830T123600Z
        6073  +
X-Amz-Region-Set:us-east-1
        6074  +
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
        6075  +
 4566   6076   
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
 4567   6077   
similarity index 99%
 4568   6078   
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
 4569   6079   
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
 4570   6080   
index 4edece5..6c1ec65 100644
 4571   6081   
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
 4572   6082   
new file mode 100644
 4573   6083   
index 0000000..379dcb2
 4574         -
-- /dev/null
        6084  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/public-key.json
 4575   6085   
@@ -0,0 +1,4 @@
        6086  +
{
        6087  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6088  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6089  +
}
 4576   6090   
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
 4577   6091   
similarity index 99%
 4578   6092   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/get-vanilla-with-session-token/query-canonical-request.txt
 4579   6093   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-canonical-request.txt
 4580   6094   
index 7c042af..1876b42 100644
 4581   6095   
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
 4582   6096   
new file mode 100644
 4583   6097   
index 0000000..903dfb4
 4584         -
-- /dev/null
        6098  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signature.txt
 4585   6099   
@@ -0,0 +1 @@
        6100  +
3046022100d51f7ae1ac1b6b3db6c40f69aafb4306f81cdd2d87a85f69b2c4cb8fd057cf21022100cdb787a698c3f53d961f5b6279a0ff246097f50c874bcbf7a249bf4c0f118fb3
              \
 No newline at end of file
 4586   6101   
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
 4587   6102   
new file mode 100644
 4588   6103   
index 0000000..bf1d246
 4589         -
-- /dev/null
        6104  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/query-signed-request.txt
 4590   6105   
@@ -0,0 +1,3 @@
        6106  +
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
        6107  +
Host:example.amazonaws.com
        6108  +
 4591   6109   
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
 4592   6110   
similarity index 99%
 4593   6111   
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
 4594   6112   
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
 4595   6113   
index 0fd066a..f1b1790 100644
 4596   6114   
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
 4597   6115   
similarity index 60%
 4598   6116   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
 4599   6117   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4600   6118   
index 0f7a9bf..e659c3b 100644
 4601         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/get-vanilla-query/get-vanilla-query.req
        6119  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla-with-session-token/request.txt
 4602   6120   
@@ -1,3 +1,2 @@
 4603   6121   
GET / HTTP/1.1
 4604   6122   
Host:example.amazonaws.com
 4605         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4606   6123   
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
 4607   6124   
new file mode 100644
 4608   6125   
index 0000000..76db73d
 4609         -
-- /dev/null
        6126  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/canonical-request.txt
 4610   6127   
@@ -0,0 +1,9 @@
        6128  +
GET
        6129  +
/
        6130  +
        6131  +
host:example.amazonaws.com
        6132  +
x-amz-date:20150830T123600Z
        6133  +
x-amz-region-set:us-east-1
        6134  +
        6135  +
host;x-amz-date;x-amz-region-set
        6136  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4611   6137   
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
 4612   6138   
new file mode 100644
 4613   6139   
index 0000000..0468d80
 4614         -
-- /dev/null
        6140  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/context.json
 4615   6141   
@@ -0,0 +1,12 @@
        6142  +
{
        6143  +
    "credentials": {
        6144  +
        "access_key_id": "AKIDEXAMPLE",
        6145  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6146  +
    },
        6147  +
    "expiration_in_seconds": 3600,
        6148  +
    "normalize": true,
        6149  +
    "region": "us-east-1",
        6150  +
    "service": "service",
        6151  +
    "sign_body": false,
        6152  +
    "timestamp": "2015-08-30T12:36:00Z"
        6153  +
}
              \
 No newline at end of file
 4616   6154   
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
 4617   6155   
new file mode 100644
 4618   6156   
index 0000000..76db73d
 4619         -
-- /dev/null
        6157  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-canonical-request.txt
 4620   6158   
@@ -0,0 +1,9 @@
        6159  +
GET
        6160  +
/
        6161  +
        6162  +
host:example.amazonaws.com
        6163  +
x-amz-date:20150830T123600Z
        6164  +
x-amz-region-set:us-east-1
        6165  +
        6166  +
host;x-amz-date;x-amz-region-set
        6167  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4621   6168   
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
 4622   6169   
new file mode 100644
 4623   6170   
index 0000000..a96ff24
 4624         -
-- /dev/null
        6171  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signature.txt
 4625   6172   
@@ -0,0 +1 @@
        6173  +
3045022018b4e277d0281864beb51d3600e23f88510ea5031d68ddfbb68614b82a5eb7d2022100effb9c5f22ed9ef3ae0ab243d21f06bce82365bbb79529a07b6888c343ae5f8c
              \
 No newline at end of file
 4626   6174   
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
 4627   6175   
new file mode 100644
 4628   6176   
index 0000000..689078b
 4629         -
-- /dev/null
        6177  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-signed-request.txt
 4630   6178   
@@ -0,0 +1,6 @@
        6179  +
GET / HTTP/1.1
        6180  +
Host:example.amazonaws.com
        6181  +
X-Amz-Date:20150830T123600Z
        6182  +
X-Amz-Region-Set:us-east-1
        6183  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3046022100fddaaf816a31e30d04973875b13bc27b98da10907a3a1872fd5819a221334abc022100de2ee81d83b54f31efc82834de07e6cd4d5c6f25bfa08e0f29a15bb0977c343e
        6184  +
 4631   6185   
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
 4632   6186   
new file mode 100644
 4633   6187   
index 0000000..600f1d8
 4634         -
-- /dev/null
        6188  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/header-string-to-sign.txt
 4635   6189   
@@ -0,0 +1,4 @@
        6190  +
AWS4-ECDSA-P256-SHA256
        6191  +
20150830T123600Z
        6192  +
20150830/service/aws4_request
        6193  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4636   6194   
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
 4637   6195   
new file mode 100644
 4638   6196   
index 0000000..379dcb2
 4639         -
-- /dev/null
        6197  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/public-key.json
 4640   6198   
@@ -0,0 +1,4 @@
        6199  +
{
        6200  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6201  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6202  +
}
 4641   6203   
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
 4642   6204   
new file mode 100644
 4643   6205   
index 0000000..779c51c
 4644         -
-- /dev/null
        6206  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-canonical-request.txt
 4645   6207   
@@ -0,0 +1,7 @@
        6208  +
GET
        6209  +
/
        6210  +
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
        6211  +
host:example.amazonaws.com
        6212  +
        6213  +
host
        6214  +
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
              \
 No newline at end of file
 4646   6215   
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
 4647   6216   
new file mode 100644
 4648   6217   
index 0000000..cc42158
 4649         -
-- /dev/null
        6218  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signature.txt
 4650   6219   
@@ -0,0 +1 @@
        6220  +
3045022100b3246f8e1442dd58e73292ae1294720c3256ee58f6cea50f3a3f83b4a4b0331a0220329693f7745c9008a5887c0529ceccb0fae4e16d707b712ea66acdbaf963769a
              \
 No newline at end of file
 4651   6221   
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
 4652   6222   
new file mode 100644
 4653   6223   
index 0000000..dc6d01d
 4654         -
-- /dev/null
        6224  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-signed-request.txt
 4655   6225   
@@ -0,0 +1,3 @@
        6226  +
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
        6227  +
Host:example.amazonaws.com
        6228  +
 4656   6229   
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
 4657   6230   
new file mode 100644
 4658   6231   
index 0000000..6e29a7e
 4659         -
-- /dev/null
        6232  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/query-string-to-sign.txt
 4660   6233   
@@ -0,0 +1,4 @@
        6234  +
AWS4-ECDSA-P256-SHA256
        6235  +
20150830T123600Z
        6236  +
20150830/service/aws4_request
        6237  +
890c4ed28c1a1ac10b5862719b537afbe392e987dc1aab1efa16fe7de41d3c81
              \
 No newline at end of file
 4661   6238   
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
 4662   6239   
new file mode 100644
 4663   6240   
index 0000000..e659c3b
 4664         -
-- /dev/null
        6241  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/request.txt
 4665   6242   
@@ -0,0 +1,2 @@
        6243  +
GET / HTTP/1.1
        6244  +
Host:example.amazonaws.com
 4666   6245   
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
 4667   6246   
new file mode 100644
 4668   6247   
index 0000000..600f1d8
 4669         -
-- /dev/null
        6248  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/get-vanilla/string-to-sign.txt
 4670   6249   
@@ -0,0 +1,4 @@
        6250  +
AWS4-ECDSA-P256-SHA256
        6251  +
20150830T123600Z
        6252  +
20150830/service/aws4_request
        6253  +
cf59db423e841c8b7e3444158185aa261b724a5c27cbe762676f3eed19f4dc02
              \
 No newline at end of file
 4671   6254   
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
 4672   6255   
new file mode 100644
 4673   6256   
index 0000000..0468d80
 4674         -
-- /dev/null
        6257  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/context.json
 4675   6258   
@@ -0,0 +1,12 @@
        6259  +
{
        6260  +
    "credentials": {
        6261  +
        "access_key_id": "AKIDEXAMPLE",
        6262  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6263  +
    },
        6264  +
    "expiration_in_seconds": 3600,
        6265  +
    "normalize": true,
        6266  +
    "region": "us-east-1",
        6267  +
    "service": "service",
        6268  +
    "sign_body": false,
        6269  +
    "timestamp": "2015-08-30T12:36:00Z"
        6270  +
}
              \
 No newline at end of file
 4676   6271   
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
 4677   6272   
similarity index 99%
 4678   6273   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-canonical-request.txt
 4679   6274   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-canonical-request.txt
 4680   6275   
index a6942c1..e881ac7 100644
 4681   6276   
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
 4682   6277   
new file mode 100644
 4683   6278   
index 0000000..4210210
 4684         -
-- /dev/null
        6279  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signature.txt
 4685   6280   
@@ -0,0 +1 @@
        6281  +
3044022025397839d55c2147eead39170f5b1758c9f9fb4ccbcda4c8612a23df8e90c13d022079f5fc1377201691a11be43def8be12fe882e998589317508ff67b8dbe982722
              \
 No newline at end of file
 4686   6282   
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
 4687   6283   
new file mode 100644
 4688   6284   
index 0000000..257b110
 4689         -
-- /dev/null
        6285  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-signed-request.txt
 4690   6286   
@@ -0,0 +1,6 @@
        6287  +
POST / HTTP/1.1
        6288  +
Host:example.amazonaws.com
        6289  +
X-Amz-Date:20150830T123600Z
        6290  +
X-Amz-Region-Set:us-east-1
        6291  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304602210081bb2a93eae5cce843abe0e7cac2f0e4cecdd0a79cb8d60e5b9dc4c8e8906b61022100e18c8119f50b8218da995ada62080d88ff75d2f02309c3685a02dfb9a83b103f
        6292  +
 4691   6293   
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
 4692   6294   
similarity index 99%
 4693   6295   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/header-string-to-sign.txt
 4694   6296   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/header-string-to-sign.txt
 4695   6297   
index d5650cb..f8adf13 100644
 4696   6298   
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
 4697   6299   
new file mode 100644
 4698   6300   
index 0000000..379dcb2
 4699         -
-- /dev/null
        6301  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/public-key.json
 4700   6302   
@@ -0,0 +1,4 @@
        6303  +
{
        6304  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6305  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6306  +
}
 4701   6307   
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
 4702   6308   
similarity index 99%
 4703   6309   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-canonical-request.txt
 4704   6310   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-canonical-request.txt
 4705   6311   
index e48ce07..5ea8e3c 100644
 4706   6312   
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
 4707   6313   
new file mode 100644
 4708   6314   
index 0000000..9e2069e
 4709         -
-- /dev/null
        6315  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signature.txt
 4710   6316   
@@ -0,0 +1 @@
        6317  +
304402204afe4ce8de62e37853d0cb8a00f9601532fdeca89d6d8591c72d5bbf728bee2f02202feb0d8e680cab063e0c3c9090c0483f400511678ce83169ddce3e6d040f9ed8
              \
 No newline at end of file
 4711   6318   
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
 4712   6319   
new file mode 100644
 4713   6320   
index 0000000..67f5d29
 4714         -
-- /dev/null
        6321  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-signed-request.txt
 4715   6322   
@@ -0,0 +1,3 @@
        6323  +
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
        6324  +
Host:example.amazonaws.com
        6325  +
 4716   6326   
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
 4717   6327   
similarity index 99%
 4718   6328   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-case/query-string-to-sign.txt
 4719   6329   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/query-string-to-sign.txt
 4720   6330   
index 34e3382..711c162 100644
 4721   6331   
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
 4722   6332   
similarity index 61%
 4723   6333   
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
 4724   6334   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4725   6335   
index 3dc4179..3f0a82a 100644
 4726         -
-- 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
        6336  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-case/request.txt
 4727   6337   
@@ -1,3 +1,2 @@
 4728   6338   
POST / HTTP/1.1
 4729   6339   
Host:example.amazonaws.com
 4730         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4731   6340   
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
 4732   6341   
new file mode 100644
 4733   6342   
index 0000000..0468d80
 4734         -
-- /dev/null
        6343  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/context.json
 4735   6344   
@@ -0,0 +1,12 @@
        6345  +
{
        6346  +
    "credentials": {
        6347  +
        "access_key_id": "AKIDEXAMPLE",
        6348  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6349  +
    },
        6350  +
    "expiration_in_seconds": 3600,
        6351  +
    "normalize": true,
        6352  +
    "region": "us-east-1",
        6353  +
    "service": "service",
        6354  +
    "sign_body": false,
        6355  +
    "timestamp": "2015-08-30T12:36:00Z"
        6356  +
}
              \
 No newline at end of file
 4736   6357   
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
 4737   6358   
similarity index 99%
 4738   6359   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-canonical-request.txt
 4739   6360   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-canonical-request.txt
 4740   6361   
index a8e1727..2883822 100644
 4741   6362   
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
 4742   6363   
new file mode 100644
 4743   6364   
index 0000000..e3c2e6e
 4744         -
-- /dev/null
        6365  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signature.txt
 4745   6366   
@@ -0,0 +1 @@
        6367  +
304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
              \
 No newline at end of file
 4746   6368   
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
 4747   6369   
new file mode 100644
 4748   6370   
index 0000000..1d6e288
 4749         -
-- /dev/null
        6371  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
 4750   6372   
@@ -0,0 +1,7 @@
        6373  +
POST / HTTP/1.1
        6374  +
Host:example.amazonaws.com
        6375  +
My-Header1:value1
        6376  +
X-Amz-Date:20150830T123600Z
        6377  +
X-Amz-Region-Set:us-east-1
        6378  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
        6379  +
 4751   6380   
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
 4752   6381   
similarity index 99%
 4753   6382   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
 4754   6383   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
 4755   6384   
index f6e3e9b..7c5236a 100644
 4756   6385   
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
 4757   6386   
new file mode 100644
 4758   6387   
index 0000000..379dcb2
 4759         -
-- /dev/null
        6388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
 4760   6389   
@@ -0,0 +1,4 @@
        6390  +
{
        6391  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6392  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6393  +
}
 4761   6394   
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
 4762   6395   
similarity index 99%
 4763   6396   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
 4764   6397   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
 4765   6398   
index 0ae73e1..2cf3f29 100644
 4766   6399   
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
 4767   6400   
new file mode 100644
 4768   6401   
index 0000000..2a08401
 4769         -
-- /dev/null
        6402  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
 4770   6403   
@@ -0,0 +1 @@
        6404  +
304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
              \
 No newline at end of file
 4771   6405   
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
 4772   6406   
new file mode 100644
 4773   6407   
index 0000000..8d2343f
 4774         -
-- /dev/null
        6408  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
 4775   6409   
@@ -0,0 +1,4 @@
        6410  +
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
        6411  +
Host:example.amazonaws.com
        6412  +
My-Header1:value1
        6413  +
 4776   6414   
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
 4777   6415   
similarity index 99%
 4778   6416   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
 4779   6417   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
 4780   6418   
index 8cb96bf..2c4db7a 100644
 4781   6419   
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
 4782   6420   
similarity index 69%
 4783   6421   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
 4784   6422   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4785   6423   
index 0253f19..917720e 100644
 4786         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
        6424  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
 4787   6425   
@@ -1,4 +1,3 @@
 4788   6426   
POST / HTTP/1.1
 4789   6427   
Host:example.amazonaws.com
 4790   6428   
My-Header1:value1
 4791         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4792   6429   
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
 4793   6430   
new file mode 100644
 4794   6431   
index 0000000..0468d80
 4795         -
-- /dev/null
        6432  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
 4796   6433   
@@ -0,0 +1,12 @@
        6434  +
{
        6435  +
    "credentials": {
        6436  +
        "access_key_id": "AKIDEXAMPLE",
        6437  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6438  +
    },
        6439  +
    "expiration_in_seconds": 3600,
        6440  +
    "normalize": true,
        6441  +
    "region": "us-east-1",
        6442  +
    "service": "service",
        6443  +
    "sign_body": false,
        6444  +
    "timestamp": "2015-08-30T12:36:00Z"
        6445  +
}
              \
 No newline at end of file
 4797   6446   
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
 4798   6447   
similarity index 99%
 4799   6448   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
 4800   6449   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
 4801   6450   
index 1dc3ef8..164e65c 100644
 4802   6451   
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
 4803   6452   
new file mode 100644
 4804   6453   
index 0000000..7072b0e
 4805         -
-- /dev/null
        6454  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
 4806   6455   
@@ -0,0 +1 @@
        6456  +
304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
              \
 No newline at end of file
 4807   6457   
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
 4808   6458   
new file mode 100644
 4809   6459   
index 0000000..17f5e3e
 4810         -
-- /dev/null
        6460  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
 4811   6461   
@@ -0,0 +1,7 @@
        6462  +
POST / HTTP/1.1
        6463  +
Host:example.amazonaws.com
        6464  +
My-Header1:VALUE1
        6465  +
X-Amz-Date:20150830T123600Z
        6466  +
X-Amz-Region-Set:us-east-1
        6467  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
        6468  +
 4812   6469   
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
 4813   6470   
similarity index 99%
 4814   6471   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
 4815   6472   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
 4816   6473   
index 59c7e45..620f54e 100644
 4817   6474   
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
 4818   6475   
new file mode 100644
 4819   6476   
index 0000000..379dcb2
 4820         -
-- /dev/null
        6477  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
 4821   6478   
@@ -0,0 +1,4 @@
        6479  +
{
        6480  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6481  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6482  +
}
 4822   6483   
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
 4823   6484   
similarity index 99%
 4824   6485   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
 4825   6486   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
 4826   6487   
index 377e6f3..23e0da3 100644
 4827   6488   
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
 4828   6489   
new file mode 100644
 4829   6490   
index 0000000..a18acb8
 4830         -
-- /dev/null
        6491  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
 4831   6492   
@@ -0,0 +1 @@
        6493  +
30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
              \
 No newline at end of file
 4832   6494   
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
 4833   6495   
new file mode 100644
 4834   6496   
index 0000000..7cbdcfa
 4835         -
-- /dev/null
        6497  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
 4836   6498   
@@ -0,0 +1,4 @@
        6499  +
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
        6500  +
Host:example.amazonaws.com
        6501  +
My-Header1:VALUE1
        6502  +
 4837   6503   
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
 4838   6504   
similarity index 99%
 4839   6505   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
 4840   6506   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
 4841   6507   
index 84a7afd..0c90627 100644
 4842   6508   
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
 4843   6509   
similarity index 69%
 4844   6510   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
 4845   6511   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4846   6512   
index 3f9987a..5f14c91 100644
 4847         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
        6513  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
 4848   6514   
@@ -1,4 +1,3 @@
 4849   6515   
POST / HTTP/1.1
 4850   6516   
Host:example.amazonaws.com
 4851   6517   
My-Header1:VALUE1
 4852         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4853   6518   
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
 4854   6519   
new file mode 100644
 4855   6520   
index 0000000..8f1d5ce
 4856         -
-- /dev/null
        6521  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
 4857   6522   
@@ -0,0 +1,14 @@
        6523  +
{
        6524  +
    "credentials": {
        6525  +
        "access_key_id": "AKIDEXAMPLE",
        6526  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6527  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6528  +
    },
        6529  +
    "expiration_in_seconds": 3600,
        6530  +
    "normalize": true,
        6531  +
    "region": "us-east-1",
        6532  +
    "service": "service",
        6533  +
    "sign_body": false,
        6534  +
    "timestamp": "2015-08-30T12:36:00Z",
        6535  +
    "omit_session_token": true
        6536  +
}
 4858   6537   
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
 4859   6538   
similarity index 99%
 4860   6539   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
 4861   6540   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
 4862   6541   
index a6942c1..e881ac7 100644
 4863   6542   
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
 4864   6543   
new file mode 100644
 4865   6544   
index 0000000..9c5ecb9
 4866         -
-- /dev/null
        6545  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
 4867   6546   
@@ -0,0 +1 @@
        6547  +
3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
              \
 No newline at end of file
 4868   6548   
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
 4869   6549   
similarity index 52%
 4870   6550   
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
 4871   6551   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4872   6552   
index 9d91775..61b6527 100644
 4873         -
-- 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
        6553  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
 4874   6554   
@@ -1,4 +1,7 @@
 4875   6555   
POST / HTTP/1.1
 4876   6556   
Host:example.amazonaws.com
 4877         -
X-Amz-Date:20150830T123600Z
 4878   6557   
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6558  +
X-Amz-Date:20150830T123600Z
        6559  +
X-Amz-Region-Set:us-east-1
        6560  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
        6561  +
 4879   6562   
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
 4880   6563   
similarity index 99%
 4881   6564   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
 4882   6565   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
 4883   6566   
index d5650cb..f8adf13 100644
 4884   6567   
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
 4885   6568   
new file mode 100644
 4886   6569   
index 0000000..379dcb2
 4887         -
-- /dev/null
        6570  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
 4888   6571   
@@ -0,0 +1,4 @@
        6572  +
{
        6573  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6574  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6575  +
}
 4889   6576   
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
 4890   6577   
similarity index 99%
 4891   6578   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
 4892   6579   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
 4893   6580   
index e48ce07..5ea8e3c 100644
 4894   6581   
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
 4895   6582   
new file mode 100644
 4896   6583   
index 0000000..ff8823a
 4897         -
-- /dev/null
        6584  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
 4898   6585   
@@ -0,0 +1 @@
        6586  +
3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
              \
 No newline at end of file
 4899   6587   
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
 4900   6588   
new file mode 100644
 4901   6589   
index 0000000..cfac41b
 4902         -
-- /dev/null
        6590  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
 4903   6591   
@@ -0,0 +1,3 @@
        6592  +
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
        6593  +
Host:example.amazonaws.com
        6594  +
 4904   6595   
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
 4905   6596   
similarity index 99%
 4906   6597   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
 4907   6598   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
 4908   6599   
index 34e3382..711c162 100644
 4909   6600   
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
 4910   6601   
similarity index 61%
 4911   6602   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
 4912   6603   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4913   6604   
index 3dc4179..3f0a82a 100644
 4914         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
        6605  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
 4915   6606   
@@ -1,3 +1,2 @@
 4916   6607   
POST / HTTP/1.1
 4917   6608   
Host:example.amazonaws.com
 4918         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 4919   6609   
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
 4920   6610   
new file mode 100644
 4921   6611   
index 0000000..5187392
 4922         -
-- /dev/null
        6612  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
 4923   6613   
@@ -0,0 +1,14 @@
        6614  +
{
        6615  +
    "credentials": {
        6616  +
        "access_key_id": "AKIDEXAMPLE",
        6617  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
        6618  +
        "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
        6619  +
    },
        6620  +
    "expiration_in_seconds": 3600,
        6621  +
    "normalize": true,
        6622  +
    "region": "us-east-1",
        6623  +
    "service": "service",
        6624  +
    "sign_body": false,
        6625  +
    "timestamp": "2015-08-30T12:36:00Z",
        6626  +
    "omit_session_token": false
        6627  +
}
 4924   6628   
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
 4925   6629   
similarity index 99%
 4926   6630   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
 4927   6631   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
 4928   6632   
index dd408c8..e95924e 100644
 4929   6633   
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
 4930   6634   
new file mode 100644
 4931   6635   
index 0000000..1573f07
 4932         -
-- /dev/null
        6636  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
 4933   6637   
@@ -0,0 +1 @@
        6638  +
30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
              \
 No newline at end of file
 4934   6639   
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
 4935   6640   
new file mode 100644
 4936   6641   
index 0000000..6ef9a08
 4937         -
-- /dev/null
        6642  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
 4938   6643   
@@ -0,0 +1,7 @@
        6644  +
POST / HTTP/1.1
        6645  +
Host:example.amazonaws.com
        6646  +
X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
        6647  +
X-Amz-Date:20150830T123600Z
        6648  +
X-Amz-Region-Set:us-east-1
        6649  +
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
        6650  +
 4939   6651   
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
 4940   6652   
similarity index 99%
 4941   6653   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
 4942   6654   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
 4943   6655   
index f352b54..3c3235f 100644
 4944   6656   
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
 4945   6657   
new file mode 100644
 4946   6658   
index 0000000..379dcb2
 4947         -
-- /dev/null
        6659  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
 4948   6660   
@@ -0,0 +1,4 @@
        6661  +
{
        6662  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6663  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6664  +
}
 4949   6665   
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
 4950   6666   
similarity index 99%
 4951   6667   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
 4952   6668   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
 4953   6669   
index 832cdc0..63b7de5 100644
 4954   6670   
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
 4955   6671   
new file mode 100644
 4956   6672   
index 0000000..713f57c
 4957         -
-- /dev/null
        6673  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
 4958   6674   
@@ -0,0 +1 @@
        6675  +
304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
              \
 No newline at end of file
 4959   6676   
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
 4960   6677   
new file mode 100644
 4961   6678   
index 0000000..32c3bb3
 4962         -
-- /dev/null
        6679  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
 4963   6680   
@@ -0,0 +1,3 @@
        6681  +
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
        6682  +
Host:example.amazonaws.com
        6683  +
 4964   6684   
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
 4965   6685   
similarity index 99%
 4966   6686   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
 4967   6687   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
 4968   6688   
index d7f3668..b46cd8c 100644
 4969   6689   
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
 4970   6690   
similarity index 60%
 4971   6691   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
 4972   6692   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4973   6693   
index 8b5efc8..3f0a82a 100644
 4974         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
        6694  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
 4975   6695   
@@ -1,3 +1,2 @@
 4976   6696   
POST / HTTP/1.1
 4977   6697   
Host:example.amazonaws.com
 4978         -
X-Amz-Date:20150830T123600Z
 4979   6698   
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
 4980   6699   
new file mode 100644
 4981   6700   
index 0000000..0468d80
 4982         -
-- /dev/null
        6701  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
 4983   6702   
@@ -0,0 +1,12 @@
        6703  +
{
        6704  +
    "credentials": {
        6705  +
        "access_key_id": "AKIDEXAMPLE",
        6706  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6707  +
    },
        6708  +
    "expiration_in_seconds": 3600,
        6709  +
    "normalize": true,
        6710  +
    "region": "us-east-1",
        6711  +
    "service": "service",
        6712  +
    "sign_body": false,
        6713  +
    "timestamp": "2015-08-30T12:36:00Z"
        6714  +
}
              \
 No newline at end of file
 4984   6715   
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
 4985   6716   
similarity index 99%
 4986   6717   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
 4987   6718   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
 4988   6719   
index 02af60f..34b8c11 100644
 4989   6720   
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
 4990   6721   
new file mode 100644
 4991   6722   
index 0000000..aac6427
 4992         -
-- /dev/null
        6723  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
 4993   6724   
@@ -0,0 +1 @@
        6725  +
3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
              \
 No newline at end of file
 4994   6726   
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
 4995   6727   
new file mode 100644
 4996   6728   
index 0000000..a611436
 4997         -
-- /dev/null
        6729  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
 4998   6730   
@@ -0,0 +1,6 @@
        6731  +
POST /?Param1=value1 HTTP/1.1
        6732  +
Host:example.amazonaws.com
        6733  +
X-Amz-Date:20150830T123600Z
        6734  +
X-Amz-Region-Set:us-east-1
        6735  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
        6736  +
 4999   6737   
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
 5000   6738   
similarity index 99%
 5001   6739   
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
 5002   6740   
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
 5003   6741   
index 4256b4f..ad88dff 100644
 5004   6742   
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
 5005   6743   
new file mode 100644
 5006   6744   
index 0000000..379dcb2
 5007         -
-- /dev/null
        6745  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
 5008   6746   
@@ -0,0 +1,4 @@
        6747  +
{
        6748  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6749  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6750  +
}
 5009   6751   
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
 5010   6752   
similarity index 99%
 5011   6753   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
 5012   6754   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
 5013   6755   
index fa84bbd..76d5ad6 100644
 5014   6756   
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
 5015   6757   
new file mode 100644
 5016   6758   
index 0000000..4cb1c94
 5017         -
-- /dev/null
        6759  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
 5018   6760   
@@ -0,0 +1 @@
        6761  +
3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
              \
 No newline at end of file
 5019   6762   
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
 5020   6763   
new file mode 100644
 5021   6764   
index 0000000..bd22b97
 5022         -
-- /dev/null
        6765  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
 5023   6766   
@@ -0,0 +1,3 @@
        6767  +
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
        6768  +
Host:example.amazonaws.com
        6769  +
 5024   6770   
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
 5025   6771   
similarity index 99%
 5026   6772   
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
 5027   6773   
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
 5028   6774   
index de270ef..8c9d319 100644
 5029   6775   
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
 5030   6776   
similarity index 67%
 5031   6777   
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
 5032   6778   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5033   6779   
index 9157bc7..c9d6e5d 100644
 5034         -
-- 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
        6780  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
 5035   6781   
@@ -1,3 +1,2 @@
 5036   6782   
POST /?Param1=value1 HTTP/1.1
 5037   6783   
Host:example.amazonaws.com
 5038         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5039   6784   
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
 5040   6785   
new file mode 100644
 5041   6786   
index 0000000..0468d80
 5042         -
-- /dev/null
        6787  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
 5043   6788   
@@ -0,0 +1,12 @@
        6789  +
{
        6790  +
    "credentials": {
        6791  +
        "access_key_id": "AKIDEXAMPLE",
        6792  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6793  +
    },
        6794  +
    "expiration_in_seconds": 3600,
        6795  +
    "normalize": true,
        6796  +
    "region": "us-east-1",
        6797  +
    "service": "service",
        6798  +
    "sign_body": false,
        6799  +
    "timestamp": "2015-08-30T12:36:00Z"
        6800  +
}
              \
 No newline at end of file
 5044   6801   
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
 5045   6802   
similarity index 99%
 5046   6803   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
 5047   6804   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
 5048   6805   
index 02af60f..34b8c11 100644
 5049   6806   
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
 5050   6807   
new file mode 100644
 5051   6808   
index 0000000..34f75c8
 5052         -
-- /dev/null
        6809  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
 5053   6810   
@@ -0,0 +1 @@
        6811  +
3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
              \
 No newline at end of file
 5054   6812   
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
 5055   6813   
new file mode 100644
 5056   6814   
index 0000000..c731408
 5057         -
-- /dev/null
        6815  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
 5058   6816   
@@ -0,0 +1,6 @@
        6817  +
POST /?Param1=value1 HTTP/1.1
        6818  +
Host:example.amazonaws.com
        6819  +
X-Amz-Date:20150830T123600Z
        6820  +
X-Amz-Region-Set:us-east-1
        6821  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
        6822  +
 5059   6823   
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
 5060   6824   
similarity index 99%
 5061   6825   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
 5062   6826   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
 5063   6827   
index 4256b4f..ad88dff 100644
 5064   6828   
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
 5065   6829   
new file mode 100644
 5066   6830   
index 0000000..379dcb2
 5067         -
-- /dev/null
        6831  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
 5068   6832   
@@ -0,0 +1,4 @@
        6833  +
{
        6834  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6835  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6836  +
}
 5069   6837   
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
 5070   6838   
similarity index 99%
 5071   6839   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
 5072   6840   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
 5073   6841   
index fa84bbd..76d5ad6 100644
 5074   6842   
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
 5075   6843   
new file mode 100644
 5076   6844   
index 0000000..ae000d6
 5077         -
-- /dev/null
        6845  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
 5078   6846   
@@ -0,0 +1 @@
        6847  +
304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
              \
 No newline at end of file
 5079   6848   
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
 5080   6849   
new file mode 100644
 5081   6850   
index 0000000..a868f7d
 5082         -
-- /dev/null
        6851  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
 5083   6852   
@@ -0,0 +1,3 @@
        6853  +
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
        6854  +
Host:example.amazonaws.com
        6855  +
 5084   6856   
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
 5085   6857   
similarity index 99%
 5086   6858   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
 5087   6859   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
 5088   6860   
index de270ef..8c9d319 100644
 5089   6861   
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
 5090   6862   
similarity index 67%
 5091   6863   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
 5092   6864   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5093   6865   
index 9157bc7..c9d6e5d 100644
 5094         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
        6866  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
 5095   6867   
@@ -1,3 +1,2 @@
 5096   6868   
POST /?Param1=value1 HTTP/1.1
 5097   6869   
Host:example.amazonaws.com
 5098         -
X-Amz-Date:20150830T123600Z
              \
 No newline at end of file
 5099   6870   
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
 5100   6871   
new file mode 100644
 5101   6872   
index 0000000..0468d80
 5102         -
-- /dev/null
        6873  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
 5103   6874   
@@ -0,0 +1,12 @@
        6875  +
{
        6876  +
    "credentials": {
        6877  +
        "access_key_id": "AKIDEXAMPLE",
        6878  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6879  +
    },
        6880  +
    "expiration_in_seconds": 3600,
        6881  +
    "normalize": true,
        6882  +
    "region": "us-east-1",
        6883  +
    "service": "service",
        6884  +
    "sign_body": false,
        6885  +
    "timestamp": "2015-08-30T12:36:00Z"
        6886  +
}
              \
 No newline at end of file
 5104   6887   
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
 5105   6888   
similarity index 99%
 5106   6889   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
 5107   6890   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
 5108   6891   
index a6942c1..e881ac7 100644
 5109   6892   
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
 5110   6893   
new file mode 100644
 5111   6894   
index 0000000..7c5e47b
 5112         -
-- /dev/null
        6895  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
 5113   6896   
@@ -0,0 +1 @@
        6897  +
3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
              \
 No newline at end of file
 5114   6898   
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
 5115   6899   
new file mode 100644
 5116   6900   
index 0000000..c0e50a0
 5117         -
-- /dev/null
        6901  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
 5118   6902   
@@ -0,0 +1,6 @@
        6903  +
POST / HTTP/1.1
        6904  +
Host:example.amazonaws.com
        6905  +
X-Amz-Date:20150830T123600Z
        6906  +
X-Amz-Region-Set:us-east-1
        6907  +
Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
        6908  +
 5119   6909   
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
 5120   6910   
similarity index 99%
 5121   6911   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
 5122   6912   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
 5123   6913   
index d5650cb..f8adf13 100644
 5124   6914   
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
 5125   6915   
new file mode 100644
 5126   6916   
index 0000000..379dcb2
 5127         -
-- /dev/null
        6917  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
 5128   6918   
@@ -0,0 +1,4 @@
        6919  +
{
        6920  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        6921  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        6922  +
}
 5129   6923   
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
 5130   6924   
similarity index 99%
 5131   6925   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
 5132   6926   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
 5133   6927   
index e48ce07..5ea8e3c 100644
 5134   6928   
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
 5135   6929   
new file mode 100644
 5136   6930   
index 0000000..ea8e3b4
 5137         -
-- /dev/null
        6931  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
 5138   6932   
@@ -0,0 +1 @@
        6933  +
30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
              \
 No newline at end of file
 5139   6934   
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
 5140   6935   
new file mode 100644
 5141   6936   
index 0000000..616973f
 5142         -
-- /dev/null
        6937  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
 5143   6938   
@@ -0,0 +1,3 @@
        6939  +
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
        6940  +
Host:example.amazonaws.com
        6941  +
 5144   6942   
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
 5145   6943   
similarity index 99%
 5146   6944   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
 5147   6945   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
 5148   6946   
index 34e3382..711c162 100644
 5149   6947   
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
 5150   6948   
new file mode 100644
 5151   6949   
index 0000000..3f0a82a
 5152         -
-- /dev/null
        6950  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
 5153   6951   
@@ -0,0 +1,2 @@
        6952  +
POST / HTTP/1.1
        6953  +
Host:example.amazonaws.com
 5154   6954   
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
 5155   6955   
new file mode 100644
 5156   6956   
index 0000000..0db1df1
 5157         -
-- /dev/null
        6957  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
 5158   6958   
@@ -0,0 +1,12 @@
        6959  +
{
        6960  +
    "credentials": {
        6961  +
        "access_key_id": "AKIDEXAMPLE",
        6962  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        6963  +
    },
        6964  +
    "expiration_in_seconds": 3600,
        6965  +
    "normalize": true,
        6966  +
    "region": "us-east-1",
        6967  +
    "service": "service",
        6968  +
    "sign_body": true,
        6969  +
    "timestamp": "2015-08-30T12:36:00Z"
        6970  +
}
              \
 No newline at end of file
 5159   6971   
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
 5160   6972   
similarity index 62%
 5161   6973   
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
 5162   6974   
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
 5163   6975   
index 05ab787..62639b2 100644
 5164         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
        6976  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
 5165   6977   
@@ -1,12 +1,12 @@
 5166   6978   
POST
 5167   6979   
/
 5168   6980   
 5169   6981   
content-length:13
 5170   6982   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5171   6983   
host:example.amazonaws.com
 5172         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6984  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5173   6985   
x-amz-date:20150830T123600Z
 5174   6986   
x-amz-region-set:us-east-1
 5175   6987   
 5176   6988   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5177         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        6989  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5178   6990   
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
 5179   6991   
new file mode 100644
 5180   6992   
index 0000000..006ec2e
 5181         -
-- /dev/null
        6993  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
 5182   6994   
@@ -0,0 +1 @@
        6995  +
3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
              \
 No newline at end of file
 5183   6996   
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
 5184   6997   
new file mode 100644
 5185   6998   
index 0000000..87a11f2
 5186         -
-- /dev/null
        6999  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
 5187   7000   
@@ -0,0 +1,10 @@
        7001  +
POST / HTTP/1.1
        7002  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7003  +
Host:example.amazonaws.com
        7004  +
Content-Length:13
        7005  +
X-Amz-Date:20150830T123600Z
        7006  +
X-Amz-Region-Set:us-east-1
        7007  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7008  +
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
        7009  +
        7010  +
Param1=value1
              \
 No newline at end of file
 5188   7011   
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
 5189   7012   
new file mode 100644
 5190   7013   
index 0000000..c047afb
 5191         -
-- /dev/null
        7014  +
++ 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
 5192   7015   
@@ -0,0 +1,4 @@
        7016  +
AWS4-ECDSA-P256-SHA256
        7017  +
20150830T123600Z
        7018  +
20150830/service/aws4_request
        7019  +
bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
              \
 No newline at end of file
 5193   7020   
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
 5194   7021   
new file mode 100644
 5195   7022   
index 0000000..379dcb2
 5196         -
-- /dev/null
        7023  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
 5197   7024   
@@ -0,0 +1,4 @@
        7025  +
{
        7026  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7027  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7028  +
}
 5198   7029   
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
 5199   7030   
similarity index 85%
 5200   7031   
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
 5201   7032   
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
 5202   7033   
index fcc454f..6933a8c 100644
 5203         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
        7034  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
 5204   7035   
@@ -1,9 +1,9 @@
 5205   7036   
POST
 5206   7037   
/
 5207   7038   
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
 5208   7039   
content-length:13
 5209   7040   
content-type:application/x-www-form-urlencoded; charset=utf-8
 5210   7041   
host:example.amazonaws.com
 5211   7042   
 5212   7043   
content-length;content-type;host
 5213         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7044  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5214   7045   
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
 5215   7046   
new file mode 100644
 5216   7047   
index 0000000..34a2e12
 5217         -
-- /dev/null
        7048  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
 5218   7049   
@@ -0,0 +1 @@
        7050  +
3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
              \
 No newline at end of file
 5219   7051   
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
 5220   7052   
new file mode 100644
 5221   7053   
index 0000000..197b99e
 5222         -
-- /dev/null
        7054  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
 5223   7055   
@@ -0,0 +1,6 @@
        7056  +
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
        7057  +
Content-Type:application/x-www-form-urlencoded; charset=utf-8
        7058  +
Host:example.amazonaws.com
        7059  +
Content-Length:13
        7060  +
        7061  +
Param1=value1
              \
 No newline at end of file
 5224   7062   
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
 5225   7063   
new file mode 100644
 5226   7064   
index 0000000..9d2bc74
 5227         -
-- /dev/null
        7065  +
++ 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
 5228   7066   
@@ -0,0 +1,4 @@
        7067  +
AWS4-ECDSA-P256-SHA256
        7068  +
20150830T123600Z
        7069  +
20150830/service/aws4_request
        7070  +
d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
              \
 No newline at end of file
 5229   7071   
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
 5230   7072   
similarity index 80%
 5231   7073   
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
 5232   7074   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5233   7075   
index 36015f1..8289eaa 100644
 5234         -
-- 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
        7076  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
 5235   7077   
@@ -1,6 +1,6 @@
 5236   7078   
POST / HTTP/1.1
 5237   7079   
Content-Type:application/x-www-form-urlencoded; charset=utf-8
 5238   7080   
Host:example.amazonaws.com
 5239         -
X-Amz-Date:20150830T123600Z
        7081  +
Content-Length:13
 5240   7082   
 5241   7083   
Param1=value1
              \
 No newline at end of file
 5242   7084   
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
 5243   7085   
new file mode 100644
 5244   7086   
index 0000000..0db1df1
 5245         -
-- /dev/null
        7087  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
 5246   7088   
@@ -0,0 +1,12 @@
        7089  +
{
        7090  +
    "credentials": {
        7091  +
        "access_key_id": "AKIDEXAMPLE",
        7092  +
        "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
        7093  +
    },
        7094  +
    "expiration_in_seconds": 3600,
        7095  +
    "normalize": true,
        7096  +
    "region": "us-east-1",
        7097  +
    "service": "service",
        7098  +
    "sign_body": true,
        7099  +
    "timestamp": "2015-08-30T12:36:00Z"
        7100  +
}
              \
 No newline at end of file
 5247   7101   
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
 5248   7102   
similarity index 61%
 5249   7103   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
 5250   7104   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5251   7105   
index 69009dc..797632b 100644
 5252         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
        7106  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
 5253   7107   
@@ -1,12 +1,12 @@
 5254   7108   
POST
 5255   7109   
/
 5256   7110   
 5257   7111   
content-length:13
 5258   7112   
content-type:application/x-www-form-urlencoded
 5259   7113   
host:example.amazonaws.com
 5260         -
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7114  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
 5261   7115   
x-amz-date:20150830T123600Z
 5262   7116   
x-amz-region-set:us-east-1
 5263   7117   
 5264   7118   
content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
 5265         -
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
        7119  +
9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
              \
 No newline at end of file
 5266   7120   
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
 5267   7121   
new file mode 100644
 5268   7122   
index 0000000..f5a641c
 5269         -
-- /dev/null
        7123  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
 5270   7124   
@@ -0,0 +1 @@
        7125  +
304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
              \
 No newline at end of file
 5271   7126   
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
 5272   7127   
new file mode 100644
 5273   7128   
index 0000000..7bd94a7
 5274         -
-- /dev/null
        7129  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
 5275   7130   
@@ -0,0 +1,10 @@
        7131  +
POST / HTTP/1.1
        7132  +
Content-Type:application/x-www-form-urlencoded
        7133  +
Host:example.amazonaws.com
        7134  +
Content-Length:13
        7135  +
X-Amz-Date:20150830T123600Z
        7136  +
X-Amz-Region-Set:us-east-1
        7137  +
x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
        7138  +
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
        7139  +
        7140  +
Param1=value1
              \
 No newline at end of file
 5276   7141   
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
 5277   7142   
new file mode 100644
 5278   7143   
index 0000000..8d25ba9
 5279         -
-- /dev/null
        7144  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
 5280   7145   
@@ -0,0 +1,4 @@
        7146  +
AWS4-ECDSA-P256-SHA256
        7147  +
20150830T123600Z
        7148  +
20150830/service/aws4_request
        7149  +
ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
              \
 No newline at end of file
 5281   7150   
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
 5282   7151   
new file mode 100644
 5283   7152   
index 0000000..379dcb2
 5284         -
-- /dev/null
        7153  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
 5285   7154   
@@ -0,0 +1,4 @@
        7155  +
{
        7156  +
  "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
        7157  +
  "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
        7158  +
}
 5286   7159   
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
 5287   7160   
similarity index 99%
 5288   7161   
rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
 5289   7162   
rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
 5290   7163   
index 9ed065b..563ff58 100644
 5291   7164   
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
 5292   7165   
new file mode 100644
 5293   7166   
index 0000000..0c77daf
 5294         -
-- /dev/null
        7167  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
 5295   7168   
@@ -0,0 +1 @@
        7169  +
304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
              \
 No newline at end of file
 5296   7170   
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
 5297   7171   
new file mode 100644
 5298   7172   
index 0000000..71d6de9
 5299         -
-- /dev/null
        7173  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
 5300   7174   
@@ -0,0 +1,6 @@
        7175  +
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
        7176  +
Content-Type:application/x-www-form-urlencoded
        7177  +
Host:example.amazonaws.com
        7178  +
Content-Length:13
        7179  +
        7180  +
Param1=value1
              \
 No newline at end of file
 5301   7181   
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
 5302   7182   
similarity index 99%
 5303   7183   
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
 5304   7184   
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
 5305   7185   
index bef3143..cc7a224 100644
 5306   7186   
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
 5307   7187   
new file mode 100644
 5308   7188   
index 0000000..760b2d3
 5309         -
-- /dev/null
        7189  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
 5310   7190   
@@ -0,0 +1,6 @@
        7191  +
POST / HTTP/1.1
        7192  +
Content-Type:application/x-www-form-urlencoded
        7193  +
Host:example.amazonaws.com
        7194  +
Content-Length:13
        7195  +
        7196  +
Param1=value1
              \
 No newline at end of file
 5311   7197   
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
 5312   7198   
index 9bd636f..b53f33f 100644
 5313         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
        7199  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
 5314   7200   
@@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
 5315   7201   
            params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
 5316   7202   
        }
 5317   7203   
 5318   7204   
        if let SignatureValues::QueryParams(values) = values {
 5319   7205   
            add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
 5320   7206   
            add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
 5321   7207   
 5322   7208   
            #[cfg(feature = "sigv4a")]
 5323   7209   
            if let Some(regions) = values.region_set {
 5324   7210   
                add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
 5325   7211   
            }
 5326   7212   
 5327   7213   
            add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
 5328   7214   
            add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
 5329   7215   
            add_param(
 5330   7216   
                &mut params,
 5331   7217   
                param::X_AMZ_SIGNED_HEADERS,
 5332   7218   
                values.signed_headers.as_str(),
 5333   7219   
            );
 5334   7220   
 5335   7221   
            if let Some(security_token) = values.security_token {
 5336   7222   
                add_param(
 5337   7223   
                    &mut params,
 5338   7224   
                    settings
 5339   7225   
                        .session_token_name_override
 5340   7226   
                        .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
 5341   7227   
                    security_token,
 5342   7228   
                );
 5343   7229   
            }
 5344   7230   
        }
 5345         -
        // Sort by param name, and then by param value
        7231  +
        7232  +
        // Sort on the _encoded_ key/value pairs
        7233  +
        let mut params: Vec<(String, String)> = params
        7234  +
            .into_iter()
        7235  +
            .map(|x| {
        7236  +
                use aws_smithy_http::query::fmt_string;
        7237  +
                let enc_k = fmt_string(&x.0);
        7238  +
                let enc_v = fmt_string(&x.1);
        7239  +
                (enc_k, enc_v)
        7240  +
            })
        7241  +
            .collect();
        7242  +
 5346   7243   
        params.sort();
 5347   7244   
 5348   7245   
        let mut query = QueryWriter::new(uri);
 5349   7246   
        query.clear_params();
 5350   7247   
        for (key, value) in params {
 5351         -
            query.insert(&key, &value);
        7248  +
            query.insert_encoded(&key, &value);
 5352   7249   
        }
 5353   7250   
 5354   7251   
        let query = query.build_query();
 5355   7252   
        if query.is_empty() {
 5356   7253   
            None
 5357   7254   
        } else {
 5358   7255   
            Some(query)
 5359   7256   
        }
 5360   7257   
    }
 5361   7258   
 5362   7259   
    fn insert_host_header(
 5363   7260   
        canonical_headers: &mut HeaderMap<HeaderValue>,
 5364   7261   
        uri: &Uri,
 5365   7262   
    ) -> HeaderValue {
 5366   7263   
        match canonical_headers.get(&HOST) {
 5367   7264   
            Some(header) => header.clone(),
 5368   7265   
            None => {
 5369   7266   
                let port = uri.port();
 5370   7267   
                let scheme = uri.scheme();
 5371   7268   
                let authority = uri
 5372   7269   
                    .authority()
 5373   7270   
                    .expect("request uri authority must be set for signing")
 5374   7271   
                    .as_str();
 5375   7272   
                let host = uri
 5376   7273   
                    .host()
 5377   7274   
                    .expect("request uri host must be set for signing");
 5378   7275   
 5379   7276   
                // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
 5380   7277   
                // Host header when signing since RFC 2616 indicates that the default port should not be
 5381   7278   
                // sent in the Host header (and Hyper strips default ports if they are present)
 5382   7279   
@@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
 5383   7280   
            service,
 5384   7281   
            hashed_creq,
 5385   7282   
            signature_version: SignatureVersion::V4a,
 5386   7283   
        }
 5387   7284   
    }
 5388   7285   
}
 5389   7286   
 5390   7287   
impl fmt::Display for StringToSign<'_> {
 5391   7288   
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
 5392   7289   
        write!(
 5393   7290   
            f,
 5394   7291   
            "{}\n{}\n{}\n{}",
 5395   7292   
            self.algorithm,
 5396   7293   
            format_date_time(self.time),
 5397   7294   
            match self.signature_version {
 5398   7295   
                SignatureVersion::V4 => self.scope.to_string(),
 5399   7296   
                SignatureVersion::V4a => self.scope.v4a_display(),
 5400   7297   
            },
 5401   7298   
            self.hashed_creq
 5402   7299   
        )
 5403   7300   
    }
 5404   7301   
}
 5405   7302   
 5406   7303   
#[cfg(test)]
 5407   7304   
mod tests {
 5408   7305   
    use crate::date_time::test_parsers::parse_date_time;
 5409   7306   
    use crate::http_request::canonical_request::{
 5410   7307   
        normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
 5411   7308   
    };
 5412   7309   
    use crate::http_request::test;
        7310  +
    use crate::http_request::test::SigningSuiteTest;
 5413   7311   
    use crate::http_request::{
 5414   7312   
        PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
 5415   7313   
        SigningParams, SigningSettings,
 5416   7314   
    };
 5417   7315   
    use crate::sign::v4;
 5418   7316   
    use crate::sign::v4::sha256_hex_string;
 5419   7317   
    use aws_credential_types::Credentials;
 5420   7318   
    use aws_smithy_http::query_writer::QueryWriter;
 5421   7319   
    use aws_smithy_runtime_api::client::identity::Identity;
 5422   7320   
    use http0::{HeaderValue, Uri};
 5423   7321   
    use pretty_assertions::assert_eq;
 5424   7322   
    use proptest::{prelude::*, proptest};
 5425   7323   
    use std::borrow::Cow;
 5426   7324   
    use std::time::Duration;
 5427   7325   
 5428   7326   
    fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
 5429   7327   
        v4::signing_params::Builder::default()
 5430   7328   
            .identity(identity)
 5431   7329   
            .region("test-region")
 5432   7330   
            .name("testservicename")
 5433   7331   
            .time(parse_date_time("20210511T154045Z").unwrap())
 5434   7332   
            .settings(settings)
 5435   7333   
            .build()
 5436   7334   
            .unwrap()
 5437   7335   
            .into()
 5438   7336   
    }
 5439   7337   
 5440   7338   
    #[test]
 5441   7339   
    fn test_repeated_header() {
 5442         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7340  +
        let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7341  +
        let mut req = test.request();
 5443   7342   
        req.headers.push((
 5444   7343   
            "x-amz-object-attributes".to_string(),
 5445   7344   
            "Checksum".to_string(),
 5446   7345   
        ));
 5447   7346   
        req.headers.push((
 5448   7347   
            "x-amz-object-attributes".to_string(),
 5449   7348   
            "ObjectSize".to_string(),
 5450   7349   
        ));
 5451   7350   
        let req = SignableRequest::from(&req);
 5452   7351   
        let settings = SigningSettings {
 5453   7352   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5454   7353   
            session_token_mode: SessionTokenMode::Exclude,
 5455   7354   
            ..Default::default()
 5456   7355   
        };
 5457   7356   
        let identity = Credentials::for_tests().into();
 5458   7357   
        let signing_params = signing_params(&identity, settings);
 5459   7358   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5460   7359   
 5461   7360   
        assert_eq!(
 5462   7361   
            creq.values.signed_headers().to_string(),
 5463   7362   
            "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
 5464   7363   
        );
 5465   7364   
        assert_eq!(
 5466   7365   
            creq.header_values_for("x-amz-object-attributes"),
 5467   7366   
            "Checksum,ObjectSize",
 5468   7367   
        );
 5469   7368   
    }
 5470   7369   
 5471   7370   
    #[test]
 5472   7371   
    fn test_host_header_properly_handles_ports() {
 5473   7372   
        fn host_header_test_setup(endpoint: String) -> String {
 5474         -
            let mut req = test::v4::test_request("get-vanilla");
        7373  +
            let test = SigningSuiteTest::v4("get-vanilla");
        7374  +
            let mut req = test.request();
 5475   7375   
            req.uri = endpoint;
 5476   7376   
            let req = SignableRequest::from(&req);
 5477   7377   
            let settings = SigningSettings {
 5478   7378   
                payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5479   7379   
                session_token_mode: SessionTokenMode::Exclude,
 5480   7380   
                ..Default::default()
 5481   7381   
            };
 5482   7382   
            let identity = Credentials::for_tests().into();
 5483   7383   
            let signing_params = signing_params(&identity, settings);
 5484   7384   
            let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5485   7385   
            creq.header_values_for("host")
 5486   7386   
        }
 5487   7387   
 5488   7388   
        // HTTP request with 80 port should not be signed with that port
 5489   7389   
        let http_80_host_header = host_header_test_setup("http://localhost:80".into());
 5490   7390   
        assert_eq!(http_80_host_header, "localhost",);
 5491   7391   
 5492   7392   
        // HTTP request with non-80 port should be signed with that port
 5493   7393   
        let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
 5494   7394   
        assert_eq!(http_1234_host_header, "localhost:1234",);
 5495   7395   
 5496   7396   
        // HTTPS request with 443 port should not be signed with that port
 5497   7397   
        let https_443_host_header = host_header_test_setup("https://localhost:443".into());
 5498   7398   
        assert_eq!(https_443_host_header, "localhost",);
 5499   7399   
 5500   7400   
        // HTTPS request with non-443 port should be signed with that port
 5501   7401   
        let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
 5502   7402   
        assert_eq!(https_1234_host_header, "localhost:1234",);
 5503   7403   
    }
 5504   7404   
 5505   7405   
    #[test]
 5506   7406   
    fn test_set_xamz_sha_256() {
 5507         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7407  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7408  +
        let req = test.request();
 5508   7409   
        let req = SignableRequest::from(&req);
 5509   7410   
        let settings = SigningSettings {
 5510   7411   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5511   7412   
            session_token_mode: SessionTokenMode::Exclude,
 5512   7413   
            ..Default::default()
 5513   7414   
        };
 5514   7415   
        let identity = Credentials::for_tests().into();
 5515   7416   
        let mut signing_params = signing_params(&identity, settings);
 5516   7417   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5517   7418   
        assert_eq!(
 5518   7419   
            creq.values.content_sha256(),
 5519   7420   
            "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
 5520   7421   
        );
 5521   7422   
        // assert that the sha256 header was added
 5522   7423   
        assert_eq!(
 5523   7424   
            creq.values.signed_headers().as_str(),
 5524   7425   
            "host;x-amz-content-sha256;x-amz-date"
 5525   7426   
        );
 5526   7427   
 5527   7428   
        signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
 5528   7429   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5529   7430   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5530   7431   
    }
 5531   7432   
 5532   7433   
    #[test]
 5533   7434   
    fn test_unsigned_payload() {
 5534         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7435  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7436  +
        let mut req = test.request();
 5535   7437   
        req.set_body(SignableBody::UnsignedPayload);
 5536   7438   
        let req: SignableRequest<'_> = SignableRequest::from(&req);
 5537   7439   
 5538   7440   
        let settings = SigningSettings {
 5539   7441   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5540   7442   
            ..Default::default()
 5541   7443   
        };
 5542   7444   
        let identity = Credentials::for_tests().into();
 5543   7445   
        let signing_params = signing_params(&identity, settings);
 5544   7446   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5545   7447   
        assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
 5546   7448   
        assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
 5547   7449   
    }
 5548   7450   
 5549   7451   
    #[test]
 5550   7452   
    fn test_precomputed_payload() {
 5551   7453   
        let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
 5552         -
        let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
        7454  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7455  +
        let mut req = test.request();
 5553   7456   
        req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
 5554   7457   
        let req = SignableRequest::from(&req);
 5555   7458   
        let settings = SigningSettings {
 5556   7459   
            payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 5557   7460   
            ..Default::default()
 5558   7461   
        };
 5559   7462   
        let identity = Credentials::for_tests().into();
 5560   7463   
        let signing_params = signing_params(&identity, settings);
 5561   7464   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5562   7465   
        assert_eq!(creq.values.content_sha256(), payload_hash);
 5563   7466   
        assert!(creq.to_string().ends_with(payload_hash));
 5564   7467   
    }
 5565   7468   
 5566   7469   
    #[test]
 5567   7470   
    fn test_generate_scope() {
 5568   7471   
        let expected = "20150830/us-east-1/iam/aws4_request\n";
 5569   7472   
        let scope = SigningScope {
 5570   7473   
            time: parse_date_time("20150830T123600Z").unwrap(),
 5571   7474   
            region: "us-east-1",
 5572   7475   
            service: "iam",
 5573   7476   
        };
 5574   7477   
        assert_eq!(format!("{}\n", scope), expected);
 5575   7478   
    }
 5576   7479   
 5577   7480   
    #[test]
 5578   7481   
    fn test_string_to_sign() {
 5579   7482   
        let time = parse_date_time("20150830T123600Z").unwrap();
 5580         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
 5581         -
        let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
        7483  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7484  +
        let creq = test.canonical_request(SignatureLocation::Headers);
        7485  +
        let expected_sts = test.string_to_sign(SignatureLocation::Headers);
 5582   7486   
        let encoded = sha256_hex_string(creq.as_bytes());
 5583   7487   
 5584   7488   
        let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
 5585   7489   
        assert_eq!(expected_sts, actual.to_string());
 5586   7490   
    }
 5587   7491   
 5588   7492   
    #[test]
 5589   7493   
    fn test_digest_of_canonical_request() {
 5590         -
        let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
        7494  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7495  +
        let creq = test.canonical_request(SignatureLocation::Headers);
 5591   7496   
        let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
 5592   7497   
        let actual = sha256_hex_string(creq.as_bytes());
 5593   7498   
        assert_eq!(expected, actual);
 5594   7499   
    }
 5595   7500   
 5596   7501   
    #[test]
 5597   7502   
    fn test_double_url_encode_path() {
 5598         -
        let req = test::v4::test_request("double-encode-path");
        7503  +
        let test = SigningSuiteTest::v4("double-encode-path");
        7504  +
        let req = test.request();
 5599   7505   
        let req = SignableRequest::from(&req);
 5600   7506   
        let identity = Credentials::for_tests().into();
 5601   7507   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5602   7508   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5603   7509   
 5604         -
        let expected = test::v4::test_canonical_request("double-encode-path");
        7510  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5605   7511   
        let actual = format!("{}", creq);
 5606   7512   
        assert_eq!(actual, expected);
 5607   7513   
    }
 5608   7514   
 5609   7515   
    #[test]
 5610   7516   
    fn test_double_url_encode() {
 5611         -
        let req = test::v4::test_request("double-url-encode");
        7517  +
        let test = SigningSuiteTest::v4("double-url-encode");
        7518  +
        let req = test.request();
 5612   7519   
        let req = SignableRequest::from(&req);
 5613   7520   
        let identity = Credentials::for_tests().into();
 5614   7521   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5615   7522   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5616         -
 5617         -
        let expected = test::v4::test_canonical_request("double-url-encode");
        7523  +
        let expected = test.canonical_request(SignatureLocation::Headers);
 5618   7524   
        let actual = format!("{}", creq);
 5619   7525   
        assert_eq!(actual, expected);
 5620   7526   
    }
 5621   7527   
 5622   7528   
    #[test]
 5623   7529   
    fn test_tilde_in_uri() {
 5624   7530   
        let req = http0::Request::builder()
 5625   7531   
            .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
 5626   7532   
        let req = SignableRequest::from(&req);
 5627   7533   
        let identity = Credentials::for_tests().into();
 5628   7534   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5629   7535   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5630   7536   
        assert_eq!(
 5631   7537   
            Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
 5632   7538   
            creq.params.as_deref(),
 5633   7539   
        );
 5634   7540   
    }
 5635   7541   
 5636   7542   
    #[test]
 5637   7543   
    fn test_signing_urls_with_percent_encoded_query_strings() {
 5638   7544   
        let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
 5639   7545   
        let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
 5640   7546   
 5641   7547   
        let mut query_writer = QueryWriter::new(&uri);
 5642   7548   
        query_writer.insert("list-type", "2");
 5643   7549   
        query_writer.insert("prefix", &all_printable_ascii_chars);
 5644   7550   
 5645   7551   
        let req = http0::Request::builder()
 5646   7552   
            .uri(query_writer.build_uri())
 5647   7553   
            .body("")
 5648   7554   
            .unwrap()
 5649   7555   
            .into();
 5650   7556   
        let req = SignableRequest::from(&req);
 5651   7557   
        let identity = Credentials::for_tests().into();
 5652   7558   
        let signing_params = signing_params(&identity, SigningSettings::default());
 5653   7559   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5654   7560   
 5655   7561   
        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~";
 5656   7562   
        let actual = creq.params.unwrap();
 5657   7563   
        assert_eq!(expected, actual);
 5658   7564   
    }
 5659   7565   
 5660   7566   
    #[test]
 5661   7567   
    fn test_omit_session_token() {
 5662         -
        let req = test::v4::test_request("get-vanilla-query-order-key-case");
        7568  +
        let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
        7569  +
        let req = test.request();
 5663   7570   
        let req = SignableRequest::from(&req);
 5664   7571   
        let settings = SigningSettings {
 5665   7572   
            session_token_mode: SessionTokenMode::Include,
 5666   7573   
            ..Default::default()
 5667   7574   
        };
 5668   7575   
        let identity = Credentials::for_tests_with_session_token().into();
 5669   7576   
        let mut signing_params = signing_params(&identity, settings);
 5670   7577   
 5671   7578   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5672   7579   
        assert_eq!(
 5673   7580   
            creq.values.signed_headers().as_str(),
 5674   7581   
            "host;x-amz-date;x-amz-security-token"
 5675   7582   
        );
 5676   7583   
        assert_eq!(
 5677   7584   
            creq.headers.get("x-amz-security-token").unwrap(),
 5678   7585   
            "notarealsessiontoken"
 5679   7586   
        );
 5680   7587   
 5681   7588   
        signing_params.set_session_token_mode(SessionTokenMode::Exclude);
 5682   7589   
        let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
 5683   7590   
        assert_eq!(
 5684   7591   
            creq.headers.get("x-amz-security-token").unwrap(),
 5685   7592   
            "notarealsessiontoken"
 5686   7593   
        );
 5687   7594   
        assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
 5688   7595   
    }
 5689   7596   
 5690   7597   
    // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
 5691   7598   
    #[test]
 5692   7599   
    fn non_presigning_header_exclusion() {
 5693   7600   
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
 5694   7601   
index c4bbbee..363fc2c 100644
 5695         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
        7602  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
 5696   7603   
@@ -6,60 +6,62 @@
 5697   7604   
use super::error::SigningError;
 5698   7605   
use super::{PayloadChecksumKind, SignatureLocation};
 5699   7606   
use crate::http_request::canonical_request::header;
 5700   7607   
use crate::http_request::canonical_request::param;
 5701   7608   
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5702   7609   
use crate::http_request::error::CanonicalRequestError;
 5703   7610   
use crate::http_request::SigningParams;
 5704   7611   
use crate::sign::v4;
 5705   7612   
#[cfg(feature = "sigv4a")]
 5706   7613   
use crate::sign::v4a;
 5707   7614   
use crate::{SignatureVersion, SigningOutput};
 5708   7615   
use http0::Uri;
 5709   7616   
use std::borrow::Cow;
 5710   7617   
use std::fmt::{Debug, Formatter};
 5711   7618   
use std::str;
 5712   7619   
 5713   7620   
const LOG_SIGNABLE_BODY: &str = "LOG_SIGNABLE_BODY";
 5714   7621   
 5715   7622   
/// Represents all of the information necessary to sign an HTTP request.
 5716   7623   
#[derive(Debug)]
 5717   7624   
#[non_exhaustive]
 5718   7625   
pub struct SignableRequest<'a> {
 5719   7626   
    method: &'a str,
 5720   7627   
    uri: Uri,
 5721   7628   
    headers: Vec<(&'a str, &'a str)>,
 5722   7629   
    body: SignableBody<'a>,
 5723   7630   
}
 5724   7631   
 5725   7632   
impl<'a> SignableRequest<'a> {
 5726   7633   
    /// Creates a new `SignableRequest`.
        7634  +
    ///
        7635  +
    /// NOTE: The `uri` is expected to already in encoded form.
 5727   7636   
    pub fn new(
 5728   7637   
        method: &'a str,
 5729   7638   
        uri: impl Into<Cow<'a, str>>,
 5730   7639   
        headers: impl Iterator<Item = (&'a str, &'a str)>,
 5731   7640   
        body: SignableBody<'a>,
 5732   7641   
    ) -> Result<Self, SigningError> {
 5733   7642   
        let uri = uri
 5734   7643   
            .into()
 5735   7644   
            .parse()
 5736   7645   
            .map_err(|e| SigningError::from(CanonicalRequestError::from(e)))?;
 5737   7646   
        let headers = headers.collect();
 5738   7647   
        Ok(Self {
 5739   7648   
            method,
 5740   7649   
            uri,
 5741   7650   
            headers,
 5742   7651   
            body,
 5743   7652   
        })
 5744   7653   
    }
 5745   7654   
 5746   7655   
    /// Returns the signable URI
 5747   7656   
    pub(crate) fn uri(&self) -> &Uri {
 5748   7657   
        &self.uri
 5749   7658   
    }
 5750   7659   
 5751   7660   
    /// Returns the signable HTTP method
 5752   7661   
    pub(crate) fn method(&self) -> &str {
 5753   7662   
        self.method
 5754   7663   
    }
 5755   7664   
 5756   7665   
    /// Returns the request headers
 5757   7666   
@@ -478,436 +480,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
 5758   7667   
        sensitive,
 5759   7668   
    });
 5760   7669   
}
 5761   7670   
 5762   7671   
// add signature to authorization header
 5763   7672   
// Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
 5764   7673   
fn build_authorization_header(
 5765   7674   
    access_key: &str,
 5766   7675   
    creq: &CanonicalRequest<'_>,
 5767   7676   
    sts: StringToSign<'_>,
 5768   7677   
    signature: &str,
 5769   7678   
    signature_version: SignatureVersion,
 5770   7679   
) -> String {
 5771   7680   
    let scope = match signature_version {
 5772   7681   
        SignatureVersion::V4 => sts.scope.to_string(),
 5773   7682   
        SignatureVersion::V4a => sts.scope.v4a_display(),
 5774   7683   
    };
 5775   7684   
    format!(
 5776   7685   
        "{} Credential={}/{}, SignedHeaders={}, Signature={}",
 5777   7686   
        sts.algorithm,
 5778   7687   
        access_key,
 5779   7688   
        scope,
 5780   7689   
        creq.values.signed_headers().as_str(),
 5781   7690   
        signature
 5782   7691   
    )
 5783   7692   
}
 5784   7693   
#[cfg(test)]
 5785   7694   
mod tests {
 5786   7695   
    use crate::date_time::test_parsers::parse_date_time;
 5787   7696   
    use crate::http_request::sign::{add_header, SignableRequest};
        7697  +
    use crate::http_request::test::SigningSuiteTest;
 5788   7698   
    use crate::http_request::{
 5789         -
        sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
        7699  +
        sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
 5790   7700   
        SigningSettings,
 5791   7701   
    };
 5792   7702   
    use crate::sign::v4;
 5793   7703   
    use aws_credential_types::Credentials;
 5794   7704   
    use http0::{HeaderValue, Request};
 5795   7705   
    use pretty_assertions::assert_eq;
 5796   7706   
    use proptest::proptest;
 5797   7707   
    use std::borrow::Cow;
 5798   7708   
    use std::iter;
 5799         -
    use std::time::Duration;
 5800   7709   
 5801   7710   
    macro_rules! assert_req_eq {
 5802   7711   
        (http: $expected:expr, $actual:expr) => {
 5803   7712   
            let mut expected = ($expected).map(|_b|"body");
 5804   7713   
            let mut actual = ($actual).map(|_b|"body");
 5805   7714   
            make_headers_comparable(&mut expected);
 5806   7715   
            make_headers_comparable(&mut actual);
 5807   7716   
            assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
 5808   7717   
        };
 5809   7718   
        ($expected:tt, $actual:tt) => {
 5810   7719   
            assert_req_eq!(http: ($expected).as_http_request(), $actual);
 5811   7720   
        };
 5812   7721   
    }
 5813   7722   
 5814   7723   
    pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
 5815   7724   
        for (_name, value) in request.headers_mut() {
 5816   7725   
            value.set_sensitive(false);
 5817   7726   
        }
 5818   7727   
    }
 5819   7728   
 5820         -
    #[test]
 5821         -
    fn test_sign_vanilla_with_headers() {
 5822         -
        let settings = SigningSettings::default();
 5823         -
        let identity = &Credentials::for_tests().into();
 5824         -
        let params = v4::SigningParams {
 5825         -
            identity,
 5826         -
            region: "us-east-1",
 5827         -
            name: "service",
 5828         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 5829         -
            settings,
 5830         -
        }
 5831         -
        .into();
 5832         -
 5833         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 5834         -
        let signable = SignableRequest::from(&original);
 5835         -
        let out = sign(signable, &params).unwrap();
 5836         -
        assert_eq!(
 5837         -
            "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
 5838         -
            out.signature
 5839         -
        );
 5840         -
 5841         -
        let mut signed = original.as_http_request();
 5842         -
        out.output.apply_to_request_http0x(&mut signed);
 5843         -
 5844         -
        let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
 5845         -
        assert_req_eq!(expected, signed);
 5846         -
    }
 5847         -
        7729  +
    // Sigv4A suite tests
 5848   7730   
    #[cfg(feature = "sigv4a")]
 5849         -
    mod sigv4a_tests {
 5850         -
        use super::*;
 5851         -
        use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
 5852         -
        use crate::http_request::{sign, test, SigningParams};
 5853         -
        use crate::sign::v4a;
 5854         -
        use p256::ecdsa::signature::{Signature, Verifier};
 5855         -
        use p256::ecdsa::{DerSignature, SigningKey};
 5856         -
        use pretty_assertions::assert_eq;
 5857         -
 5858         -
        fn new_v4a_signing_params_from_context(
 5859         -
            test_context: &'_ test::v4a::TestContext,
 5860         -
            signature_location: SignatureLocation,
 5861         -
        ) -> SigningParams<'_> {
 5862         -
            let mut params = v4a::SigningParams::from(test_context);
 5863         -
            params.settings.signature_location = signature_location;
 5864         -
 5865         -
            params.into()
 5866         -
        }
 5867         -
 5868         -
        fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
 5869         -
            let tc = test::v4a::test_context(test_name);
 5870         -
            let params = new_v4a_signing_params_from_context(&tc, signature_location);
 5871         -
 5872         -
            let req = test::v4a::test_request(test_name);
 5873         -
            let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
 5874         -
            let signable_req = SignableRequest::from(&req);
 5875         -
            let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        7731  +
    mod v4a_suite {
        7732  +
        use crate::http_request::test::v4a::run_test_suite_v4a;
 5876   7733   
 5877         -
            assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
 5878         -
 5879         -
            let expected_string_to_sign =
 5880         -
                test::v4a::test_string_to_sign(test_name, signature_location);
 5881         -
            let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
 5882         -
            let actual_string_to_sign = StringToSign::new_v4a(
 5883         -
                *params.time(),
 5884         -
                params.region_set().unwrap(),
 5885         -
                params.name(),
 5886         -
                hashed_creq,
 5887         -
            )
 5888         -
            .to_string();
 5889         -
 5890         -
            assert_eq!(
 5891         -
                expected_string_to_sign, actual_string_to_sign,
 5892         -
                "'string to sign' didn't match"
 5893         -
            );
 5894         -
 5895         -
            let out = sign(signable_req, &params).unwrap();
 5896         -
            // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
 5897         -
            out.output
 5898         -
                .apply_to_request_http0x(&mut req.as_http_request());
 5899         -
 5900         -
            let creds = params.credentials().unwrap();
 5901         -
            let signing_key =
 5902         -
                v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
 5903         -
            let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
 5904         -
            let sig = sig
 5905         -
                .try_into()
 5906         -
                .expect("DER-style signatures are always convertible into fixed-size signatures");
 5907         -
 5908         -
            let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
 5909         -
            let peer_public_key = signing_key.verifying_key();
 5910         -
            let sts = actual_string_to_sign.as_bytes();
 5911         -
            peer_public_key.verify(sts, &sig).unwrap();
        7734  +
        #[test]
        7735  +
        fn test_get_header_key_duplicate() {
        7736  +
            run_test_suite_v4a("get-header-key-duplicate")
 5912   7737   
        }
 5913   7738   
 5914   7739   
        #[test]
 5915         -
        fn test_get_header_key_duplicate() {
 5916         -
            run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
        7740  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        7741  +
        fn test_get_header_value_multiline() {
        7742  +
            run_test_suite_v4a("get-header-value-multiline")
 5917   7743   
        }
 5918   7744   
 5919   7745   
        #[test]
 5920   7746   
        fn test_get_header_value_order() {
 5921         -
            run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
        7747  +
            run_test_suite_v4a("get-header-value-order")
 5922   7748   
        }
 5923   7749   
 5924   7750   
        #[test]
 5925   7751   
        fn test_get_header_value_trim() {
 5926         -
            run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
        7752  +
            run_test_suite_v4a("get-header-value-trim");
 5927   7753   
        }
 5928   7754   
 5929   7755   
        #[test]
 5930   7756   
        fn test_get_relative_normalized() {
 5931         -
            run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
        7757  +
            run_test_suite_v4a("get-relative-normalized");
 5932   7758   
        }
 5933   7759   
 5934   7760   
        #[test]
 5935   7761   
        fn test_get_relative_relative_normalized() {
 5936         -
            run_v4a_test_suite(
 5937         -
                "get-relative-relative-normalized",
 5938         -
                SignatureLocation::Headers,
 5939         -
            );
        7762  +
            run_test_suite_v4a("get-relative-relative-normalized");
 5940   7763   
        }
 5941   7764   
 5942   7765   
        #[test]
 5943   7766   
        fn test_get_relative_relative_unnormalized() {
 5944         -
            run_v4a_test_suite(
 5945         -
                "get-relative-relative-unnormalized",
 5946         -
                SignatureLocation::Headers,
 5947         -
            );
        7767  +
            run_test_suite_v4a("get-relative-relative-unnormalized");
 5948   7768   
        }
 5949   7769   
 5950   7770   
        #[test]
 5951   7771   
        fn test_get_relative_unnormalized() {
 5952         -
            run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
        7772  +
            run_test_suite_v4a("get-relative-unnormalized");
 5953   7773   
        }
 5954   7774   
 5955   7775   
        #[test]
 5956   7776   
        fn test_get_slash_dot_slash_normalized() {
 5957         -
            run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
        7777  +
            run_test_suite_v4a("get-slash-dot-slash-normalized");
 5958   7778   
        }
 5959   7779   
 5960   7780   
        #[test]
 5961   7781   
        fn test_get_slash_dot_slash_unnormalized() {
 5962         -
            run_v4a_test_suite(
 5963         -
                "get-slash-dot-slash-unnormalized",
 5964         -
                SignatureLocation::Headers,
 5965         -
            );
        7782  +
            run_test_suite_v4a("get-slash-dot-slash-unnormalized");
 5966   7783   
        }
 5967   7784   
 5968   7785   
        #[test]
 5969   7786   
        fn test_get_slash_normalized() {
 5970         -
            run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
        7787  +
            run_test_suite_v4a("get-slash-normalized");
 5971   7788   
        }
 5972   7789   
 5973   7790   
        #[test]
 5974   7791   
        fn test_get_slash_pointless_dot_normalized() {
 5975         -
            run_v4a_test_suite(
 5976         -
                "get-slash-pointless-dot-normalized",
 5977         -
                SignatureLocation::Headers,
 5978         -
            );
        7792  +
            run_test_suite_v4a("get-slash-pointless-dot-normalized");
 5979   7793   
        }
 5980   7794   
 5981   7795   
        #[test]
 5982   7796   
        fn test_get_slash_pointless_dot_unnormalized() {
 5983         -
            run_v4a_test_suite(
 5984         -
                "get-slash-pointless-dot-unnormalized",
 5985         -
                SignatureLocation::Headers,
 5986         -
            );
        7797  +
            run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
 5987   7798   
        }
 5988   7799   
 5989   7800   
        #[test]
 5990   7801   
        fn test_get_slash_unnormalized() {
 5991         -
            run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
        7802  +
            run_test_suite_v4a("get-slash-unnormalized");
 5992   7803   
        }
 5993   7804   
 5994   7805   
        #[test]
 5995   7806   
        fn test_get_slashes_normalized() {
 5996         -
            run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
        7807  +
            run_test_suite_v4a("get-slashes-normalized");
 5997   7808   
        }
 5998   7809   
 5999   7810   
        #[test]
 6000   7811   
        fn test_get_slashes_unnormalized() {
 6001         -
            run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
        7812  +
            run_test_suite_v4a("get-slashes-unnormalized");
        7813  +
        }
        7814  +
        7815  +
        #[test]
        7816  +
        #[ignore = "relies on single encode of path segments"]
        7817  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        7818  +
        // skipped until we add control over double_uri_encode in context.json
        7819  +
        fn test_get_space_normalized() {
        7820  +
            run_test_suite_v4a("get-space-normalized");
        7821  +
        }
        7822  +
        7823  +
        #[test]
        7824  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        7825  +
        // the input request has unencoded space ' ' in the path which fails to parse
        7826  +
        fn test_get_space_unnormalized() {
        7827  +
            run_test_suite_v4a("get-space-unnormalized");
 6002   7828   
        }
 6003   7829   
 6004   7830   
        #[test]
 6005   7831   
        fn test_get_unreserved() {
 6006         -
            run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
        7832  +
            run_test_suite_v4a("get-unreserved");
        7833  +
        }
        7834  +
        7835  +
        #[test]
        7836  +
        #[ignore = "httparse fails on invalid uri character"]
        7837  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7838  +
        fn test_get_utf8() {
        7839  +
            run_test_suite_v4a("get-utf8");
 6007   7840   
        }
 6008   7841   
 6009   7842   
        #[test]
 6010   7843   
        fn test_get_vanilla() {
 6011         -
            run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
        7844  +
            run_test_suite_v4a("get-vanilla");
 6012   7845   
        }
 6013   7846   
 6014   7847   
        #[test]
 6015   7848   
        fn test_get_vanilla_empty_query_key() {
 6016         -
            run_v4a_test_suite(
 6017         -
                "get-vanilla-empty-query-key",
 6018         -
                SignatureLocation::QueryParams,
 6019         -
            );
        7849  +
            run_test_suite_v4a("get-vanilla-empty-query-key");
 6020   7850   
        }
 6021   7851   
 6022   7852   
        #[test]
 6023   7853   
        fn test_get_vanilla_query() {
 6024         -
            run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
        7854  +
            run_test_suite_v4a("get-vanilla-query");
        7855  +
        }
        7856  +
        7857  +
        #[test]
        7858  +
        fn test_get_vanilla_query_order_encoded() {
        7859  +
            run_test_suite_v4a("get-vanilla-query-order-encoded");
 6025   7860   
        }
 6026   7861   
 6027   7862   
        #[test]
 6028   7863   
        fn test_get_vanilla_query_order_key_case() {
 6029         -
            run_v4a_test_suite(
 6030         -
                "get-vanilla-query-order-key-case",
 6031         -
                SignatureLocation::QueryParams,
 6032         -
            );
        7864  +
            run_test_suite_v4a("get-vanilla-query-order-key-case");
 6033   7865   
        }
 6034   7866   
 6035   7867   
        #[test]
 6036   7868   
        fn test_get_vanilla_query_unreserved() {
 6037         -
            run_v4a_test_suite(
 6038         -
                "get-vanilla-query-unreserved",
 6039         -
                SignatureLocation::QueryParams,
 6040         -
            );
        7869  +
            run_test_suite_v4a("get-vanilla-query-unreserved");
        7870  +
        }
        7871  +
        7872  +
        #[test]
        7873  +
        #[ignore = "httparse fails on invalid uri character"]
        7874  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        7875  +
        fn test_get_vanilla_utf8_query() {
        7876  +
            run_test_suite_v4a("get-vanilla-utf8-query");
 6041   7877   
        }
 6042   7878   
 6043   7879   
        #[test]
 6044   7880   
        fn test_get_vanilla_with_session_token() {
 6045         -
            run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
        7881  +
            run_test_suite_v4a("get-vanilla-with-session-token")
 6046   7882   
        }
 6047   7883   
 6048   7884   
        #[test]
 6049   7885   
        fn test_post_header_key_case() {
 6050         -
            run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
        7886  +
            run_test_suite_v4a("post-header-key-case");
 6051   7887   
        }
 6052   7888   
 6053   7889   
        #[test]
 6054   7890   
        fn test_post_header_key_sort() {
 6055         -
            run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
        7891  +
            run_test_suite_v4a("post-header-key-sort");
 6056   7892   
        }
 6057   7893   
 6058   7894   
        #[test]
 6059   7895   
        fn test_post_header_value_case() {
 6060         -
            run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
        7896  +
            run_test_suite_v4a("post-header-value-case");
 6061   7897   
        }
 6062   7898   
 6063   7899   
        #[test]
 6064   7900   
        fn test_post_sts_header_after() {
 6065         -
            run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
        7901  +
            run_test_suite_v4a("post-sts-header-after");
 6066   7902   
        }
 6067   7903   
 6068   7904   
        #[test]
 6069   7905   
        fn test_post_sts_header_before() {
 6070         -
            run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
        7906  +
            run_test_suite_v4a("post-sts-header-before");
 6071   7907   
        }
 6072   7908   
 6073   7909   
        #[test]
 6074   7910   
        fn test_post_vanilla() {
 6075         -
            run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
        7911  +
            run_test_suite_v4a("post-vanilla");
 6076   7912   
        }
 6077   7913   
 6078   7914   
        #[test]
 6079   7915   
        fn test_post_vanilla_empty_query_value() {
 6080         -
            run_v4a_test_suite(
 6081         -
                "post-vanilla-empty-query-value",
 6082         -
                SignatureLocation::QueryParams,
 6083         -
            );
        7916  +
            run_test_suite_v4a("post-vanilla-empty-query-value");
 6084   7917   
        }
 6085   7918   
 6086   7919   
        #[test]
 6087   7920   
        fn test_post_vanilla_query() {
 6088         -
            run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
        7921  +
            run_test_suite_v4a("post-vanilla-query");
 6089   7922   
        }
 6090   7923   
 6091   7924   
        #[test]
 6092   7925   
        fn test_post_x_www_form_urlencoded() {
 6093         -
            run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
        7926  +
            run_test_suite_v4a("post-x-www-form-urlencoded");
 6094   7927   
        }
 6095   7928   
 6096   7929   
        #[test]
 6097   7930   
        fn test_post_x_www_form_urlencoded_parameters() {
 6098         -
            run_v4a_test_suite(
 6099         -
                "post-x-www-form-urlencoded-parameters",
 6100         -
                SignatureLocation::QueryParams,
 6101         -
            );
        7931  +
            run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
 6102   7932   
        }
 6103   7933   
    }
 6104   7934   
 6105   7935   
    #[test]
 6106   7936   
    fn test_sign_url_escape() {
 6107         -
        let test = "double-encode-path";
        7937  +
        let test = SigningSuiteTest::v4("double-encode-path");
 6108   7938   
        let settings = SigningSettings::default();
 6109   7939   
        let identity = &Credentials::for_tests().into();
 6110   7940   
        let params = v4::SigningParams {
 6111   7941   
            identity,
 6112   7942   
            region: "us-east-1",
 6113   7943   
            name: "service",
 6114   7944   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6115   7945   
            settings,
 6116   7946   
        }
 6117   7947   
        .into();
 6118   7948   
 6119         -
        let original = test::v4::test_request(test);
        7949  +
        let original = test.request();
 6120   7950   
        let signable = SignableRequest::from(&original);
 6121   7951   
        let out = sign(signable, &params).unwrap();
 6122   7952   
        assert_eq!(
 6123   7953   
            "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
 6124   7954   
            out.signature
 6125   7955   
        );
 6126   7956   
 6127   7957   
        let mut signed = original.as_http_request();
 6128   7958   
        out.output.apply_to_request_http0x(&mut signed);
 6129   7959   
 6130         -
        let expected = test::v4::test_signed_request(test);
 6131         -
        assert_req_eq!(expected, signed);
 6132         -
    }
 6133         -
 6134         -
    #[test]
 6135         -
    fn test_sign_vanilla_with_query_params() {
 6136         -
        let settings = SigningSettings {
 6137         -
            signature_location: SignatureLocation::QueryParams,
 6138         -
            expires_in: Some(Duration::from_secs(35)),
 6139         -
            ..Default::default()
 6140         -
        };
 6141         -
        let identity = &Credentials::for_tests().into();
 6142         -
        let params = v4::SigningParams {
 6143         -
            identity,
 6144         -
            region: "us-east-1",
 6145         -
            name: "service",
 6146         -
            time: parse_date_time("20150830T123600Z").unwrap(),
 6147         -
            settings,
 6148         -
        }
 6149         -
        .into();
 6150         -
 6151         -
        let original = test::v4::test_request("get-vanilla-query-order-key-case");
 6152         -
        let signable = SignableRequest::from(&original);
 6153         -
        let out = sign(signable, &params).unwrap();
 6154         -
        assert_eq!(
 6155         -
            "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
 6156         -
            out.signature
 6157         -
        );
 6158         -
 6159         -
        let mut signed = original.as_http_request();
 6160         -
        out.output.apply_to_request_http0x(&mut signed);
 6161         -
 6162         -
        let expected =
 6163         -
            test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
        7960  +
        let expected = test.signed_request(SignatureLocation::Headers);
 6164   7961   
        assert_req_eq!(expected, signed);
 6165   7962   
    }
 6166   7963   
 6167   7964   
    #[test]
 6168   7965   
    fn test_sign_headers_utf8() {
 6169   7966   
        let settings = SigningSettings::default();
 6170   7967   
        let identity = &Credentials::for_tests().into();
 6171   7968   
        let params = v4::SigningParams {
 6172   7969   
            identity,
 6173   7970   
            region: "us-east-1",
 6174   7971   
            name: "service",
 6175   7972   
            time: parse_date_time("20150830T123600Z").unwrap(),
 6176   7973   
            settings,
 6177   7974   
        }
 6178   7975   
        .into();
 6179   7976   
 6180   7977   
        let original = http0::Request::builder()
 6181   7978   
            .uri("https://some-endpoint.some-region.amazonaws.com")
 6182   7979   
            .header("some-header", HeaderValue::from_str("テスト").unwrap())
 6183   7980   
            .body("")
 6184   7981   
            .unwrap()
 6185   7982   
            .into();
 6186   7983   
        let signable = SignableRequest::from(&original);
 6187   7984   
        let out = sign(signable, &params).unwrap();
 6188   7985   
        assert_eq!(
 6189   7986   
            "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
 6190   7987   
            out.signature
 6191   7988   
        );
 6192   7989   
 6193   7990   
        let mut signed = original.as_http_request();
 6194   7991   
@@ -1138,31 +1028,236 @@ mod tests {
 6195   7992   
        let mut request = http::Request::builder()
 6196   7993   
            .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
 6197   7994   
            .body("")
 6198   7995   
            .unwrap();
 6199   7996   
 6200   7997   
        instructions.apply_to_request_http1x(&mut request);
 6201   7998   
 6202   7999   
        assert_eq!(
 6203   8000   
            "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
 6204   8001   
            request.uri().path_and_query().unwrap().to_string()
 6205   8002   
        );
 6206   8003   
    }
 6207   8004   
 6208   8005   
    #[test]
 6209   8006   
    fn test_debug_signable_body() {
 6210   8007   
        let sut = SignableBody::Bytes(b"hello signable body");
 6211   8008   
        assert_eq!(
 6212   8009   
            "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
 6213   8010   
            format!("{sut:?}")
 6214   8011   
        );
 6215   8012   
 6216   8013   
        let sut = SignableBody::UnsignedPayload;
 6217   8014   
        assert_eq!("UnsignedPayload", format!("{sut:?}"));
 6218   8015   
 6219   8016   
        let sut = SignableBody::Precomputed("precomputed".to_owned());
 6220   8017   
        assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
 6221   8018   
 6222   8019   
        let sut = SignableBody::StreamingUnsignedPayloadTrailer;
 6223   8020   
        assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
 6224   8021   
    }
        8022  +
        8023  +
    // v4 test suite
        8024  +
    mod v4_suite {
        8025  +
        use crate::http_request::test::run_test_suite_v4;
        8026  +
        8027  +
        #[test]
        8028  +
        fn test_get_header_key_duplicate() {
        8029  +
            run_test_suite_v4("get-header-key-duplicate");
        8030  +
        }
        8031  +
        8032  +
        #[test]
        8033  +
        #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
        8034  +
        fn test_get_header_value_multiline() {
        8035  +
            run_test_suite_v4("get-header-value-multiline");
        8036  +
        }
        8037  +
        8038  +
        #[test]
        8039  +
        fn test_get_header_value_order() {
        8040  +
            run_test_suite_v4("get-header-value-order");
        8041  +
        }
        8042  +
        8043  +
        #[test]
        8044  +
        fn test_get_header_value_trim() {
        8045  +
            run_test_suite_v4("get-header-value-trim");
        8046  +
        }
        8047  +
        8048  +
        #[test]
        8049  +
        fn test_get_relative_normalized() {
        8050  +
            run_test_suite_v4("get-relative-normalized");
        8051  +
        }
        8052  +
        8053  +
        #[test]
        8054  +
        fn test_get_relative_relative_normalized() {
        8055  +
            run_test_suite_v4("get-relative-relative-normalized");
        8056  +
        }
        8057  +
        8058  +
        #[test]
        8059  +
        fn test_get_relative_relative_unnormalized() {
        8060  +
            run_test_suite_v4("get-relative-relative-unnormalized");
        8061  +
        }
        8062  +
        8063  +
        #[test]
        8064  +
        fn test_get_relative_unnormalized() {
        8065  +
            run_test_suite_v4("get-relative-unnormalized");
        8066  +
        }
        8067  +
        8068  +
        #[test]
        8069  +
        fn test_get_slash_dot_slash_normalized() {
        8070  +
            run_test_suite_v4("get-slash-dot-slash-normalized");
        8071  +
        }
        8072  +
        8073  +
        #[test]
        8074  +
        fn test_get_slash_dot_slash_unnormalized() {
        8075  +
            run_test_suite_v4("get-slash-dot-slash-unnormalized");
        8076  +
        }
        8077  +
        8078  +
        #[test]
        8079  +
        fn test_get_slash_normalized() {
        8080  +
            run_test_suite_v4("get-slash-normalized");
        8081  +
        }
        8082  +
        8083  +
        #[test]
        8084  +
        fn test_get_slash_pointless_dot_normalized() {
        8085  +
            run_test_suite_v4("get-slash-pointless-dot-normalized");
        8086  +
        }
        8087  +
        8088  +
        #[test]
        8089  +
        fn test_get_slash_pointless_dot_unnormalized() {
        8090  +
            run_test_suite_v4("get-slash-pointless-dot-unnormalized");
        8091  +
        }
        8092  +
        8093  +
        #[test]
        8094  +
        fn test_get_slash_unnormalized() {
        8095  +
            run_test_suite_v4("get-slash-unnormalized");
        8096  +
        }
        8097  +
        8098  +
        #[test]
        8099  +
        fn test_get_slashes_normalized() {
        8100  +
            run_test_suite_v4("get-slashes-normalized");
        8101  +
        }
        8102  +
        8103  +
        #[test]
        8104  +
        fn test_get_slashes_unnormalized() {
        8105  +
            run_test_suite_v4("get-slashes-unnormalized");
        8106  +
        }
        8107  +
        8108  +
        #[test]
        8109  +
        #[ignore = "relies on single encode of path segments"]
        8110  +
        // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
        8111  +
        // skipped until we add control over double_uri_encode in context.json
        8112  +
        fn test_get_space_normalized() {
        8113  +
            run_test_suite_v4("get-space-normalized");
        8114  +
        }
        8115  +
        8116  +
        #[test]
        8117  +
        #[ignore = "httpparse fails on unencoded spaces in path"]
        8118  +
        // the input request has unencoded space ' ' in the path which fails to parse
        8119  +
        fn test_get_space_unnormalized() {
        8120  +
            run_test_suite_v4("get-space-unnormalized");
        8121  +
        }
        8122  +
        8123  +
        #[test]
        8124  +
        fn test_get_unreserved() {
        8125  +
            run_test_suite_v4("get-unreserved");
        8126  +
        }
        8127  +
        8128  +
        #[test]
        8129  +
        #[ignore = "httparse fails on invalid uri character"]
        8130  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8131  +
        fn test_get_utf8() {
        8132  +
            run_test_suite_v4("get-utf8");
        8133  +
        }
        8134  +
        8135  +
        #[test]
        8136  +
        fn test_get_vanilla() {
        8137  +
            run_test_suite_v4("get-vanilla");
        8138  +
        }
        8139  +
        8140  +
        #[test]
        8141  +
        fn test_get_vanilla_empty_query_key() {
        8142  +
            run_test_suite_v4("get-vanilla-empty-query-key");
        8143  +
        }
        8144  +
        8145  +
        #[test]
        8146  +
        fn test_get_vanilla_query() {
        8147  +
            run_test_suite_v4("get-vanilla-query");
        8148  +
        }
        8149  +
        8150  +
        #[test]
        8151  +
        fn test_get_vanilla_query_order_encoded() {
        8152  +
            run_test_suite_v4("get-vanilla-query-order-encoded");
        8153  +
        }
        8154  +
        8155  +
        #[test]
        8156  +
        fn test_get_vanilla_query_order_key_case() {
        8157  +
            run_test_suite_v4("get-vanilla-query-order-key-case");
        8158  +
        }
        8159  +
        8160  +
        #[test]
        8161  +
        fn test_get_vanilla_query_unreserved() {
        8162  +
            run_test_suite_v4("get-vanilla-query-unreserved");
        8163  +
        }
        8164  +
        8165  +
        #[test]
        8166  +
        #[ignore = "httparse fails on invalid uri character"]
        8167  +
        // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
        8168  +
        fn test_get_vanilla_utf8_query() {
        8169  +
            run_test_suite_v4("get-vanilla-utf8-query");
        8170  +
        }
        8171  +
        8172  +
        #[test]
        8173  +
        fn test_get_vanilla_with_session_token() {
        8174  +
            run_test_suite_v4("get-vanilla-with-session-token");
        8175  +
        }
        8176  +
        8177  +
        #[test]
        8178  +
        fn test_post_header_key_case() {
        8179  +
            run_test_suite_v4("post-header-key-case");
        8180  +
        }
        8181  +
        8182  +
        #[test]
        8183  +
        fn test_post_header_key_sort() {
        8184  +
            run_test_suite_v4("post-header-key-sort");
        8185  +
        }
        8186  +
        8187  +
        #[test]
        8188  +
        fn test_post_header_value_case() {
        8189  +
            run_test_suite_v4("post-header-value-case");
        8190  +
        }
        8191  +
        8192  +
        #[test]
        8193  +
        fn test_post_sts_header_after() {
        8194  +
            run_test_suite_v4("post-sts-header-after");
        8195  +
        }
        8196  +
        8197  +
        #[test]
        8198  +
        fn test_post_sts_header_before() {
        8199  +
            run_test_suite_v4("post-sts-header-before");
        8200  +
        }
        8201  +
        8202  +
        #[test]
        8203  +
        fn test_post_vanilla() {
        8204  +
            run_test_suite_v4("post-vanilla");
        8205  +
        }
        8206  +
        8207  +
        #[test]
        8208  +
        fn test_post_vanilla_empty_query_value() {
        8209  +
            run_test_suite_v4("post-vanilla-empty-query-value");
        8210  +
        }
        8211  +
        8212  +
        #[test]
        8213  +
        fn test_post_vanilla_query() {
        8214  +
            run_test_suite_v4("post-vanilla-query");
        8215  +
        }
        8216  +
        8217  +
        #[test]
        8218  +
        fn test_post_x_www_form_urlencoded() {
        8219  +
            run_test_suite_v4("post-x-www-form-urlencoded");
        8220  +
        }
        8221  +
        8222  +
        #[test]
        8223  +
        fn test_post_x_www_form_urlencoded_parameters() {
        8224  +
            run_test_suite_v4("post-x-www-form-urlencoded-parameters");
        8225  +
        }
        8226  +
    }
 6225   8227   
}
 6226   8228   
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
 6227   8229   
index be6c496..86eec20 100644
 6228         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
        8230  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
 6229   8231   
@@ -1,242 +1,453 @@
 6230   8232   
/*
 6231   8233   
 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
 6232   8234   
 * SPDX-License-Identifier: Apache-2.0
 6233   8235   
 */
 6234   8236   
 6235   8237   
//! Functions shared between the tests of several modules.
 6236   8238   
 6237         -
use crate::http_request::{SignableBody, SignableRequest};
        8239  +
use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
        8240  +
use crate::http_request::{
        8241  +
    PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
        8242  +
    SigningSettings,
        8243  +
};
        8244  +
use aws_credential_types::Credentials;
        8245  +
use aws_smithy_runtime_api::client::identity::Identity;
 6238   8246   
use http0::{Method, Uri};
        8247  +
use std::borrow::Cow;
 6239   8248   
use std::error::Error as StdError;
        8249  +
use std::time::{Duration, SystemTime};
        8250  +
use time::format_description::well_known::Rfc3339;
        8251  +
use time::OffsetDateTime;
        8252  +
        8253  +
/// Common test suite collection
        8254  +
#[derive(Debug, Clone, Copy, Eq, PartialEq)]
        8255  +
enum Collection {
        8256  +
    V4,
        8257  +
    V4A,
        8258  +
}
 6240   8259   
 6241         -
pub(crate) mod v4 {
 6242         -
    use super::*;
        8260  +
/// A test from the common CRT test suite
        8261  +
#[derive(Debug, Clone)]
        8262  +
pub(crate) struct SigningSuiteTest {
        8263  +
    test_name: &'static str,
        8264  +
    collection: Collection,
        8265  +
}
 6243   8266   
 6244         -
    fn path(name: &str, ext: &str) -> String {
 6245         -
        format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
        8267  +
impl SigningSuiteTest {
        8268  +
    /// Create a new test from the V4 test suite
        8269  +
    pub(crate) fn v4(test_name: &'static str) -> Self {
        8270  +
        Self {
        8271  +
            test_name,
        8272  +
            collection: Collection::V4,
 6246   8273   
        }
 6247         -
 6248         -
    pub(crate) fn test_canonical_request(name: &str) -> String {
 6249         -
        // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
 6250         -
        read(&path(name, "creq")).trim().to_string()
 6251   8274   
    }
 6252   8275   
 6253         -
    pub(crate) fn test_sts(name: &str) -> String {
 6254         -
        read(&path(name, "sts"))
        8276  +
    /// Create a new test from the V4a test suite
        8277  +
    pub(crate) fn v4a(test_name: &'static str) -> Self {
        8278  +
        Self {
        8279  +
            test_name,
        8280  +
            collection: Collection::V4A,
 6255   8281   
        }
 6256         -
 6257         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6258         -
        test_parsed_request(name, "req")
 6259   8282   
    }
 6260   8283   
 6261         -
    pub(crate) fn test_signed_request(name: &str) -> TestRequest {
 6262         -
        test_parsed_request(name, "sreq")
        8284  +
    /// Get the path to a file in this test suite directory
        8285  +
    fn path(&self, filename: &str) -> String {
        8286  +
        let dir = match self.collection {
        8287  +
            Collection::V4 => "v4",
        8288  +
            Collection::V4A => "v4a",
        8289  +
        };
        8290  +
        format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
 6263   8291   
    }
 6264   8292   
 6265         -
    pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
 6266         -
        test_parsed_request(name, "qpsreq")
        8293  +
    /// Get the HTTP request for the test
        8294  +
    pub(crate) fn request(&self) -> TestRequest {
        8295  +
        test_parsed_request(&self.path("request.txt"))
 6267   8296   
    }
 6268   8297   
 6269         -
    fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
 6270         -
        let path = path(name, ext);
 6271         -
        match parse_request(read(&path).as_bytes()) {
 6272         -
            Ok(parsed) => parsed,
 6273         -
            Err(err) => panic!("Failed to parse {}: {}", path, err),
        8298  +
    /// Get the signed HTTP request for the test
        8299  +
    pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
        8300  +
        match signature_location {
        8301  +
            SignatureLocation::QueryParams => {
        8302  +
                test_parsed_request(&self.path("query-signed-request.txt"))
 6274   8303   
            }
        8304  +
            SignatureLocation::Headers => {
        8305  +
                test_parsed_request(&self.path("header-signed-request.txt"))
 6275   8306   
            }
 6276         -
 6277         -
    #[test]
 6278         -
    fn test_parse() {
 6279         -
        test_request("post-header-key-case");
 6280   8307   
        }
 6281         -
 6282         -
    #[test]
 6283         -
    fn test_read_query_params() {
 6284         -
        test_request("get-vanilla-query-order-key-case");
 6285   8308   
    }
 6286         -
}
 6287         -
 6288         -
#[cfg(feature = "sigv4a")]
 6289         -
pub(crate) mod v4a {
 6290         -
    use super::*;
 6291         -
    use crate::http_request::{
 6292         -
        PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
 6293         -
    };
 6294         -
    use aws_credential_types::Credentials;
 6295         -
    use aws_smithy_runtime_api::client::identity::Identity;
 6296         -
    use serde_derive::Deserialize;
 6297         -
    use std::time::{Duration, SystemTime};
 6298         -
    use time::format_description::well_known::Rfc3339;
 6299         -
    use time::OffsetDateTime;
 6300   8309   
 6301         -
    fn path(test_name: &str, definition_name: &str) -> String {
 6302         -
        format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
        8310  +
    /// Get the canonical request for the test
        8311  +
    pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
        8312  +
        match signature_location {
        8313  +
            SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
        8314  +
            SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
 6303   8315   
        }
 6304         -
 6305         -
    pub(crate) fn test_request(name: &str) -> TestRequest {
 6306         -
        test_parsed_request(&path(name, "request"))
 6307   8316   
    }
 6308   8317   
 6309         -
    pub(crate) fn test_canonical_request(
 6310         -
        name: &str,
 6311         -
        signature_location: SignatureLocation,
 6312         -
    ) -> String {
        8318  +
    /// Get the string to sign for the test
        8319  +
    pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
 6313   8320   
        match signature_location {
 6314         -
            SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
 6315         -
            SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
        8321  +
            SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
        8322  +
            SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
 6316   8323   
        }
 6317   8324   
    }
 6318   8325   
 6319         -
    pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
        8326  +
    /// Get the signature for the test
        8327  +
    pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
 6320   8328   
        match signature_location {
 6321         -
            SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
 6322         -
            SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
        8329  +
            SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
        8330  +
            SignatureLocation::Headers => read(&self.path("header-signature.txt")),
        8331  +
        }
 6323   8332   
    }
        8333  +
        8334  +
    /// Get the test context for the test
        8335  +
    pub(crate) fn context(&self) -> TestContext {
        8336  +
        let context = read(&self.path("context.json"));
        8337  +
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
        8338  +
        tc_builder.build()
 6324   8339   
    }
        8340  +
}
 6325   8341   
 6326         -
    fn test_parsed_request(path: &str) -> TestRequest {
        8342  +
fn test_parsed_request(path: &str) -> TestRequest {
 6327   8343   
    match parse_request(read(path).as_bytes()) {
 6328   8344   
        Ok(parsed) => parsed,
 6329   8345   
        Err(err) => panic!("Failed to parse {}: {}", path, err),
 6330   8346   
    }
 6331         -
    }
        8347  +
}
 6332   8348   
 6333         -
    pub(crate) fn test_context(test_name: &str) -> TestContext {
 6334         -
        let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
 6335         -
        let context = read(&path);
 6336         -
        let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
 6337         -
        tc_builder.build()
 6338         -
    }
        8349  +
fn new_v4_signing_params_from_context(
        8350  +
    test_context: &'_ TestContext,
        8351  +
    signature_location: SignatureLocation,
        8352  +
) -> crate::http_request::SigningParams<'_> {
        8353  +
    let mut params = crate::sign::v4::SigningParams::from(test_context);
        8354  +
    params.settings.signature_location = signature_location;
        8355  +
    params.into()
        8356  +
}
        8357  +
        8358  +
/// Run the given test from the v4 suite for both header and query
        8359  +
/// signature locations
        8360  +
pub(crate) fn run_test_suite_v4(test_name: &'static str) {
        8361  +
    run_v4_test(test_name, SignatureLocation::Headers);
        8362  +
    run_v4_test(test_name, SignatureLocation::QueryParams);
        8363  +
}
        8364  +
        8365  +
fn assert_uri_eq(expected: &Uri, actual: &Uri) {
        8366  +
    assert_eq!(expected.scheme(), actual.scheme());
        8367  +
    assert_eq!(expected.authority(), actual.authority());
        8368  +
    assert_eq!(expected.path(), actual.path());
        8369  +
        8370  +
    // query params may be out of order
        8371  +
    let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8372  +
        form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
        8373  +
    expected_params.sort();
        8374  +
        8375  +
    let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
        8376  +
        form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
        8377  +
    actual_params.sort();
        8378  +
        8379  +
    assert_eq!(expected_params, actual_params);
        8380  +
}
 6339   8381   
 6340         -
    pub(crate) struct TestContext {
        8382  +
fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
        8383  +
    let expected = expected.as_http_request();
        8384  +
    let actual = actual;
        8385  +
    assert_eq!(expected.method(), actual.method());
        8386  +
    assert_eq!(
        8387  +
        expected.headers().len(),
        8388  +
        actual.headers().len(),
        8389  +
        "extra or missing headers"
        8390  +
    );
        8391  +
    assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
        8392  +
    assert_uri_eq(expected.uri(), actual.uri());
        8393  +
    assert_eq!(*expected.body(), *actual.body(), "body mismatch");
        8394  +
}
        8395  +
        8396  +
/// Run the given test from the v4 suite for the given signature location
        8397  +
pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
        8398  +
    let test = SigningSuiteTest::v4(test_name);
        8399  +
    let tc = test.context();
        8400  +
    let params = new_v4_signing_params_from_context(&tc, signature_location);
        8401  +
        8402  +
    let req = test.request();
        8403  +
    let expected_creq = test.canonical_request(signature_location);
        8404  +
    let signable_req = SignableRequest::from(&req);
        8405  +
    let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8406  +
        8407  +
    // check canonical request
        8408  +
    assert_eq!(
        8409  +
        expected_creq,
        8410  +
        actual_creq.to_string(),
        8411  +
        "canonical request didn't match (signature location: {signature_location:?})"
        8412  +
    );
        8413  +
        8414  +
    let expected_string_to_sign = test.string_to_sign(signature_location);
        8415  +
    let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8416  +
    let actual_string_to_sign = StringToSign::new_v4(
        8417  +
        *params.time(),
        8418  +
        params.region().unwrap(),
        8419  +
        params.name(),
        8420  +
        hashed_creq,
        8421  +
    )
        8422  +
    .to_string();
        8423  +
        8424  +
    // check string to sign
        8425  +
    assert_eq!(
        8426  +
        expected_string_to_sign, actual_string_to_sign,
        8427  +
        "'string to sign' didn't match (signature location: {signature_location:?})"
        8428  +
    );
        8429  +
        8430  +
    let out = crate::http_request::sign(signable_req, &params).unwrap();
        8431  +
    let mut signed = req.as_http_request();
        8432  +
    out.output.apply_to_request_http0x(&mut signed);
        8433  +
        8434  +
    // check signature
        8435  +
    assert_eq!(
        8436  +
        test.signature(signature_location),
        8437  +
        out.signature,
        8438  +
        "signature didn't match (signature location: {signature_location:?})"
        8439  +
    );
        8440  +
        8441  +
    let expected = test.signed_request(signature_location);
        8442  +
    assert_requests_eq(expected, signed);
        8443  +
}
        8444  +
        8445  +
/// Test suite context.json
        8446  +
pub(crate) struct TestContext {
 6341   8447   
    pub(crate) identity: Identity,
 6342   8448   
    pub(crate) expiration_in_seconds: u64,
 6343   8449   
    pub(crate) normalize: bool,
 6344   8450   
    pub(crate) region: String,
 6345   8451   
    pub(crate) service: String,
 6346   8452   
    pub(crate) timestamp: String,
 6347   8453   
    pub(crate) omit_session_token: bool,
 6348   8454   
    pub(crate) sign_body: bool,
 6349         -
    }
 6350         -
 6351         -
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
 6352         -
        fn from(tc: &'a TestContext) -> Self {
 6353         -
            crate::sign::v4a::SigningParams {
 6354         -
                identity: &tc.identity,
 6355         -
                region_set: &tc.region,
 6356         -
                name: &tc.service,
 6357         -
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
 6358         -
                    .unwrap()
 6359         -
                    .into(),
 6360         -
                settings: SigningSettings {
 6361         -
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
 6362         -
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
 6363         -
                    uri_path_normalization_mode: tc.normalize.into(),
 6364         -
                    session_token_mode: if tc.omit_session_token {
 6365         -
                        SessionTokenMode::Exclude
 6366         -
                    } else {
 6367         -
                        SessionTokenMode::Include
 6368         -
                    },
 6369         -
                    payload_checksum_kind: if tc.sign_body {
 6370         -
                        PayloadChecksumKind::XAmzSha256
 6371         -
                    } else {
 6372         -
                        PayloadChecksumKind::NoHeader
 6373         -
                    },
 6374         -
                    ..Default::default()
 6375         -
                },
 6376         -
            }
 6377         -
        }
 6378         -
    }
        8455  +
}
 6379   8456   
 6380         -
    // Serde has limitations requiring this odd workaround.
 6381         -
    // See https://github.com/serde-rs/serde/issues/368 for more info.
 6382         -
    fn return_true() -> bool {
        8457  +
// Serde has limitations requiring this odd workaround.
        8458  +
// See https://github.com/serde-rs/serde/issues/368 for more info.
        8459  +
fn return_true() -> bool {
 6383   8460   
    true
 6384         -
    }
        8461  +
}
 6385   8462   
 6386         -
    #[derive(Deserialize)]
 6387         -
    pub(crate) struct TestContextBuilder {
        8463  +
#[derive(serde_derive::Deserialize)]
        8464  +
pub(crate) struct TestContextBuilder {
 6388   8465   
    credentials: TestContextCreds,
 6389   8466   
    expiration_in_seconds: u64,
 6390   8467   
    normalize: bool,
 6391   8468   
    region: String,
 6392   8469   
    service: String,
 6393   8470   
    timestamp: String,
 6394   8471   
    #[serde(default)]
 6395   8472   
    omit_session_token: bool,
 6396   8473   
    #[serde(default = "return_true")]
 6397   8474   
    sign_body: bool,
 6398         -
    }
        8475  +
}
 6399   8476   
 6400         -
    impl TestContextBuilder {
        8477  +
impl TestContextBuilder {
 6401   8478   
    pub(crate) fn build(self) -> TestContext {
 6402   8479   
        let identity = Identity::new(
 6403   8480   
            Credentials::from_keys(
 6404   8481   
                &self.credentials.access_key_id,
 6405   8482   
                &self.credentials.secret_access_key,
 6406   8483   
                self.credentials.token.clone(),
 6407   8484   
            ),
 6408   8485   
            Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
 6409   8486   
        );
 6410   8487   
 6411   8488   
        TestContext {
 6412   8489   
            identity,
 6413   8490   
            expiration_in_seconds: self.expiration_in_seconds,
 6414   8491   
            normalize: self.normalize,
 6415   8492   
            region: self.region,
 6416   8493   
            service: self.service,
 6417   8494   
            timestamp: self.timestamp,
 6418   8495   
            omit_session_token: self.omit_session_token,
 6419   8496   
            sign_body: self.sign_body,
 6420   8497   
        }
 6421   8498   
    }
 6422         -
    }
        8499  +
}
 6423   8500   
 6424         -
    #[derive(Deserialize)]
 6425         -
    pub(crate) struct TestContextCreds {
        8501  +
#[derive(serde_derive::Deserialize)]
        8502  +
pub(crate) struct TestContextCreds {
 6426   8503   
    access_key_id: String,
 6427   8504   
    secret_access_key: String,
 6428   8505   
    token: Option<String>,
        8506  +
}
        8507  +
        8508  +
impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
        8509  +
    fn from(tc: &'a TestContext) -> Self {
        8510  +
        crate::sign::v4::SigningParams {
        8511  +
            identity: &tc.identity,
        8512  +
            region: &tc.region,
        8513  +
            name: &tc.service,
        8514  +
            time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8515  +
                .unwrap()
        8516  +
                .into(),
        8517  +
            settings: SigningSettings {
        8518  +
                // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8519  +
                expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8520  +
                uri_path_normalization_mode: tc.normalize.into(),
        8521  +
                session_token_mode: if tc.omit_session_token {
        8522  +
                    SessionTokenMode::Exclude
        8523  +
                } else {
        8524  +
                    SessionTokenMode::Include
        8525  +
                },
        8526  +
                payload_checksum_kind: if tc.sign_body {
        8527  +
                    PayloadChecksumKind::XAmzSha256
        8528  +
                } else {
        8529  +
                    PayloadChecksumKind::NoHeader
        8530  +
                },
        8531  +
                ..Default::default()
        8532  +
            },
        8533  +
        }
        8534  +
    }
        8535  +
}
        8536  +
        8537  +
#[cfg(feature = "sigv4a")]
        8538  +
pub(crate) mod v4a {
        8539  +
    use super::*;
        8540  +
    use crate::http_request::{
        8541  +
        sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
        8542  +
    };
        8543  +
    use crate::sign::v4a;
        8544  +
    use p256::ecdsa::signature::{Signature, Verifier};
        8545  +
    use p256::ecdsa::{DerSignature, SigningKey};
        8546  +
    use std::time::Duration;
        8547  +
    use time::format_description::well_known::Rfc3339;
        8548  +
    use time::OffsetDateTime;
        8549  +
        8550  +
    fn new_v4a_signing_params_from_context(
        8551  +
        test_context: &'_ TestContext,
        8552  +
        signature_location: SignatureLocation,
        8553  +
    ) -> crate::http_request::SigningParams<'_> {
        8554  +
        let mut params = crate::sign::v4a::SigningParams::from(test_context);
        8555  +
        params.settings.signature_location = signature_location;
        8556  +
        params.into()
        8557  +
    }
        8558  +
        8559  +
    pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
        8560  +
        run_v4a_test(test_name, SignatureLocation::Headers);
        8561  +
        run_v4a_test(test_name, SignatureLocation::QueryParams);
        8562  +
    }
        8563  +
        8564  +
    pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
        8565  +
        let test = SigningSuiteTest::v4a(test_name);
        8566  +
        let tc = test.context();
        8567  +
        let params = new_v4a_signing_params_from_context(&tc, signature_location);
        8568  +
        8569  +
        let req = test.request();
        8570  +
        let expected_creq = test.canonical_request(signature_location);
        8571  +
        let signable_req = SignableRequest::from(&req);
        8572  +
        let actual_creq = CanonicalRequest::from(&signable_req, &params).unwrap();
        8573  +
        8574  +
        assert_eq!(
        8575  +
            expected_creq,
        8576  +
            actual_creq.to_string(),
        8577  +
            "canonical request didn't match (signature location: {signature_location:?})"
        8578  +
        );
        8579  +
        8580  +
        let expected_string_to_sign = test.string_to_sign(signature_location);
        8581  +
        let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
        8582  +
        let actual_string_to_sign = StringToSign::new_v4a(
        8583  +
            *params.time(),
        8584  +
            params.region_set().unwrap(),
        8585  +
            params.name(),
        8586  +
            hashed_creq,
        8587  +
        )
        8588  +
        .to_string();
        8589  +
        8590  +
        assert_eq!(
        8591  +
            expected_string_to_sign, actual_string_to_sign,
        8592  +
            "'string to sign' didn't match (signature location: {signature_location:?})"
        8593  +
        );
        8594  +
        8595  +
        let out = sign(signable_req, &params).unwrap();
        8596  +
        // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
        8597  +
        out.output
        8598  +
            .apply_to_request_http0x(&mut req.as_http_request());
        8599  +
        8600  +
        let creds = params.credentials().unwrap();
        8601  +
        let signing_key =
        8602  +
            v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
        8603  +
        let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
        8604  +
        let sig = sig
        8605  +
            .try_into()
        8606  +
            .expect("DER-style signatures are always convertible into fixed-size signatures");
        8607  +
        8608  +
        let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
        8609  +
        let peer_public_key = signing_key.verifying_key();
        8610  +
        let sts = actual_string_to_sign.as_bytes();
        8611  +
        peer_public_key.verify(sts, &sig).unwrap();
        8612  +
        // TODO(sigv4a) - use public.key.json as verifying key?
        8613  +
    }
        8614  +
        8615  +
    impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
        8616  +
        fn from(tc: &'a TestContext) -> Self {
        8617  +
            crate::sign::v4a::SigningParams {
        8618  +
                identity: &tc.identity,
        8619  +
                region_set: &tc.region,
        8620  +
                name: &tc.service,
        8621  +
                time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
        8622  +
                    .unwrap()
        8623  +
                    .into(),
        8624  +
                settings: SigningSettings {
        8625  +
                    // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
        8626  +
                    expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
        8627  +
                    uri_path_normalization_mode: tc.normalize.into(),
        8628  +
                    session_token_mode: if tc.omit_session_token {
        8629  +
                        SessionTokenMode::Exclude
        8630  +
                    } else {
        8631  +
                        SessionTokenMode::Include
        8632  +
                    },
        8633  +
                    payload_checksum_kind: if tc.sign_body {
        8634  +
                        PayloadChecksumKind::XAmzSha256
        8635  +
                    } else {
        8636  +
                        PayloadChecksumKind::NoHeader
        8637  +
                    },
        8638  +
                    ..Default::default()
        8639  +
                },
        8640  +
            }
        8641  +
        }
 6429   8642   
    }
 6430   8643   
 6431   8644   
    #[test]
 6432   8645   
    fn test_parse() {
 6433         -
        let req = test_request("post-header-key-case");
        8646  +
        let req = SigningSuiteTest::v4a("post-header-key-case").request();
 6434   8647   
        assert_eq!(req.method, "POST");
 6435   8648   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6436   8649   
        assert!(req.headers.is_empty());
 6437   8650   
    }
 6438   8651   
 6439   8652   
    #[test]
 6440   8653   
    fn test_read_query_params() {
 6441         -
        let req = test_request("get-header-value-trim");
        8654  +
        let req = SigningSuiteTest::v4a("get-header-value-trim").request();
 6442   8655   
        assert_eq!(req.method, "GET");
 6443   8656   
        assert_eq!(req.uri, "https://example.amazonaws.com/");
 6444   8657   
        assert!(!req.headers.is_empty());
 6445   8658   
    }
 6446   8659   
}
 6447   8660   
 6448   8661   
fn read(path: &str) -> String {
 6449   8662   
    println!("Loading `{}` for test case...", path);
 6450   8663   
    let v = {
 6451   8664   
        match std::fs::read_to_string(path) {
 6452   8665   
            // This replacement is necessary for tests to pass on Windows, as reading the
 6453   8666   
            // test snapshots from the file system results in CRLF line endings being inserted.
 6454   8667   
            Ok(value) => value.replace("\r\n", "\n"),
 6455   8668   
            Err(err) => {
 6456   8669   
                panic!("failed to load test case `{}`: {}", path, err);
 6457   8670   
            }
 6458   8671   
        }
 6459   8672   
    };
 6460   8673   
 6461   8674   
    v.trim().to_string()
 6462   8675   
}
 6463   8676   
 6464   8677   
pub(crate) struct TestRequest {
 6465   8678   
    pub(crate) uri: String,
 6466   8679   
    pub(crate) method: String,
 6467   8680   
    pub(crate) headers: Vec<(String, String)>,
 6468   8681   
    pub(crate) body: TestSignedBody,
 6469   8682   
}
 6470   8683   
 6471   8684   
pub(crate) enum TestSignedBody {
 6472   8685   
@@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
 6473   8686   
                        String::from_utf8(v.as_bytes().to_vec()).unwrap(),
 6474   8687   
                    )
 6475   8688   
                })
 6476   8689   
                .collect::<Vec<_>>(),
 6477   8690   
            body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
 6478   8691   
        }
 6479   8692   
    }
 6480   8693   
}
 6481   8694   
 6482   8695   
impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
 6483   8696   
    fn from(request: &'a TestRequest) -> SignableRequest<'a> {
 6484   8697   
        SignableRequest::new(
 6485   8698   
            &request.method,
 6486   8699   
            &request.uri,
 6487   8700   
            request
 6488   8701   
                .headers
 6489   8702   
                .iter()
 6490   8703   
                .map(|(k, v)| (k.as_str(), v.as_str())),
 6491   8704   
            request.body.as_signable_body(),
 6492   8705   
        )
 6493   8706   
        .expect("URI MUST be valid")
 6494   8707   
    }
 6495   8708   
}
 6496   8709   
 6497   8710   
fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
 6498   8711   
    let mut headers = [httparse::EMPTY_HEADER; 64];
 6499   8712   
    // httparse 1.5 requires two trailing newlines to head the header section.
 6500   8713   
    let mut with_newline = Vec::from(s);
 6501   8714   
    with_newline.push(b'\n');
 6502   8715   
    let mut req = httparse::Request::new(&mut headers);
 6503         -
    let _ = req.parse(&with_newline).unwrap();
        8716  +
    let status = req.parse(&with_newline).unwrap();
        8717  +
        8718  +
    let body = if status.is_complete() {
        8719  +
        let body_offset = status.unwrap();
        8720  +
        // ignore the newline we added, take from original
        8721  +
        &s[body_offset..]
        8722  +
    } else {
        8723  +
        &[]
        8724  +
    };
 6504   8725   
 6505   8726   
    let mut uri_builder = Uri::builder().scheme("https");
 6506   8727   
    if let Some(path) = req.path {
 6507   8728   
        uri_builder = uri_builder.path_and_query(path);
 6508   8729   
    }
 6509   8730   
 6510   8731   
    let mut headers = vec![];
 6511   8732   
    for header in req.headers {
 6512   8733   
        let name = header.name.to_lowercase();
 6513   8734   
        if name == "host" {
 6514   8735   
            uri_builder = uri_builder.authority(header.value);
 6515   8736   
        } else if !name.is_empty() {
 6516   8737   
            headers.push((
 6517   8738   
                header.name.to_string(),
 6518   8739   
                std::str::from_utf8(header.value)?.to_string(),
 6519   8740   
            ));
 6520   8741   
        }
 6521   8742   
    }
 6522   8743   
 6523   8744   
    Ok(TestRequest {
 6524   8745   
        uri: uri_builder.build()?.to_string(),
 6525   8746   
        method: req.method.unwrap().to_string(),
 6526   8747   
        headers,
 6527         -
        body: TestSignedBody::Bytes(vec![]),
        8748  +
        body: TestSignedBody::Bytes(Vec::from(body)),
 6528   8749   
    })
 6529   8750   
}
 6530   8751   
 6531   8752   
#[test]
 6532   8753   
fn test_parse_headers() {
 6533   8754   
    let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
 6534   8755   
    let mut headers = [httparse::EMPTY_HEADER; 4];
 6535   8756   
    assert_eq!(
 6536   8757   
        httparse::parse_headers(buf, &mut headers),
 6537   8758   
        Ok(httparse::Status::Complete((
 6538   8759   
            56,
 6539   8760   
            &[
 6540   8761   
                httparse::Header {
 6541   8762   
                    name: "Host",
 6542   8763   
                    value: b"example.amazonaws.com",
 6543   8764   
                },
 6544   8765   
                httparse::Header {
 6545   8766   
                    name: "X-Amz-Date",
 6546   8767   
                    value: b"20150830T123600Z",
 6547   8768   
                }
 6548   8769   
            ][..]
 6549   8770   
        )))
 6550   8771   
    );
 6551   8772   
}
 6552   8773   
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
 6553   8774   
index a208453..fc00249 100644
 6554         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
        8775  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
 6555   8776   
@@ -168,52 +168,54 @@ pub mod signing_params {
 6556   8777   
        );
 6557   8778   
 6558   8779   
        /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
 6559   8780   
        /// a required argument was not given.
 6560   8781   
        pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
 6561   8782   
            Ok(SigningParams {
 6562   8783   
                identity: self
 6563   8784   
                    .identity
 6564   8785   
                    .ok_or_else(|| BuildError::new("identity is required"))?,
 6565   8786   
                region: self
 6566   8787   
                    .region
 6567   8788   
                    .ok_or_else(|| BuildError::new("region is required"))?,
 6568   8789   
                name: self
 6569   8790   
                    .name
 6570   8791   
                    .ok_or_else(|| BuildError::new("name is required"))?,
 6571   8792   
                time: self
 6572   8793   
                    .time
 6573   8794   
                    .ok_or_else(|| BuildError::new("time is required"))?,
 6574   8795   
                settings: self
 6575   8796   
                    .settings
 6576   8797   
                    .ok_or_else(|| BuildError::new("settings are required"))?,
 6577   8798   
            })
 6578   8799   
        }
 6579   8800   
    }
 6580   8801   
}
 6581   8802   
 6582   8803   
#[cfg(test)]
 6583   8804   
mod tests {
 6584   8805   
    use super::{calculate_signature, generate_signing_key, sha256_hex_string};
 6585   8806   
    use crate::date_time::test_parsers::parse_date_time;
 6586         -
    use crate::http_request::test;
 6587   8807   
 6588   8808   
    #[test]
 6589   8809   
    fn test_signature_calculation() {
 6590   8810   
        let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
 6591         -
        let creq = test::v4::test_canonical_request("iam");
        8811  +
        let creq = r#"AWS4-HMAC-SHA256
        8812  +
20150830T123600Z
        8813  +
20150830/us-east-1/iam/aws4_request
        8814  +
f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
 6592   8815   
        let time = parse_date_time("20150830T123600Z").unwrap();
 6593   8816   
 6594   8817   
        let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
 6595   8818   
        let signature = calculate_signature(derived_key, creq.as_bytes());
 6596   8819   
 6597   8820   
        let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
 6598   8821   
        assert_eq!(expected, &signature);
 6599   8822   
    }
 6600   8823   
 6601   8824   
    #[test]
 6602   8825   
    fn sign_payload_empty_string() {
 6603   8826   
        let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
 6604   8827   
        let actual = sha256_hex_string([]);
 6605   8828   
        assert_eq!(expected, actual);
 6606   8829   
    }
 6607   8830   
}
 6608   8831   
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
 6609   8832   
index ce78c38..8c2f591 100644
 6610         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
        8833  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
 6611   8834   
@@ -1,43 +1,43 @@
 6612   8835   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6613   8836   
[package]
 6614   8837   
name = "aws-smithy-checksums"
 6615   8838   
version = "0.63.5"
 6616   8839   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
 6617   8840   
description = "Checksum calculation and verification callbacks"
 6618   8841   
edition = "2021"
 6619   8842   
license = "Apache-2.0"
 6620   8843   
repository = "https://github.com/smithy-lang/smithy-rs"
 6621   8844   
[package.metadata.docs.rs]
 6622   8845   
all-features = true
 6623   8846   
targets = ["x86_64-unknown-linux-gnu"]
 6624   8847   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6625   8848   
rustdoc-args = ["--cfg", "docsrs"]
 6626   8849   
 6627   8850   
[dependencies]
 6628   8851   
bytes = "1.10.0"
 6629   8852   
crc-fast = "1.3.0"
 6630   8853   
hex = "0.4.3"
 6631   8854   
http = "0.2.9"
 6632   8855   
http-body = "0.4.5"
 6633   8856   
md-5 = "0.10"
 6634   8857   
pin-project-lite = "0.2.14"
 6635   8858   
sha1 = "0.10"
 6636   8859   
sha2 = "0.10"
 6637   8860   
tracing = "0.1.40"
 6638   8861   
 6639   8862   
[dependencies.aws-smithy-http]
 6640   8863   
path = "../aws-smithy-http"
 6641         -
version = "0.62.2"
        8864  +
version = "0.62.3"
 6642   8865   
 6643   8866   
[dependencies.aws-smithy-types]
 6644   8867   
path = "../aws-smithy-types"
 6645   8868   
version = "1.3.2"
 6646   8869   
 6647   8870   
[dev-dependencies]
 6648   8871   
bytes-utils = "0.1.2"
 6649   8872   
pretty_assertions = "1.3"
 6650   8873   
tracing-test = "0.2.1"
 6651   8874   
 6652   8875   
[dev-dependencies.tokio]
 6653   8876   
version = "1.23.1"
 6654   8877   
features = ["macros", "rt"]
 6655   8878   
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
 6656   8879   
index 970c99e..d3c7a49 100644
 6657         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
        8880  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
 6658   8881   
@@ -1,34 +1,34 @@
 6659   8882   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6660   8883   
[package]
 6661   8884   
name = "aws-smithy-http"
 6662         -
version = "0.62.2"
        8885  +
version = "0.62.3"
 6663   8886   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 6664   8887   
description = "Smithy HTTP logic for smithy-rs."
 6665   8888   
edition = "2021"
 6666   8889   
license = "Apache-2.0"
 6667   8890   
repository = "https://github.com/smithy-lang/smithy-rs"
 6668   8891   
[package.metadata.docs.rs]
 6669   8892   
all-features = true
 6670   8893   
targets = ["x86_64-unknown-linux-gnu"]
 6671   8894   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6672   8895   
rustdoc-args = ["--cfg", "docsrs"]
 6673   8896   
 6674   8897   
[features]
 6675   8898   
event-stream = ["aws-smithy-eventstream"]
 6676   8899   
rt-tokio = ["aws-smithy-types/rt-tokio"]
 6677   8900   
 6678   8901   
[dependencies]
 6679   8902   
bytes = "1.10.0"
 6680   8903   
bytes-utils = "0.1"
 6681   8904   
percent-encoding = "2.3.1"
 6682   8905   
pin-project-lite = "0.2.14"
 6683   8906   
pin-utils = "0.1.0"
 6684   8907   
tracing = "0.1.40"
 6685   8908   
futures-core = "0.3.31"
 6686   8909   
 6687   8910   
[dependencies.aws-smithy-eventstream]
 6688   8911   
path = "../aws-smithy-eventstream"
 6689   8912   
optional = true
 6690   8913   
version = "0.60.10"
 6691   8914   
 6692   8915   
[dependencies.aws-smithy-runtime-api]
 6693   8916   
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
 6694   8917   
index 508f7a2..361545e 100644
 6695         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
        8918  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
 6696   8919   
@@ -1,27 +1,27 @@
 6697   8920   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6698   8921   
[[bin]]
 6699   8922   
name = "read_many_from_str"
 6700   8923   
path = "fuzz_targets/read_many_from_str.rs"
 6701   8924   
test = false
 6702   8925   
doc = false
 6703   8926   
 6704   8927   
[package]
 6705   8928   
name = "aws-smithy-http-fuzz"
 6706   8929   
version = "0.0.0"
 6707   8930   
authors = ["Automatically generated"]
 6708   8931   
publish = false
 6709   8932   
edition = "2021"
 6710   8933   
 6711   8934   
[package.metadata]
 6712   8935   
cargo-fuzz = true
 6713   8936   
 6714   8937   
[dependencies]
 6715   8938   
libfuzzer-sys = "=0.4.7"
 6716   8939   
http = "0.2.3"
 6717   8940   
 6718   8941   
[dependencies.aws-smithy-http]
 6719   8942   
path = ".."
 6720         -
version = "0.62.2"
        8943  +
version = "0.62.3"
 6721   8944   
 6722   8945   
[workspace]
 6723   8946   
members = ["."]
 6724   8947   
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
 6725   8948   
index fef41d0..7694da6 100644
 6726         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
        8949  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
 6727   8950   
@@ -25,68 +25,73 @@ impl QueryWriter {
 6728   8951   
    pub fn new(uri: &Uri) -> Self {
 6729   8952   
        let new_path_and_query = uri
 6730   8953   
            .path_and_query()
 6731   8954   
            .map(|pq| pq.to_string())
 6732   8955   
            .unwrap_or_default();
 6733   8956   
        let prefix = if uri.query().is_none() {
 6734   8957   
            Some('?')
 6735   8958   
        } else if !uri.query().unwrap_or_default().is_empty() {
 6736   8959   
            Some('&')
 6737   8960   
        } else {
 6738   8961   
            None
 6739   8962   
        };
 6740   8963   
        QueryWriter {
 6741   8964   
            base_uri: uri.clone(),
 6742   8965   
            new_path_and_query,
 6743   8966   
            prefix,
 6744   8967   
        }
 6745   8968   
    }
 6746   8969   
 6747   8970   
    /// Clears all query parameters.
 6748   8971   
    pub fn clear_params(&mut self) {
 6749   8972   
        if let Some(index) = self.new_path_and_query.find('?') {
 6750   8973   
            self.new_path_and_query.truncate(index);
 6751   8974   
            self.prefix = Some('?');
 6752   8975   
        }
 6753   8976   
    }
 6754   8977   
 6755   8978   
    /// Inserts a new query parameter. The key and value are percent encoded
 6756   8979   
    /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
 6757   8980   
    pub fn insert(&mut self, k: &str, v: &str) {
        8981  +
        self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
        8982  +
    }
        8983  +
        8984  +
    /// Inserts a new already encoded query parameter. The key and value will be inserted
        8985  +
    /// as is.
        8986  +
    pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
 6758   8987   
        if let Some(prefix) = self.prefix {
 6759   8988   
            self.new_path_and_query.push(prefix);
 6760   8989   
        }
 6761   8990   
        self.prefix = Some('&');
 6762         -
        self.new_path_and_query.push_str(&percent_encode_query(k));
        8991  +
        self.new_path_and_query.push_str(encoded_k);
 6763   8992   
        self.new_path_and_query.push('=');
 6764         -
 6765         -
        self.new_path_and_query.push_str(&percent_encode_query(v));
        8993  +
        self.new_path_and_query.push_str(encoded_v)
 6766   8994   
    }
 6767   8995   
 6768   8996   
    /// Returns just the built query string.
 6769   8997   
    pub fn build_query(self) -> String {
 6770   8998   
        self.build_uri().query().unwrap_or_default().to_string()
 6771   8999   
    }
 6772   9000   
 6773   9001   
    /// Returns a full [`Uri`] with the query string updated.
 6774   9002   
    pub fn build_uri(self) -> Uri {
 6775   9003   
        let mut parts = self.base_uri.into_parts();
 6776   9004   
        parts.path_and_query = Some(
 6777   9005   
            self.new_path_and_query
 6778   9006   
                .parse()
 6779   9007   
                .expect("adding query should not invalidate URI"),
 6780   9008   
        );
 6781   9009   
        Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
 6782   9010   
    }
 6783   9011   
}
 6784   9012   
 6785   9013   
#[cfg(test)]
 6786   9014   
mod test {
 6787   9015   
    use super::QueryWriter;
 6788   9016   
    use http_02x::Uri;
 6789   9017   
 6790   9018   
    #[test]
 6791   9019   
    fn empty_uri() {
 6792   9020   
        let uri = Uri::from_static("http://www.example.com");
 6793   9021   
        let mut query_writer = QueryWriter::new(&uri);
 6794   9022   
        query_writer.insert("key", "val%ue");
 6795   9023   
        query_writer.insert("another", "value");
 6796   9024   
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
 6797   9025   
index f108978..df7a9fe 100644
 6798         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
        9026  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
 6799   9027   
@@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
 6800   9028   
 6801   9029   
[package.metadata.smithy-rs-release-tooling]
 6802   9030   
stable = true
 6803   9031   
[package.metadata.cargo-udeps.ignore]
 6804   9032   
normal = ["aws-smithy-http"]
 6805   9033   
 6806   9034   
[features]
 6807   9035   
client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
 6808   9036   
http-auth = ["aws-smithy-runtime-api/http-auth"]
 6809   9037   
connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
 6810   9038   
tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
 6811   9039   
default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
 6812   9040   
rt-tokio = ["tokio/rt"]
 6813   9041   
test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
 6814   9042   
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"]
 6815   9043   
wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
 6816   9044   
 6817   9045   
[dependencies]
 6818   9046   
bytes = "1.10.0"
 6819   9047   
fastrand = "2.3.0"
 6820   9048   
pin-project-lite = "0.2.14"
 6821   9049   
pin-utils = "0.1.0"
 6822   9050   
tracing = "0.1.40"
 6823   9051   
 6824   9052   
[dependencies.aws-smithy-async]
 6825   9053   
path = "../aws-smithy-async"
 6826   9054   
version = "1.2.5"
 6827   9055   
 6828   9056   
[dependencies.aws-smithy-http]
 6829   9057   
path = "../aws-smithy-http"
 6830         -
version = "0.62.2"
        9058  +
version = "0.62.3"
 6831   9059   
 6832   9060   
[dependencies.aws-smithy-observability]
 6833   9061   
path = "../aws-smithy-observability"
 6834   9062   
version = "0.1.3"
 6835   9063   
 6836   9064   
[dependencies.aws-smithy-runtime-api]
 6837   9065   
path = "../aws-smithy-runtime-api"
 6838   9066   
version = "1.8.5"
 6839   9067   
 6840   9068   
[dependencies.aws-smithy-types]
 6841   9069   
path = "../aws-smithy-types"
 6842   9070   
features = ["http-body-0-4-x"]
 6843   9071   
version = "1.3.2"
 6844   9072   
 6845   9073   
[dependencies.aws-smithy-http-client]
 6846   9074   
path = "../aws-smithy-http-client"
 6847   9075   
optional = true
 6848   9076   
version = "1.0.6"
 6849   9077   
 6850   9078   
[dependencies.http-02x]
 6851   9079   
package = "http"
 6852   9080   
version = "0.2.9"
 6853   9081   
 6854   9082   
[dependencies.http-1x]
 6855   9083   
package = "http"
 6856   9084   
version = "1"
 6857   9085   
 6858   9086   
[dependencies.http-body-04x]
 6859   9087   
package = "http-body"
 6860   9088   
version = "0.4.5"
 6861   9089   
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
 6862   9090   
index 4e050c6..f58eb1c 100644
 6863         -
-- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
        9091  +
++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
 6864   9092   
@@ -1,33 +1,33 @@
 6865   9093   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 6866   9094   
[package]
 6867   9095   
name = "aws-smithy-wasm"
 6868   9096   
version = "0.1.4"
 6869   9097   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
 6870   9098   
description = "Smithy WebAssembly configuration for smithy-rs."
 6871   9099   
edition = "2021"
 6872   9100   
license = "Apache-2.0"
 6873   9101   
repository = "https://github.com/awslabs/smithy-rs"
 6874   9102   
[package.metadata.docs.rs]
 6875   9103   
all-features = true
 6876   9104   
targets = ["x86_64-unknown-linux-gnu"]
 6877   9105   
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
 6878   9106   
rustdoc-args = ["--cfg", "docsrs"]
 6879   9107   
 6880   9108   
[dependencies]
 6881   9109   
bytes = "1.10.0"
 6882   9110   
http = "1.0.0"
 6883   9111   
tracing = "0.1.40"
 6884   9112   
wasi = "0.12.1"
 6885   9113   
 6886   9114   
[dependencies.aws-smithy-runtime-api]
 6887   9115   
path = "../aws-smithy-runtime-api"
 6888   9116   
features = ["http-1x"]
 6889   9117   
version = "1.8.5"
 6890   9118   
 6891   9119   
[dependencies.aws-smithy-http]
 6892   9120   
path = "../aws-smithy-http"
 6893         -
version = "0.62.2"
        9121  +
version = "0.62.3"
 6894   9122   
 6895   9123   
[dependencies.aws-smithy-types]
 6896   9124   
path = "../aws-smithy-types"
 6897   9125   
version = "1.3.2"
 6898   9126   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6899   9127   
index a880648..139e808 100644
 6900         -
-- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
        9128  +
++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
 6901   9129   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
 6902   9130   
edition = "2021"
 6903   9131   
license = "Apache-2.0"
 6904   9132   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6905   9133   
rust-version = "1.86.0"
 6906   9134   
readme = "README.md"
 6907   9135   
[package.metadata.smithy]
 6908   9136   
codegen-version = "ci"
 6909   9137   
[package.metadata.docs.rs]
 6910   9138   
all-features = true
 6911   9139   
targets = ["x86_64-unknown-linux-gnu"]
 6912   9140   
[dependencies.aws-credential-types]
 6913   9141   
path = "../aws-credential-types"
 6914   9142   
version = "1.2.4"
 6915   9143   
 6916   9144   
[dependencies.aws-runtime]
 6917   9145   
path = "../aws-runtime"
 6918   9146   
features = ["event-stream"]
 6919   9147   
version = "1.5.9"
 6920   9148   
 6921   9149   
[dependencies.aws-smithy-async]
 6922   9150   
path = "../aws-smithy-async"
 6923   9151   
version = "1.2.5"
 6924   9152   
 6925   9153   
[dependencies.aws-smithy-eventstream]
 6926   9154   
path = "../aws-smithy-eventstream"
 6927   9155   
version = "0.60.10"
 6928   9156   
 6929   9157   
[dependencies.aws-smithy-http]
 6930   9158   
path = "../aws-smithy-http"
 6931   9159   
features = ["event-stream"]
 6932         -
version = "0.62.2"
        9160  +
version = "0.62.3"
 6933   9161   
 6934   9162   
[dependencies.aws-smithy-json]
 6935   9163   
path = "../aws-smithy-json"
 6936   9164   
version = "0.61.4"
 6937   9165   
 6938   9166   
[dependencies.aws-smithy-runtime]
 6939   9167   
path = "../aws-smithy-runtime"
 6940   9168   
features = ["client"]
 6941   9169   
version = "1.8.5"
 6942   9170   
 6943   9171   
[dependencies.aws-smithy-runtime-api]
 6944   9172   
path = "../aws-smithy-runtime-api"
 6945   9173   
features = ["client", "http-02x"]
 6946   9174   
version = "1.8.5"
 6947   9175   
 6948   9176   
[dependencies.aws-smithy-types]
 6949   9177   
path = "../aws-smithy-types"
 6950   9178   
version = "1.3.2"
 6951   9179   
 6952   9180   
[dependencies.aws-types]
 6953   9181   
path = "../aws-types"
 6954   9182   
version = "1.3.8"
 6955   9183   
 6956   9184   
[dependencies.bytes]
 6957   9185   
version = "1.4.0"
 6958   9186   
 6959   9187   
[dependencies.fastrand]
 6960   9188   
version = "2.0.0"
 6961   9189   
 6962   9190   
[dependencies.http]
 6963   9191   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6964   9192   
index 415ecc9..667d12b 100644
 6965         -
-- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
        9193  +
++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
 6966   9194   
@@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
 6967   9195   
edition = "2021"
 6968   9196   
license = "Apache-2.0"
 6969   9197   
repository = "https://github.com/awslabs/aws-sdk-rust"
 6970   9198   
rust-version = "1.86.0"
 6971   9199   
readme = "README.md"
 6972   9200   
[package.metadata.smithy]
 6973   9201   
codegen-version = "ci"
 6974   9202   
[package.metadata.docs.rs]
 6975   9203   
all-features = true
 6976   9204   
targets = ["x86_64-unknown-linux-gnu"]
 6977   9205   
[dependencies.aws-credential-types]
 6978   9206   
path = "../aws-credential-types"
 6979   9207   
version = "1.2.4"
 6980   9208   
 6981   9209   
[dependencies.aws-runtime]
 6982   9210   
path = "../aws-runtime"
 6983   9211   
features = ["event-stream"]
 6984   9212   
version = "1.5.9"
 6985   9213   
 6986   9214   
[dependencies.aws-smithy-async]
 6987   9215   
path = "../aws-smithy-async"
 6988   9216   
version = "1.2.5"
 6989   9217   
 6990   9218   
[dependencies.aws-smithy-eventstream]
 6991   9219   
path = "../aws-smithy-eventstream"
 6992   9220   
version = "0.60.10"
 6993   9221   
 6994   9222   
[dependencies.aws-smithy-http]
 6995   9223   
path = "../aws-smithy-http"
 6996   9224   
features = ["event-stream"]
 6997         -
version = "0.62.2"
        9225  +
version = "0.62.3"
 6998   9226   
 6999   9227   
[dependencies.aws-smithy-json]
 7000   9228   
path = "../aws-smithy-json"
 7001   9229   
version = "0.61.4"
 7002   9230   
 7003   9231   
[dependencies.aws-smithy-runtime]
 7004   9232   
path = "../aws-smithy-runtime"
 7005   9233   
features = ["client"]
 7006   9234   
version = "1.8.5"
 7007   9235   
 7008   9236   
[dependencies.aws-smithy-runtime-api]
 7009   9237   
path = "../aws-smithy-runtime-api"
 7010   9238   
features = ["client", "http-02x"]
 7011   9239   
version = "1.8.5"
 7012   9240   
 7013   9241   
[dependencies.aws-smithy-types]
 7014   9242   
path = "../aws-smithy-types"
 7015   9243   
version = "1.3.2"
 7016   9244   
 7017   9245   
[dependencies.aws-types]
 7018   9246   
path = "../aws-types"
 7019   9247   
version = "1.3.8"
 7020   9248   
 7021   9249   
[dependencies.bytes]
 7022   9250   
version = "1.4.0"
 7023   9251   
 7024   9252   
[dependencies.fastrand]
 7025   9253   
version = "2.0.0"
 7026   9254   
 7027   9255   
[dependencies.http]
 7028   9256   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7029   9257   
index 8871cab..ed88de6 100644
 7030         -
-- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
        9258  +
++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
 7031   9259   
@@ -1,61 +1,61 @@
 7032   9260   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7033   9261   
[package]
 7034   9262   
name = "aws-sdk-codecatalyst"
 7035   9263   
version = "0.0.0-local"
 7036   9264   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7037   9265   
description = "AWS SDK for Amazon CodeCatalyst"
 7038   9266   
edition = "2021"
 7039   9267   
license = "Apache-2.0"
 7040   9268   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7041   9269   
rust-version = "1.86.0"
 7042   9270   
readme = "README.md"
 7043   9271   
[package.metadata.smithy]
 7044   9272   
codegen-version = "ci"
 7045   9273   
[package.metadata.docs.rs]
 7046   9274   
all-features = true
 7047   9275   
targets = ["x86_64-unknown-linux-gnu"]
 7048   9276   
[dependencies.aws-credential-types]
 7049   9277   
path = "../aws-credential-types"
 7050   9278   
version = "1.2.4"
 7051   9279   
 7052   9280   
[dependencies.aws-runtime]
 7053   9281   
path = "../aws-runtime"
 7054   9282   
version = "1.5.9"
 7055   9283   
 7056   9284   
[dependencies.aws-smithy-async]
 7057   9285   
path = "../aws-smithy-async"
 7058   9286   
version = "1.2.5"
 7059   9287   
 7060   9288   
[dependencies.aws-smithy-http]
 7061   9289   
path = "../aws-smithy-http"
 7062         -
version = "0.62.2"
        9290  +
version = "0.62.3"
 7063   9291   
 7064   9292   
[dependencies.aws-smithy-json]
 7065   9293   
path = "../aws-smithy-json"
 7066   9294   
version = "0.61.4"
 7067   9295   
 7068   9296   
[dependencies.aws-smithy-runtime]
 7069   9297   
path = "../aws-smithy-runtime"
 7070   9298   
features = ["client", "http-auth"]
 7071   9299   
version = "1.8.5"
 7072   9300   
 7073   9301   
[dependencies.aws-smithy-runtime-api]
 7074   9302   
path = "../aws-smithy-runtime-api"
 7075   9303   
features = ["client", "http-02x", "http-auth"]
 7076   9304   
version = "1.8.5"
 7077   9305   
 7078   9306   
[dependencies.aws-smithy-types]
 7079   9307   
path = "../aws-smithy-types"
 7080   9308   
version = "1.3.2"
 7081   9309   
 7082   9310   
[dependencies.aws-types]
 7083   9311   
path = "../aws-types"
 7084   9312   
version = "1.3.8"
 7085   9313   
 7086   9314   
[dependencies.bytes]
 7087   9315   
version = "1.4.0"
 7088   9316   
 7089   9317   
[dependencies.fastrand]
 7090   9318   
version = "2.0.0"
 7091   9319   
 7092   9320   
[dependencies.http]
 7093   9321   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7094   9322   
index 89573ff..05238af 100644
 7095         -
-- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
        9323  +
++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
 7096   9324   
@@ -1,61 +1,61 @@
 7097   9325   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7098   9326   
[package]
 7099   9327   
name = "aws-sdk-config"
 7100   9328   
version = "0.0.0-local"
 7101   9329   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7102   9330   
description = "AWS SDK for AWS Config"
 7103   9331   
edition = "2021"
 7104   9332   
license = "Apache-2.0"
 7105   9333   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7106   9334   
rust-version = "1.86.0"
 7107   9335   
readme = "README.md"
 7108   9336   
[package.metadata.smithy]
 7109   9337   
codegen-version = "ci"
 7110   9338   
[package.metadata.docs.rs]
 7111   9339   
all-features = true
 7112   9340   
targets = ["x86_64-unknown-linux-gnu"]
 7113   9341   
[dependencies.aws-credential-types]
 7114   9342   
path = "../aws-credential-types"
 7115   9343   
version = "1.2.4"
 7116   9344   
 7117   9345   
[dependencies.aws-runtime]
 7118   9346   
path = "../aws-runtime"
 7119   9347   
version = "1.5.9"
 7120   9348   
 7121   9349   
[dependencies.aws-smithy-async]
 7122   9350   
path = "../aws-smithy-async"
 7123   9351   
version = "1.2.5"
 7124   9352   
 7125   9353   
[dependencies.aws-smithy-http]
 7126   9354   
path = "../aws-smithy-http"
 7127         -
version = "0.62.2"
        9355  +
version = "0.62.3"
 7128   9356   
 7129   9357   
[dependencies.aws-smithy-json]
 7130   9358   
path = "../aws-smithy-json"
 7131   9359   
version = "0.61.4"
 7132   9360   
 7133   9361   
[dependencies.aws-smithy-runtime]
 7134   9362   
path = "../aws-smithy-runtime"
 7135   9363   
features = ["client"]
 7136   9364   
version = "1.8.5"
 7137   9365   
 7138   9366   
[dependencies.aws-smithy-runtime-api]
 7139   9367   
path = "../aws-smithy-runtime-api"
 7140   9368   
features = ["client", "http-02x"]
 7141   9369   
version = "1.8.5"
 7142   9370   
 7143   9371   
[dependencies.aws-smithy-types]
 7144   9372   
path = "../aws-smithy-types"
 7145   9373   
version = "1.3.2"
 7146   9374   
 7147   9375   
[dependencies.aws-types]
 7148   9376   
path = "../aws-types"
 7149   9377   
version = "1.3.8"
 7150   9378   
 7151   9379   
[dependencies.bytes]
 7152   9380   
version = "1.4.0"
 7153   9381   
 7154   9382   
[dependencies.fastrand]
 7155   9383   
version = "2.0.0"
 7156   9384   
 7157   9385   
[dependencies.http]
 7158   9386   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7159   9387   
index d397c58..2c1062b 100644
 7160         -
-- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
        9388  +
++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
 7161   9389   
@@ -1,61 +1,61 @@
 7162   9390   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7163   9391   
[package]
 7164   9392   
name = "aws-sdk-dynamodb"
 7165   9393   
version = "0.0.0-local"
 7166   9394   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7167   9395   
description = "AWS SDK for Amazon DynamoDB"
 7168   9396   
edition = "2021"
 7169   9397   
license = "Apache-2.0"
 7170   9398   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7171   9399   
rust-version = "1.86.0"
 7172   9400   
readme = "README.md"
 7173   9401   
[package.metadata.smithy]
 7174   9402   
codegen-version = "ci"
 7175   9403   
[package.metadata.docs.rs]
 7176   9404   
all-features = true
 7177   9405   
targets = ["x86_64-unknown-linux-gnu"]
 7178   9406   
[dependencies.aws-credential-types]
 7179   9407   
path = "../aws-credential-types"
 7180   9408   
version = "1.2.4"
 7181   9409   
 7182   9410   
[dependencies.aws-runtime]
 7183   9411   
path = "../aws-runtime"
 7184   9412   
version = "1.5.9"
 7185   9413   
 7186   9414   
[dependencies.aws-smithy-async]
 7187   9415   
path = "../aws-smithy-async"
 7188   9416   
version = "1.2.5"
 7189   9417   
 7190   9418   
[dependencies.aws-smithy-http]
 7191   9419   
path = "../aws-smithy-http"
 7192         -
version = "0.62.2"
        9420  +
version = "0.62.3"
 7193   9421   
 7194   9422   
[dependencies.aws-smithy-json]
 7195   9423   
path = "../aws-smithy-json"
 7196   9424   
version = "0.61.4"
 7197   9425   
 7198   9426   
[dependencies.aws-smithy-runtime]
 7199   9427   
path = "../aws-smithy-runtime"
 7200   9428   
features = ["client"]
 7201   9429   
version = "1.8.5"
 7202   9430   
 7203   9431   
[dependencies.aws-smithy-runtime-api]
 7204   9432   
path = "../aws-smithy-runtime-api"
 7205   9433   
features = ["client", "http-02x"]
 7206   9434   
version = "1.8.5"
 7207   9435   
 7208   9436   
[dependencies.aws-smithy-types]
 7209   9437   
path = "../aws-smithy-types"
 7210   9438   
version = "1.3.2"
 7211   9439   
 7212   9440   
[dependencies.aws-types]
 7213   9441   
path = "../aws-types"
 7214   9442   
version = "1.3.8"
 7215   9443   
 7216   9444   
[dependencies.bytes]
 7217   9445   
version = "1.4.0"
 7218   9446   
 7219   9447   
[dependencies.fastrand]
 7220   9448   
version = "2.0.0"
 7221   9449   
 7222   9450   
[dependencies.http]
 7223   9451   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7224   9452   
index c0ba315..46168af 100644
 7225         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
        9453  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
 7226   9454   
@@ -1,61 +1,61 @@
 7227   9455   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7228   9456   
[package]
 7229   9457   
name = "aws-sdk-ec2"
 7230   9458   
version = "0.0.0-local"
 7231   9459   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7232   9460   
description = "AWS SDK for Amazon Elastic Compute Cloud"
 7233   9461   
edition = "2021"
 7234   9462   
license = "Apache-2.0"
 7235   9463   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7236   9464   
rust-version = "1.86.0"
 7237   9465   
readme = "README.md"
 7238   9466   
[package.metadata.smithy]
 7239   9467   
codegen-version = "ci"
 7240   9468   
[package.metadata.docs.rs]
 7241   9469   
all-features = true
 7242   9470   
targets = ["x86_64-unknown-linux-gnu"]
 7243   9471   
[dependencies.aws-credential-types]
 7244   9472   
path = "../aws-credential-types"
 7245   9473   
version = "1.2.4"
 7246   9474   
 7247   9475   
[dependencies.aws-runtime]
 7248   9476   
path = "../aws-runtime"
 7249   9477   
version = "1.5.9"
 7250   9478   
 7251   9479   
[dependencies.aws-smithy-async]
 7252   9480   
path = "../aws-smithy-async"
 7253   9481   
version = "1.2.5"
 7254   9482   
 7255   9483   
[dependencies.aws-smithy-http]
 7256   9484   
path = "../aws-smithy-http"
 7257         -
version = "0.62.2"
        9485  +
version = "0.62.3"
 7258   9486   
 7259   9487   
[dependencies.aws-smithy-json]
 7260   9488   
path = "../aws-smithy-json"
 7261   9489   
version = "0.61.4"
 7262   9490   
 7263   9491   
[dependencies.aws-smithy-query]
 7264   9492   
path = "../aws-smithy-query"
 7265   9493   
version = "0.60.7"
 7266   9494   
 7267   9495   
[dependencies.aws-smithy-runtime]
 7268   9496   
path = "../aws-smithy-runtime"
 7269   9497   
features = ["client"]
 7270   9498   
version = "1.8.5"
 7271   9499   
 7272   9500   
[dependencies.aws-smithy-runtime-api]
 7273   9501   
path = "../aws-smithy-runtime-api"
 7274   9502   
features = ["client", "http-02x"]
 7275   9503   
version = "1.8.5"
 7276   9504   
 7277   9505   
[dependencies.aws-smithy-types]
 7278   9506   
path = "../aws-smithy-types"
 7279   9507   
version = "1.3.2"
 7280   9508   
 7281   9509   
[dependencies.aws-smithy-xml]
 7282   9510   
path = "../aws-smithy-xml"
 7283   9511   
version = "0.60.10"
 7284   9512   
 7285   9513   
[dependencies.aws-types]
 7286   9514   
path = "../aws-types"
 7287   9515   
version = "1.3.8"
 7288   9516   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7289   9517   
index 4474d17..095d40e 100644
 7290         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
        9518  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
 7291   9519   
@@ -1,61 +1,61 @@
 7292   9520   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7293   9521   
[package]
 7294   9522   
name = "aws-sdk-ecs"
 7295   9523   
version = "0.0.0-local"
 7296   9524   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7297   9525   
description = "AWS SDK for Amazon EC2 Container Service"
 7298   9526   
edition = "2021"
 7299   9527   
license = "Apache-2.0"
 7300   9528   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7301   9529   
rust-version = "1.86.0"
 7302   9530   
readme = "README.md"
 7303   9531   
[package.metadata.smithy]
 7304   9532   
codegen-version = "ci"
 7305   9533   
[package.metadata.docs.rs]
 7306   9534   
all-features = true
 7307   9535   
targets = ["x86_64-unknown-linux-gnu"]
 7308   9536   
[dependencies.aws-credential-types]
 7309   9537   
path = "../aws-credential-types"
 7310   9538   
version = "1.2.4"
 7311   9539   
 7312   9540   
[dependencies.aws-runtime]
 7313   9541   
path = "../aws-runtime"
 7314   9542   
version = "1.5.9"
 7315   9543   
 7316   9544   
[dependencies.aws-smithy-async]
 7317   9545   
path = "../aws-smithy-async"
 7318   9546   
version = "1.2.5"
 7319   9547   
 7320   9548   
[dependencies.aws-smithy-http]
 7321   9549   
path = "../aws-smithy-http"
 7322         -
version = "0.62.2"
        9550  +
version = "0.62.3"
 7323   9551   
 7324   9552   
[dependencies.aws-smithy-json]
 7325   9553   
path = "../aws-smithy-json"
 7326   9554   
version = "0.61.4"
 7327   9555   
 7328   9556   
[dependencies.aws-smithy-runtime]
 7329   9557   
path = "../aws-smithy-runtime"
 7330   9558   
features = ["client"]
 7331   9559   
version = "1.8.5"
 7332   9560   
 7333   9561   
[dependencies.aws-smithy-runtime-api]
 7334   9562   
path = "../aws-smithy-runtime-api"
 7335   9563   
features = ["client", "http-02x"]
 7336   9564   
version = "1.8.5"
 7337   9565   
 7338   9566   
[dependencies.aws-smithy-types]
 7339   9567   
path = "../aws-smithy-types"
 7340   9568   
version = "1.3.2"
 7341   9569   
 7342   9570   
[dependencies.aws-types]
 7343   9571   
path = "../aws-types"
 7344   9572   
version = "1.3.8"
 7345   9573   
 7346   9574   
[dependencies.bytes]
 7347   9575   
version = "1.4.0"
 7348   9576   
 7349   9577   
[dependencies.fastrand]
 7350   9578   
version = "2.0.0"
 7351   9579   
 7352   9580   
[dependencies.http]
 7353   9581   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7354   9582   
index 15b1d77..16d7d89 100644
 7355         -
-- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
        9583  +
++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
 7356   9584   
@@ -1,65 +1,65 @@
 7357   9585   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7358   9586   
[package]
 7359   9587   
name = "aws-sdk-glacier"
 7360   9588   
version = "0.0.0-local"
 7361   9589   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7362   9590   
description = "AWS SDK for Amazon Glacier"
 7363   9591   
edition = "2021"
 7364   9592   
license = "Apache-2.0"
 7365   9593   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7366   9594   
rust-version = "1.86.0"
 7367   9595   
readme = "README.md"
 7368   9596   
[package.metadata.smithy]
 7369   9597   
codegen-version = "ci"
 7370   9598   
[package.metadata.docs.rs]
 7371   9599   
all-features = true
 7372   9600   
targets = ["x86_64-unknown-linux-gnu"]
 7373   9601   
[dependencies.aws-credential-types]
 7374   9602   
path = "../aws-credential-types"
 7375   9603   
version = "1.2.4"
 7376   9604   
 7377   9605   
[dependencies.aws-runtime]
 7378   9606   
path = "../aws-runtime"
 7379   9607   
version = "1.5.9"
 7380   9608   
 7381   9609   
[dependencies.aws-sigv4]
 7382   9610   
path = "../aws-sigv4"
 7383         -
version = "1.3.3"
        9611  +
version = "1.3.4"
 7384   9612   
 7385   9613   
[dependencies.aws-smithy-async]
 7386   9614   
path = "../aws-smithy-async"
 7387   9615   
version = "1.2.5"
 7388   9616   
 7389   9617   
[dependencies.aws-smithy-http]
 7390   9618   
path = "../aws-smithy-http"
 7391         -
version = "0.62.2"
        9619  +
version = "0.62.3"
 7392   9620   
 7393   9621   
[dependencies.aws-smithy-json]
 7394   9622   
path = "../aws-smithy-json"
 7395   9623   
version = "0.61.4"
 7396   9624   
 7397   9625   
[dependencies.aws-smithy-runtime]
 7398   9626   
path = "../aws-smithy-runtime"
 7399   9627   
features = ["client"]
 7400   9628   
version = "1.8.5"
 7401   9629   
 7402   9630   
[dependencies.aws-smithy-runtime-api]
 7403   9631   
path = "../aws-smithy-runtime-api"
 7404   9632   
features = ["client", "http-02x"]
 7405   9633   
version = "1.8.5"
 7406   9634   
 7407   9635   
[dependencies.aws-smithy-types]
 7408   9636   
path = "../aws-smithy-types"
 7409   9637   
version = "1.3.2"
 7410   9638   
 7411   9639   
[dependencies.aws-types]
 7412   9640   
path = "../aws-types"
 7413   9641   
version = "1.3.8"
 7414   9642   
 7415   9643   
[dependencies.bytes]
 7416   9644   
version = "1.4.0"
 7417   9645   
 7418   9646   
[dependencies.fastrand]
 7419   9647   
version = "2.0.0"
 7420   9648   
 7421   9649   
[dependencies.hex]
 7422   9650   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7423   9651   
index d718a3a..65e6f24 100644
 7424         -
-- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
        9652  +
++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
 7425   9653   
@@ -1,61 +1,61 @@
 7426   9654   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7427   9655   
[package]
 7428   9656   
name = "aws-sdk-iam"
 7429   9657   
version = "0.0.0-local"
 7430   9658   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7431   9659   
description = "AWS SDK for AWS Identity and Access Management"
 7432   9660   
edition = "2021"
 7433   9661   
license = "Apache-2.0"
 7434   9662   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7435   9663   
rust-version = "1.86.0"
 7436   9664   
readme = "README.md"
 7437   9665   
[package.metadata.smithy]
 7438   9666   
codegen-version = "ci"
 7439   9667   
[package.metadata.docs.rs]
 7440   9668   
all-features = true
 7441   9669   
targets = ["x86_64-unknown-linux-gnu"]
 7442   9670   
[dependencies.aws-credential-types]
 7443   9671   
path = "../aws-credential-types"
 7444   9672   
version = "1.2.4"
 7445   9673   
 7446   9674   
[dependencies.aws-runtime]
 7447   9675   
path = "../aws-runtime"
 7448   9676   
version = "1.5.9"
 7449   9677   
 7450   9678   
[dependencies.aws-smithy-async]
 7451   9679   
path = "../aws-smithy-async"
 7452   9680   
version = "1.2.5"
 7453   9681   
 7454   9682   
[dependencies.aws-smithy-http]
 7455   9683   
path = "../aws-smithy-http"
 7456         -
version = "0.62.2"
        9684  +
version = "0.62.3"
 7457   9685   
 7458   9686   
[dependencies.aws-smithy-json]
 7459   9687   
path = "../aws-smithy-json"
 7460   9688   
version = "0.61.4"
 7461   9689   
 7462   9690   
[dependencies.aws-smithy-query]
 7463   9691   
path = "../aws-smithy-query"
 7464   9692   
version = "0.60.7"
 7465   9693   
 7466   9694   
[dependencies.aws-smithy-runtime]
 7467   9695   
path = "../aws-smithy-runtime"
 7468   9696   
features = ["client"]
 7469   9697   
version = "1.8.5"
 7470   9698   
 7471   9699   
[dependencies.aws-smithy-runtime-api]
 7472   9700   
path = "../aws-smithy-runtime-api"
 7473   9701   
features = ["client", "http-02x"]
 7474   9702   
version = "1.8.5"
 7475   9703   
 7476   9704   
[dependencies.aws-smithy-types]
 7477   9705   
path = "../aws-smithy-types"
 7478   9706   
version = "1.3.2"
 7479   9707   
 7480   9708   
[dependencies.aws-smithy-xml]
 7481   9709   
path = "../aws-smithy-xml"
 7482   9710   
version = "0.60.10"
 7483   9711   
 7484   9712   
[dependencies.aws-types]
 7485   9713   
path = "../aws-types"
 7486   9714   
version = "1.3.8"
 7487   9715   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7488   9716   
index 0ed4302..3d828a5 100644
 7489         -
-- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
        9717  +
++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
 7490   9718   
@@ -1,61 +1,61 @@
 7491   9719   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7492   9720   
[package]
 7493   9721   
name = "aws-sdk-kms"
 7494   9722   
version = "0.0.0-local"
 7495   9723   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7496   9724   
description = "AWS SDK for AWS Key Management Service"
 7497   9725   
edition = "2021"
 7498   9726   
license = "Apache-2.0"
 7499   9727   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7500   9728   
rust-version = "1.86.0"
 7501   9729   
readme = "README.md"
 7502   9730   
[package.metadata.smithy]
 7503   9731   
codegen-version = "ci"
 7504   9732   
[package.metadata.docs.rs]
 7505   9733   
all-features = true
 7506   9734   
targets = ["x86_64-unknown-linux-gnu"]
 7507   9735   
[dependencies.aws-credential-types]
 7508   9736   
path = "../aws-credential-types"
 7509   9737   
version = "1.2.4"
 7510   9738   
 7511   9739   
[dependencies.aws-runtime]
 7512   9740   
path = "../aws-runtime"
 7513   9741   
version = "1.5.9"
 7514   9742   
 7515   9743   
[dependencies.aws-smithy-async]
 7516   9744   
path = "../aws-smithy-async"
 7517   9745   
version = "1.2.5"
 7518   9746   
 7519   9747   
[dependencies.aws-smithy-http]
 7520   9748   
path = "../aws-smithy-http"
 7521         -
version = "0.62.2"
        9749  +
version = "0.62.3"
 7522   9750   
 7523   9751   
[dependencies.aws-smithy-json]
 7524   9752   
path = "../aws-smithy-json"
 7525   9753   
version = "0.61.4"
 7526   9754   
 7527   9755   
[dependencies.aws-smithy-runtime]
 7528   9756   
path = "../aws-smithy-runtime"
 7529   9757   
features = ["client"]
 7530   9758   
version = "1.8.5"
 7531   9759   
 7532   9760   
[dependencies.aws-smithy-runtime-api]
 7533   9761   
path = "../aws-smithy-runtime-api"
 7534   9762   
features = ["client", "http-02x"]
 7535   9763   
version = "1.8.5"
 7536   9764   
 7537   9765   
[dependencies.aws-smithy-types]
 7538   9766   
path = "../aws-smithy-types"
 7539   9767   
version = "1.3.2"
 7540   9768   
 7541   9769   
[dependencies.aws-types]
 7542   9770   
path = "../aws-types"
 7543   9771   
version = "1.3.8"
 7544   9772   
 7545   9773   
[dependencies.bytes]
 7546   9774   
version = "1.4.0"
 7547   9775   
 7548   9776   
[dependencies.fastrand]
 7549   9777   
version = "2.0.0"
 7550   9778   
 7551   9779   
[dependencies.http]
 7552   9780   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7553   9781   
index 6518dfc..6b94752 100644
 7554         -
-- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
        9782  +
++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
 7555   9783   
@@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
 7556   9784   
edition = "2021"
 7557   9785   
license = "Apache-2.0"
 7558   9786   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7559   9787   
rust-version = "1.86.0"
 7560   9788   
readme = "README.md"
 7561   9789   
[package.metadata.smithy]
 7562   9790   
codegen-version = "ci"
 7563   9791   
[package.metadata.docs.rs]
 7564   9792   
all-features = true
 7565   9793   
targets = ["x86_64-unknown-linux-gnu"]
 7566   9794   
[dependencies.aws-credential-types]
 7567   9795   
path = "../aws-credential-types"
 7568   9796   
version = "1.2.4"
 7569   9797   
 7570   9798   
[dependencies.aws-runtime]
 7571   9799   
path = "../aws-runtime"
 7572   9800   
features = ["event-stream"]
 7573   9801   
version = "1.5.9"
 7574   9802   
 7575   9803   
[dependencies.aws-smithy-async]
 7576   9804   
path = "../aws-smithy-async"
 7577   9805   
version = "1.2.5"
 7578   9806   
 7579   9807   
[dependencies.aws-smithy-eventstream]
 7580   9808   
path = "../aws-smithy-eventstream"
 7581   9809   
version = "0.60.10"
 7582   9810   
 7583   9811   
[dependencies.aws-smithy-http]
 7584   9812   
path = "../aws-smithy-http"
 7585   9813   
features = ["event-stream"]
 7586         -
version = "0.62.2"
        9814  +
version = "0.62.3"
 7587   9815   
 7588   9816   
[dependencies.aws-smithy-json]
 7589   9817   
path = "../aws-smithy-json"
 7590   9818   
version = "0.61.4"
 7591   9819   
 7592   9820   
[dependencies.aws-smithy-runtime]
 7593   9821   
path = "../aws-smithy-runtime"
 7594   9822   
features = ["client"]
 7595   9823   
version = "1.8.5"
 7596   9824   
 7597   9825   
[dependencies.aws-smithy-runtime-api]
 7598   9826   
path = "../aws-smithy-runtime-api"
 7599   9827   
features = ["client", "http-02x"]
 7600   9828   
version = "1.8.5"
 7601   9829   
 7602   9830   
[dependencies.aws-smithy-types]
 7603   9831   
path = "../aws-smithy-types"
 7604   9832   
version = "1.3.2"
 7605   9833   
 7606   9834   
[dependencies.aws-types]
 7607   9835   
path = "../aws-types"
 7608   9836   
version = "1.3.8"
 7609   9837   
 7610   9838   
[dependencies.bytes]
 7611   9839   
version = "1.4.0"
 7612   9840   
 7613   9841   
[dependencies.fastrand]
 7614   9842   
version = "2.0.0"
 7615   9843   
 7616   9844   
[dependencies.http]
 7617   9845   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7618   9846   
index dabb0e0..34cbc15 100644
 7619         -
-- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
        9847  +
++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
 7620   9848   
@@ -1,65 +1,65 @@
 7621   9849   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7622   9850   
[package]
 7623   9851   
name = "aws-sdk-polly"
 7624   9852   
version = "0.0.0-local"
 7625   9853   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7626   9854   
description = "AWS SDK for Amazon Polly"
 7627   9855   
edition = "2021"
 7628   9856   
license = "Apache-2.0"
 7629   9857   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7630   9858   
rust-version = "1.86.0"
 7631   9859   
readme = "README.md"
 7632   9860   
[package.metadata.smithy]
 7633   9861   
codegen-version = "ci"
 7634   9862   
[package.metadata.docs.rs]
 7635   9863   
all-features = true
 7636   9864   
targets = ["x86_64-unknown-linux-gnu"]
 7637   9865   
[dependencies.aws-credential-types]
 7638   9866   
path = "../aws-credential-types"
 7639   9867   
version = "1.2.4"
 7640   9868   
 7641   9869   
[dependencies.aws-runtime]
 7642   9870   
path = "../aws-runtime"
 7643   9871   
version = "1.5.9"
 7644   9872   
 7645   9873   
[dependencies.aws-sigv4]
 7646   9874   
path = "../aws-sigv4"
 7647         -
version = "1.3.3"
        9875  +
version = "1.3.4"
 7648   9876   
 7649   9877   
[dependencies.aws-smithy-async]
 7650   9878   
path = "../aws-smithy-async"
 7651   9879   
version = "1.2.5"
 7652   9880   
 7653   9881   
[dependencies.aws-smithy-http]
 7654   9882   
path = "../aws-smithy-http"
 7655         -
version = "0.62.2"
        9883  +
version = "0.62.3"
 7656   9884   
 7657   9885   
[dependencies.aws-smithy-json]
 7658   9886   
path = "../aws-smithy-json"
 7659   9887   
version = "0.61.4"
 7660   9888   
 7661   9889   
[dependencies.aws-smithy-runtime]
 7662   9890   
path = "../aws-smithy-runtime"
 7663   9891   
features = ["client"]
 7664   9892   
version = "1.8.5"
 7665   9893   
 7666   9894   
[dependencies.aws-smithy-runtime-api]
 7667   9895   
path = "../aws-smithy-runtime-api"
 7668   9896   
features = ["client", "http-02x"]
 7669   9897   
version = "1.8.5"
 7670   9898   
 7671   9899   
[dependencies.aws-smithy-types]
 7672   9900   
path = "../aws-smithy-types"
 7673   9901   
version = "1.3.2"
 7674   9902   
 7675   9903   
[dependencies.aws-types]
 7676   9904   
path = "../aws-types"
 7677   9905   
version = "1.3.8"
 7678   9906   
 7679   9907   
[dependencies.bytes]
 7680   9908   
version = "1.4.0"
 7681   9909   
 7682   9910   
[dependencies.fastrand]
 7683   9911   
version = "2.0.0"
 7684   9912   
 7685   9913   
[dependencies.http]
 7686   9914   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7687   9915   
index a884716..f3d8713 100644
 7688         -
-- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
        9916  +
++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
 7689   9917   
@@ -1,61 +1,61 @@
 7690   9918   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7691   9919   
[package]
 7692   9920   
name = "aws-sdk-qldbsession"
 7693   9921   
version = "0.0.0-local"
 7694   9922   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7695   9923   
description = "AWS SDK for Amazon QLDB Session"
 7696   9924   
edition = "2021"
 7697   9925   
license = "Apache-2.0"
 7698   9926   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7699   9927   
rust-version = "1.86.0"
 7700   9928   
readme = "README.md"
 7701   9929   
[package.metadata.smithy]
 7702   9930   
codegen-version = "ci"
 7703   9931   
[package.metadata.docs.rs]
 7704   9932   
all-features = true
 7705   9933   
targets = ["x86_64-unknown-linux-gnu"]
 7706   9934   
[dependencies.aws-credential-types]
 7707   9935   
path = "../aws-credential-types"
 7708   9936   
version = "1.2.4"
 7709   9937   
 7710   9938   
[dependencies.aws-runtime]
 7711   9939   
path = "../aws-runtime"
 7712   9940   
version = "1.5.9"
 7713   9941   
 7714   9942   
[dependencies.aws-smithy-async]
 7715   9943   
path = "../aws-smithy-async"
 7716   9944   
version = "1.2.5"
 7717   9945   
 7718   9946   
[dependencies.aws-smithy-http]
 7719   9947   
path = "../aws-smithy-http"
 7720         -
version = "0.62.2"
        9948  +
version = "0.62.3"
 7721   9949   
 7722   9950   
[dependencies.aws-smithy-json]
 7723   9951   
path = "../aws-smithy-json"
 7724   9952   
version = "0.61.4"
 7725   9953   
 7726   9954   
[dependencies.aws-smithy-runtime]
 7727   9955   
path = "../aws-smithy-runtime"
 7728   9956   
features = ["client"]
 7729   9957   
version = "1.8.5"
 7730   9958   
 7731   9959   
[dependencies.aws-smithy-runtime-api]
 7732   9960   
path = "../aws-smithy-runtime-api"
 7733   9961   
features = ["client", "http-02x"]
 7734   9962   
version = "1.8.5"
 7735   9963   
 7736   9964   
[dependencies.aws-smithy-types]
 7737   9965   
path = "../aws-smithy-types"
 7738   9966   
version = "1.3.2"
 7739   9967   
 7740   9968   
[dependencies.aws-types]
 7741   9969   
path = "../aws-types"
 7742   9970   
version = "1.3.8"
 7743   9971   
 7744   9972   
[dependencies.bytes]
 7745   9973   
version = "1.4.0"
 7746   9974   
 7747   9975   
[dependencies.fastrand]
 7748   9976   
version = "2.0.0"
 7749   9977   
 7750   9978   
[dependencies.http]
 7751   9979   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7752   9980   
index 32a7dc9..a2c752d 100644
 7753         -
-- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
        9981  +
++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
 7754   9982   
@@ -1,61 +1,61 @@
 7755   9983   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7756   9984   
[package]
 7757   9985   
name = "aws-sdk-route53"
 7758   9986   
version = "0.0.0-local"
 7759   9987   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7760   9988   
description = "AWS SDK for Amazon Route 53"
 7761   9989   
edition = "2021"
 7762   9990   
license = "Apache-2.0"
 7763   9991   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7764   9992   
rust-version = "1.86.0"
 7765   9993   
readme = "README.md"
 7766   9994   
[package.metadata.smithy]
 7767   9995   
codegen-version = "ci"
 7768   9996   
[package.metadata.docs.rs]
 7769   9997   
all-features = true
 7770   9998   
targets = ["x86_64-unknown-linux-gnu"]
 7771   9999   
[dependencies.aws-credential-types]
 7772  10000   
path = "../aws-credential-types"
 7773  10001   
version = "1.2.4"
 7774  10002   
 7775  10003   
[dependencies.aws-runtime]
 7776  10004   
path = "../aws-runtime"
 7777  10005   
version = "1.5.9"
 7778  10006   
 7779  10007   
[dependencies.aws-smithy-async]
 7780  10008   
path = "../aws-smithy-async"
 7781  10009   
version = "1.2.5"
 7782  10010   
 7783  10011   
[dependencies.aws-smithy-http]
 7784  10012   
path = "../aws-smithy-http"
 7785         -
version = "0.62.2"
       10013  +
version = "0.62.3"
 7786  10014   
 7787  10015   
[dependencies.aws-smithy-json]
 7788  10016   
path = "../aws-smithy-json"
 7789  10017   
version = "0.61.4"
 7790  10018   
 7791  10019   
[dependencies.aws-smithy-runtime]
 7792  10020   
path = "../aws-smithy-runtime"
 7793  10021   
features = ["client"]
 7794  10022   
version = "1.8.5"
 7795  10023   
 7796  10024   
[dependencies.aws-smithy-runtime-api]
 7797  10025   
path = "../aws-smithy-runtime-api"
 7798  10026   
features = ["client", "http-02x"]
 7799  10027   
version = "1.8.5"
 7800  10028   
 7801  10029   
[dependencies.aws-smithy-types]
 7802  10030   
path = "../aws-smithy-types"
 7803  10031   
version = "1.3.2"
 7804  10032   
 7805  10033   
[dependencies.aws-smithy-xml]
 7806  10034   
path = "../aws-smithy-xml"
 7807  10035   
version = "0.60.10"
 7808  10036   
 7809  10037   
[dependencies.aws-types]
 7810  10038   
path = "../aws-types"
 7811  10039   
version = "1.3.8"
 7812  10040   
 7813  10041   
[dependencies.fastrand]
 7814  10042   
version = "2.0.0"
 7815  10043   
 7816  10044   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7817  10045   
index f65e261..2f6bec0 100644
 7818         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
       10046  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
 7819  10047   
@@ -1,75 +1,75 @@
 7820  10048   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7821  10049   
[package]
 7822  10050   
name = "aws-sdk-s3"
 7823  10051   
version = "0.0.0-local"
 7824  10052   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7825  10053   
description = "AWS SDK for Amazon Simple Storage Service"
 7826  10054   
edition = "2021"
 7827  10055   
license = "Apache-2.0"
 7828  10056   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7829  10057   
rust-version = "1.86.0"
 7830  10058   
readme = "README.md"
 7831  10059   
[package.metadata.smithy]
 7832  10060   
codegen-version = "ci"
 7833  10061   
[package.metadata.docs.rs]
 7834  10062   
all-features = true
 7835  10063   
targets = ["x86_64-unknown-linux-gnu"]
 7836  10064   
[dependencies.aws-credential-types]
 7837  10065   
path = "../aws-credential-types"
 7838  10066   
version = "1.2.4"
 7839  10067   
 7840  10068   
[dependencies.aws-runtime]
 7841  10069   
path = "../aws-runtime"
 7842  10070   
features = ["event-stream", "http-02x"]
 7843  10071   
version = "1.5.9"
 7844  10072   
 7845  10073   
[dependencies.aws-sigv4]
 7846  10074   
path = "../aws-sigv4"
 7847         -
version = "1.3.3"
       10075  +
version = "1.3.4"
 7848  10076   
 7849  10077   
[dependencies.aws-smithy-async]
 7850  10078   
path = "../aws-smithy-async"
 7851  10079   
version = "1.2.5"
 7852  10080   
 7853  10081   
[dependencies.aws-smithy-checksums]
 7854  10082   
path = "../aws-smithy-checksums"
 7855  10083   
version = "0.63.5"
 7856  10084   
 7857  10085   
[dependencies.aws-smithy-eventstream]
 7858  10086   
path = "../aws-smithy-eventstream"
 7859  10087   
version = "0.60.10"
 7860  10088   
 7861  10089   
[dependencies.aws-smithy-http]
 7862  10090   
path = "../aws-smithy-http"
 7863  10091   
features = ["event-stream"]
 7864         -
version = "0.62.2"
       10092  +
version = "0.62.3"
 7865  10093   
 7866  10094   
[dependencies.aws-smithy-json]
 7867  10095   
path = "../aws-smithy-json"
 7868  10096   
version = "0.61.4"
 7869  10097   
 7870  10098   
[dependencies.aws-smithy-runtime]
 7871  10099   
path = "../aws-smithy-runtime"
 7872  10100   
features = ["client"]
 7873  10101   
version = "1.8.5"
 7874  10102   
 7875  10103   
[dependencies.aws-smithy-runtime-api]
 7876  10104   
path = "../aws-smithy-runtime-api"
 7877  10105   
features = ["client", "http-02x"]
 7878  10106   
version = "1.8.5"
 7879  10107   
 7880  10108   
[dependencies.aws-smithy-types]
 7881  10109   
path = "../aws-smithy-types"
 7882  10110   
version = "1.3.2"
 7883  10111   
 7884  10112   
[dependencies.aws-smithy-xml]
 7885  10113   
path = "../aws-smithy-xml"
 7886  10114   
version = "0.60.10"
 7887  10115   
 7888  10116   
[dependencies.aws-types]
 7889  10117   
path = "../aws-types"
 7890  10118   
version = "1.3.8"
 7891  10119   
 7892  10120   
[dependencies.bytes]
 7893  10121   
version = "1.4.0"
 7894  10122   
 7895  10123   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7896  10124   
index b4d1cdd..861c0cc 100644
 7897         -
-- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
       10125  +
++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
 7898  10126   
@@ -1,61 +1,61 @@
 7899  10127   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7900  10128   
[package]
 7901  10129   
name = "aws-sdk-s3control"
 7902  10130   
version = "0.0.0-local"
 7903  10131   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7904  10132   
description = "AWS SDK for AWS S3 Control"
 7905  10133   
edition = "2021"
 7906  10134   
license = "Apache-2.0"
 7907  10135   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7908  10136   
rust-version = "1.86.0"
 7909  10137   
readme = "README.md"
 7910  10138   
[package.metadata.smithy]
 7911  10139   
codegen-version = "ci"
 7912  10140   
[package.metadata.docs.rs]
 7913  10141   
all-features = true
 7914  10142   
targets = ["x86_64-unknown-linux-gnu"]
 7915  10143   
[dependencies.aws-credential-types]
 7916  10144   
path = "../aws-credential-types"
 7917  10145   
version = "1.2.4"
 7918  10146   
 7919  10147   
[dependencies.aws-runtime]
 7920  10148   
path = "../aws-runtime"
 7921  10149   
version = "1.5.9"
 7922  10150   
 7923  10151   
[dependencies.aws-smithy-async]
 7924  10152   
path = "../aws-smithy-async"
 7925  10153   
version = "1.2.5"
 7926  10154   
 7927  10155   
[dependencies.aws-smithy-http]
 7928  10156   
path = "../aws-smithy-http"
 7929         -
version = "0.62.2"
       10157  +
version = "0.62.3"
 7930  10158   
 7931  10159   
[dependencies.aws-smithy-json]
 7932  10160   
path = "../aws-smithy-json"
 7933  10161   
version = "0.61.4"
 7934  10162   
 7935  10163   
[dependencies.aws-smithy-runtime]
 7936  10164   
path = "../aws-smithy-runtime"
 7937  10165   
features = ["client"]
 7938  10166   
version = "1.8.5"
 7939  10167   
 7940  10168   
[dependencies.aws-smithy-runtime-api]
 7941  10169   
path = "../aws-smithy-runtime-api"
 7942  10170   
features = ["client", "http-02x"]
 7943  10171   
version = "1.8.5"
 7944  10172   
 7945  10173   
[dependencies.aws-smithy-types]
 7946  10174   
path = "../aws-smithy-types"
 7947  10175   
version = "1.3.2"
 7948  10176   
 7949  10177   
[dependencies.aws-smithy-xml]
 7950  10178   
path = "../aws-smithy-xml"
 7951  10179   
version = "0.60.10"
 7952  10180   
 7953  10181   
[dependencies.aws-types]
 7954  10182   
path = "../aws-types"
 7955  10183   
version = "1.3.8"
 7956  10184   
 7957  10185   
[dependencies.fastrand]
 7958  10186   
version = "2.0.0"
 7959  10187   
 7960  10188   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7961  10189   
index 2cde182..fc367f4 100644
 7962         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
       10190  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
 7963  10191   
@@ -1,61 +1,61 @@
 7964  10192   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 7965  10193   
[package]
 7966  10194   
name = "aws-sdk-sso"
 7967  10195   
version = "0.0.0-local"
 7968  10196   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 7969  10197   
description = "AWS SDK for AWS Single Sign-On"
 7970  10198   
edition = "2021"
 7971  10199   
license = "Apache-2.0"
 7972  10200   
repository = "https://github.com/awslabs/aws-sdk-rust"
 7973  10201   
rust-version = "1.86.0"
 7974  10202   
readme = "README.md"
 7975  10203   
[package.metadata.smithy]
 7976  10204   
codegen-version = "ci"
 7977  10205   
[package.metadata.docs.rs]
 7978  10206   
all-features = true
 7979  10207   
targets = ["x86_64-unknown-linux-gnu"]
 7980  10208   
[dependencies.aws-credential-types]
 7981  10209   
path = "../aws-credential-types"
 7982  10210   
version = "1.2.4"
 7983  10211   
 7984  10212   
[dependencies.aws-runtime]
 7985  10213   
path = "../aws-runtime"
 7986  10214   
version = "1.5.9"
 7987  10215   
 7988  10216   
[dependencies.aws-smithy-async]
 7989  10217   
path = "../aws-smithy-async"
 7990  10218   
version = "1.2.5"
 7991  10219   
 7992  10220   
[dependencies.aws-smithy-http]
 7993  10221   
path = "../aws-smithy-http"
 7994         -
version = "0.62.2"
       10222  +
version = "0.62.3"
 7995  10223   
 7996  10224   
[dependencies.aws-smithy-json]
 7997  10225   
path = "../aws-smithy-json"
 7998  10226   
version = "0.61.4"
 7999  10227   
 8000  10228   
[dependencies.aws-smithy-runtime]
 8001  10229   
path = "../aws-smithy-runtime"
 8002  10230   
features = ["client"]
 8003  10231   
version = "1.8.5"
 8004  10232   
 8005  10233   
[dependencies.aws-smithy-runtime-api]
 8006  10234   
path = "../aws-smithy-runtime-api"
 8007  10235   
features = ["client", "http-02x"]
 8008  10236   
version = "1.8.5"
 8009  10237   
 8010  10238   
[dependencies.aws-smithy-types]
 8011  10239   
path = "../aws-smithy-types"
 8012  10240   
version = "1.3.2"
 8013  10241   
 8014  10242   
[dependencies.aws-types]
 8015  10243   
path = "../aws-types"
 8016  10244   
version = "1.3.8"
 8017  10245   
 8018  10246   
[dependencies.bytes]
 8019  10247   
version = "1.4.0"
 8020  10248   
 8021  10249   
[dependencies.fastrand]
 8022  10250   
version = "2.0.0"
 8023  10251   
 8024  10252   
[dependencies.http]
 8025  10253   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8026  10254   
index 7a34c16..588d0bd 100644
 8027         -
-- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
       10255  +
++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
 8028  10256   
@@ -1,61 +1,61 @@
 8029  10257   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8030  10258   
[package]
 8031  10259   
name = "aws-sdk-ssooidc"
 8032  10260   
version = "0.0.0-local"
 8033  10261   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8034  10262   
description = "AWS SDK for AWS SSO OIDC"
 8035  10263   
edition = "2021"
 8036  10264   
license = "Apache-2.0"
 8037  10265   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8038  10266   
rust-version = "1.86.0"
 8039  10267   
readme = "README.md"
 8040  10268   
[package.metadata.smithy]
 8041  10269   
codegen-version = "ci"
 8042  10270   
[package.metadata.docs.rs]
 8043  10271   
all-features = true
 8044  10272   
targets = ["x86_64-unknown-linux-gnu"]
 8045  10273   
[dependencies.aws-credential-types]
 8046  10274   
path = "../aws-credential-types"
 8047  10275   
version = "1.2.4"
 8048  10276   
 8049  10277   
[dependencies.aws-runtime]
 8050  10278   
path = "../aws-runtime"
 8051  10279   
version = "1.5.9"
 8052  10280   
 8053  10281   
[dependencies.aws-smithy-async]
 8054  10282   
path = "../aws-smithy-async"
 8055  10283   
version = "1.2.5"
 8056  10284   
 8057  10285   
[dependencies.aws-smithy-http]
 8058  10286   
path = "../aws-smithy-http"
 8059         -
version = "0.62.2"
       10287  +
version = "0.62.3"
 8060  10288   
 8061  10289   
[dependencies.aws-smithy-json]
 8062  10290   
path = "../aws-smithy-json"
 8063  10291   
version = "0.61.4"
 8064  10292   
 8065  10293   
[dependencies.aws-smithy-runtime]
 8066  10294   
path = "../aws-smithy-runtime"
 8067  10295   
features = ["client"]
 8068  10296   
version = "1.8.5"
 8069  10297   
 8070  10298   
[dependencies.aws-smithy-runtime-api]
 8071  10299   
path = "../aws-smithy-runtime-api"
 8072  10300   
features = ["client", "http-02x"]
 8073  10301   
version = "1.8.5"
 8074  10302   
 8075  10303   
[dependencies.aws-smithy-types]
 8076  10304   
path = "../aws-smithy-types"
 8077  10305   
version = "1.3.2"
 8078  10306   
 8079  10307   
[dependencies.aws-types]
 8080  10308   
path = "../aws-types"
 8081  10309   
version = "1.3.8"
 8082  10310   
 8083  10311   
[dependencies.bytes]
 8084  10312   
version = "1.4.0"
 8085  10313   
 8086  10314   
[dependencies.fastrand]
 8087  10315   
version = "2.0.0"
 8088  10316   
 8089  10317   
[dependencies.http]
 8090  10318   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8091  10319   
index 895dfb3..f2ce34e 100644
 8092         -
-- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
       10320  +
++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
 8093  10321   
@@ -1,61 +1,61 @@
 8094  10322   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8095  10323   
[package]
 8096  10324   
name = "aws-sdk-sts"
 8097  10325   
version = "0.0.0-local"
 8098  10326   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8099  10327   
description = "AWS SDK for AWS Security Token Service"
 8100  10328   
edition = "2021"
 8101  10329   
license = "Apache-2.0"
 8102  10330   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8103  10331   
rust-version = "1.86.0"
 8104  10332   
readme = "README.md"
 8105  10333   
[package.metadata.smithy]
 8106  10334   
codegen-version = "ci"
 8107  10335   
[package.metadata.docs.rs]
 8108  10336   
all-features = true
 8109  10337   
targets = ["x86_64-unknown-linux-gnu"]
 8110  10338   
[dependencies.aws-credential-types]
 8111  10339   
path = "../aws-credential-types"
 8112  10340   
version = "1.2.4"
 8113  10341   
 8114  10342   
[dependencies.aws-runtime]
 8115  10343   
path = "../aws-runtime"
 8116  10344   
version = "1.5.9"
 8117  10345   
 8118  10346   
[dependencies.aws-smithy-async]
 8119  10347   
path = "../aws-smithy-async"
 8120  10348   
version = "1.2.5"
 8121  10349   
 8122  10350   
[dependencies.aws-smithy-http]
 8123  10351   
path = "../aws-smithy-http"
 8124         -
version = "0.62.2"
       10352  +
version = "0.62.3"
 8125  10353   
 8126  10354   
[dependencies.aws-smithy-json]
 8127  10355   
path = "../aws-smithy-json"
 8128  10356   
version = "0.61.4"
 8129  10357   
 8130  10358   
[dependencies.aws-smithy-query]
 8131  10359   
path = "../aws-smithy-query"
 8132  10360   
version = "0.60.7"
 8133  10361   
 8134  10362   
[dependencies.aws-smithy-runtime]
 8135  10363   
path = "../aws-smithy-runtime"
 8136  10364   
features = ["client"]
 8137  10365   
version = "1.8.5"
 8138  10366   
 8139  10367   
[dependencies.aws-smithy-runtime-api]
 8140  10368   
path = "../aws-smithy-runtime-api"
 8141  10369   
features = ["client", "http-02x"]
 8142  10370   
version = "1.8.5"
 8143  10371   
 8144  10372   
[dependencies.aws-smithy-types]
 8145  10373   
path = "../aws-smithy-types"
 8146  10374   
version = "1.3.2"
 8147  10375   
 8148  10376   
[dependencies.aws-smithy-xml]
 8149  10377   
path = "../aws-smithy-xml"
 8150  10378   
version = "0.60.10"
 8151  10379   
 8152  10380   
[dependencies.aws-types]
 8153  10381   
path = "../aws-types"
 8154  10382   
version = "1.3.8"
 8155  10383   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8156  10384   
index d556561..91178b6 100644
 8157         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
       10385  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
 8158  10386   
@@ -1,61 +1,61 @@
 8159  10387   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8160  10388   
[package]
 8161  10389   
name = "aws-sdk-timestreamquery"
 8162  10390   
version = "0.0.0-local"
 8163  10391   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8164  10392   
description = "AWS SDK for Amazon Timestream Query"
 8165  10393   
edition = "2021"
 8166  10394   
license = "Apache-2.0"
 8167  10395   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8168  10396   
rust-version = "1.86.0"
 8169  10397   
readme = "README.md"
 8170  10398   
[package.metadata.smithy]
 8171  10399   
codegen-version = "ci"
 8172  10400   
[package.metadata.docs.rs]
 8173  10401   
all-features = true
 8174  10402   
targets = ["x86_64-unknown-linux-gnu"]
 8175  10403   
[dependencies.aws-credential-types]
 8176  10404   
path = "../aws-credential-types"
 8177  10405   
version = "1.2.4"
 8178  10406   
 8179  10407   
[dependencies.aws-runtime]
 8180  10408   
path = "../aws-runtime"
 8181  10409   
version = "1.5.9"
 8182  10410   
 8183  10411   
[dependencies.aws-smithy-async]
 8184  10412   
path = "../aws-smithy-async"
 8185  10413   
version = "1.2.5"
 8186  10414   
 8187  10415   
[dependencies.aws-smithy-http]
 8188  10416   
path = "../aws-smithy-http"
 8189         -
version = "0.62.2"
       10417  +
version = "0.62.3"
 8190  10418   
 8191  10419   
[dependencies.aws-smithy-json]
 8192  10420   
path = "../aws-smithy-json"
 8193  10421   
version = "0.61.4"
 8194  10422   
 8195  10423   
[dependencies.aws-smithy-runtime]
 8196  10424   
path = "../aws-smithy-runtime"
 8197  10425   
features = ["client"]
 8198  10426   
version = "1.8.5"
 8199  10427   
 8200  10428   
[dependencies.aws-smithy-runtime-api]
 8201  10429   
path = "../aws-smithy-runtime-api"
 8202  10430   
features = ["client", "http-02x"]
 8203  10431   
version = "1.8.5"
 8204  10432   
 8205  10433   
[dependencies.aws-smithy-types]
 8206  10434   
path = "../aws-smithy-types"
 8207  10435   
version = "1.3.2"
 8208  10436   
 8209  10437   
[dependencies.aws-types]
 8210  10438   
path = "../aws-types"
 8211  10439   
version = "1.3.8"
 8212  10440   
 8213  10441   
[dependencies.bytes]
 8214  10442   
version = "1.4.0"
 8215  10443   
 8216  10444   
[dependencies.fastrand]
 8217  10445   
version = "2.0.0"
 8218  10446   
 8219  10447   
[dependencies.http]
 8220  10448   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8221  10449   
index 0c56e4c..95731e3 100644
 8222         -
-- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
       10450  +
++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
 8223  10451   
@@ -1,61 +1,61 @@
 8224  10452   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8225  10453   
[package]
 8226  10454   
name = "aws-sdk-timestreamwrite"
 8227  10455   
version = "0.0.0-local"
 8228  10456   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8229  10457   
description = "AWS SDK for Amazon Timestream Write"
 8230  10458   
edition = "2021"
 8231  10459   
license = "Apache-2.0"
 8232  10460   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8233  10461   
rust-version = "1.86.0"
 8234  10462   
readme = "README.md"
 8235  10463   
[package.metadata.smithy]
 8236  10464   
codegen-version = "ci"
 8237  10465   
[package.metadata.docs.rs]
 8238  10466   
all-features = true
 8239  10467   
targets = ["x86_64-unknown-linux-gnu"]
 8240  10468   
[dependencies.aws-credential-types]
 8241  10469   
path = "../aws-credential-types"
 8242  10470   
version = "1.2.4"
 8243  10471   
 8244  10472   
[dependencies.aws-runtime]
 8245  10473   
path = "../aws-runtime"
 8246  10474   
version = "1.5.9"
 8247  10475   
 8248  10476   
[dependencies.aws-smithy-async]
 8249  10477   
path = "../aws-smithy-async"
 8250  10478   
version = "1.2.5"
 8251  10479   
 8252  10480   
[dependencies.aws-smithy-http]
 8253  10481   
path = "../aws-smithy-http"
 8254         -
version = "0.62.2"
       10482  +
version = "0.62.3"
 8255  10483   
 8256  10484   
[dependencies.aws-smithy-json]
 8257  10485   
path = "../aws-smithy-json"
 8258  10486   
version = "0.61.4"
 8259  10487   
 8260  10488   
[dependencies.aws-smithy-runtime]
 8261  10489   
path = "../aws-smithy-runtime"
 8262  10490   
features = ["client"]
 8263  10491   
version = "1.8.5"
 8264  10492   
 8265  10493   
[dependencies.aws-smithy-runtime-api]
 8266  10494   
path = "../aws-smithy-runtime-api"
 8267  10495   
features = ["client", "http-02x"]
 8268  10496   
version = "1.8.5"
 8269  10497   
 8270  10498   
[dependencies.aws-smithy-types]
 8271  10499   
path = "../aws-smithy-types"
 8272  10500   
version = "1.3.2"
 8273  10501   
 8274  10502   
[dependencies.aws-types]
 8275  10503   
path = "../aws-types"
 8276  10504   
version = "1.3.8"
 8277  10505   
 8278  10506   
[dependencies.bytes]
 8279  10507   
version = "1.4.0"
 8280  10508   
 8281  10509   
[dependencies.fastrand]
 8282  10510   
version = "2.0.0"
 8283  10511   
 8284  10512   
[dependencies.http]
 8285  10513   
diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8286  10514   
index 5b35037..9fb220a 100644
 8287         -
-- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
       10515  +
++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
 8288  10516   
@@ -1,71 +1,71 @@
 8289  10517   
# Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
 8290  10518   
[package]
 8291  10519   
name = "aws-sdk-transcribestreaming"
 8292  10520   
version = "0.0.0-local"
 8293  10521   
authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
 8294  10522   
description = "AWS SDK for Amazon Transcribe Streaming Service"
 8295  10523   
edition = "2021"
 8296  10524   
license = "Apache-2.0"
 8297  10525   
repository = "https://github.com/awslabs/aws-sdk-rust"
 8298  10526   
rust-version = "1.86.0"
 8299  10527   
readme = "README.md"
 8300  10528   
[package.metadata.smithy]
 8301  10529   
codegen-version = "ci"
 8302  10530   
[package.metadata.docs.rs]
 8303  10531   
all-features = true
 8304  10532   
targets = ["x86_64-unknown-linux-gnu"]
 8305  10533   
[dependencies.aws-credential-types]
 8306  10534   
path = "../aws-credential-types"
 8307  10535   
version = "1.2.4"
 8308  10536   
 8309  10537   
[dependencies.aws-runtime]
 8310  10538   
path = "../aws-runtime"
 8311  10539   
features = ["event-stream"]
 8312  10540   
version = "1.5.9"
 8313  10541   
 8314  10542   
[dependencies.aws-sigv4]
 8315  10543   
path = "../aws-sigv4"
 8316         -
version = "1.3.3"
       10544  +
version = "1.3.4"
 8317  10545   
 8318  10546   
[dependencies.aws-smithy-async]
 8319  10547   
path = "../aws-smithy-async"
 8320  10548   
version = "1.2.5"
 8321  10549   
 8322  10550   
[dependencies.aws-smithy-eventstream]
 8323  10551   
path = "../aws-smithy-eventstream"
 8324  10552   
version = "0.60.10"
 8325  10553   
 8326  10554   
[dependencies.aws-smithy-http]
 8327  10555   
path = "../aws-smithy-http"
 8328  10556   
features = ["event-stream"]
 8329         -
version = "0.62.2"
       10557  +
version = "0.62.3"
 8330  10558   
 8331  10559   
[dependencies.aws-smithy-json]
 8332  10560   
path = "../aws-smithy-json"
 8333  10561   
version = "0.61.4"
 8334  10562   
 8335  10563   
[dependencies.aws-smithy-runtime]
 8336  10564   
path = "../aws-smithy-runtime"
 8337  10565   
features = ["client"]
 8338  10566   
version = "1.8.5"
 8339  10567